| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: Block über vba auswählen und zoomen (399 mal gelesen)
|
hugo72 Mitglied
 Beiträge: 7 Registriert: 29.09.2008
|
erstellt am: 17. Okt. 2008 18:21 <-- editieren / zitieren --> Unities abgeben:         
|
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13530 Registriert: 30.11.2003 ACAD 2008 Mechanical
|
erstellt am: 17. Okt. 2008 18:28 <-- editieren / zitieren --> Unities abgeben:          Nur für hugo72
Ein Block ist ein Containerobjekt und kein Geometriebjekt, du meinst sicher eine Blockreferenz. Davon kann es je Block aber mehrere geben.. eine Lisplösung wäre z.B: (command "_zoom" "_o"(ssget "_x" (list '(0 . "INSERT")'(2 . "qq")(cons 410 (getvar "CTAB"))))"") ------------------ - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hugo72 Mitglied
 Beiträge: 7 Registriert: 29.09.2008
|
erstellt am: 17. Okt. 2008 19:03 <-- editieren / zitieren --> Unities abgeben:         
|
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13530 Registriert: 30.11.2003 ACAD 2008 Mechanical
|
erstellt am: 17. Okt. 2008 19:24 <-- editieren / zitieren --> Unities abgeben:          Nur für hugo72
|
hugo72 Mitglied
 Beiträge: 7 Registriert: 29.09.2008
|
erstellt am: 17. Okt. 2008 19:30 <-- editieren / zitieren --> Unities abgeben:         
|
Stelli1 Moderator Verm.-Ing.
    
 Beiträge: 1526 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 17. Okt. 2008 19:36 <-- editieren / zitieren --> Unities abgeben:          Nur für hugo72
Hallo Hugo, du kannst zunächst ein Selectionset bilden. Dabei kannst du einen Filter auf Blockreferenz (INSERT) und den Blocknamen mitgeben.
Code: FCode(0) = 0 'DXF-Gruppencode FData(0) = "Insert" 'Blöcke FCode(1) = 2 'DXF-Gruppencode FData(1) = BLKName 'Name
Wenn es eine Eifügung gibt, kannst du mit GetBoundingbox die Ausmasse deiner Blockeinfügung ermitteln.
Code: Dim obj As AcadEntity Dim MinPkt As Variant Dim MaxPkt As Variant '... obj.GetBoundingBox MinPkt, MaxPkt
Und dann mit Zoom an die Stelle springen.
Code: ZoomWindow MinPkt, MaxPkt
Wilfried Stelberg------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |