| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Auswahl umkehren (4679 mal gelesen)
|
Barnygumble Mitglied Programmierer
Beiträge: 4 Registriert: 27.09.2004
|
erstellt am: 27. Sep. 2004 07:43 <-- editieren / zitieren --> Unities abgeben:
|
BloodyMess Mitglied Applicationingenieur
Beiträge: 604 Registriert: 06.06.2002 AutoCAD Map 3D 2005 Win XP pro
|
erstellt am: 27. Sep. 2004 07:53 <-- editieren / zitieren --> Unities abgeben: Nur für Barnygumble
|
Barnygumble Mitglied Programmierer
Beiträge: 4 Registriert: 27.09.2004
|
erstellt am: 27. Sep. 2004 08:04 <-- editieren / zitieren --> Unities abgeben:
|
BloodyMess Mitglied Applicationingenieur
Beiträge: 604 Registriert: 06.06.2002 AutoCAD Map 3D 2005 Win XP pro
|
erstellt am: 27. Sep. 2004 08:38 <-- editieren / zitieren --> Unities abgeben: Nur für Barnygumble
Hallo Barny, ja das ist wohl richtig, da kannst Du kein 'NOT' einbauen. Was mir so auf die schnelle einfällt, dass Du das mit zwei SelectionSets baust und Du den Inhalt des Polygons von dem größeren ausnimmst. Du also die Objekte, welche sich in deinem jetzigen SelectionSet befinden aus dem SelectionSet über deine gesamte Zeichnung einfach ausnimmst. Somit bleiben nur noch die übrig, welche ausserhalb deines jetzigen Polygons liegen. Ein SelectionSet über die gesamte Zeichnung kann automatisch gebaut werden, so dass der User nur das kleinere auswählen muss. Sorry, mehr kann ich Dir dazu auch net sagen, aber hier weiß bestimmt jemand anderes noch eine bessere Lösung. Gruß TP ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Barnygumble Mitglied Programmierer
Beiträge: 4 Registriert: 27.09.2004
|
erstellt am: 27. Sep. 2004 10:39 <-- editieren / zitieren --> Unities abgeben:
|
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 27. Sep. 2004 11:12 <-- editieren / zitieren --> Unities abgeben: Nur für Barnygumble
also selectionssets kann man nicht einfach subtrahieren. aus der acad hilfe: Signature object.RemoveItems Objects Object Group, SelectionSet The object or objects this method applies to. Objects Variant (array of objects); input-only An array of objects to be removed. z.B.: 2 selectionssets benannt SSall und SSPoly SSPoly soll von SSAll abgezogen werden
Dim removeObjects() As AcadEntity i1 = 0 For Each n1 In sspoly ReDim Preserve removeObjects(i1) Set removeObjects(i1) = n1 Next ssall.RemoveItems (removeObjects)
------------------ WWW.FFZELL.AT.TC Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BloodyMess Mitglied Applicationingenieur
Beiträge: 604 Registriert: 06.06.2002 AutoCAD Map 3D 2005 Win XP pro
|
erstellt am: 27. Sep. 2004 11:21 <-- editieren / zitieren --> Unities abgeben: Nur für Barnygumble
Hallo Barny, wenn SS1 dein jetziges SelectionSet ist und SS2 das über SelectionSet über deine gesamte Zeichnung ist, dann funktionieren das ...
Code: For Each Block_SS2 in SS2 For Each Block_SS1 in SS1 If Block_SS2.ObjectID = Block_SS1.ObjectID then ... end if Next Block_SS1 Next Block_SS2
In der IF Anweisung läuft er nun rein, wenn er Objecte findet, die in beiden SelectionSets sind. Hier könntest also die gleichen Objecte löschen und übrig bleiben würden nur die, welche sich ausserhalb deines gezogenes Polygones befinden. Wenn Du die Objecte allerdings löscht, dann löscht er die nicht temporär, sondern in der Zeichnung. Deshlab musst Dir irgendwie eine Kopie deines SelectionSets anlegen. Zumindest funktioniert es, hab´s gerade ausprobiert hier. Nochmal wie schon vorhin gesagt, ich glaube, dass dieser Weg eher ein Umweg ist .. weiß es aber gerade auch nicht besser. Gruß TP ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Barnygumble Mitglied Programmierer
Beiträge: 4 Registriert: 27.09.2004
|
erstellt am: 27. Sep. 2004 16:35 <-- editieren / zitieren --> Unities abgeben:
|