| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co. |
| |
 | Erfolgreich unterwegs mit der KISTERS 3DViewStation , ein Whitepaper
|
Autor
|
Thema: Rechteck in einer Ansicht erzeugen im Makro (1241 mal gelesen)
|
torspezialist Mitglied

 Beiträge: 44 Registriert: 29.06.2003
|
erstellt am: 27. Dez. 2004 08:22 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen, hat jemand von Euch eine Idee, wie ich im Verlauf eines Makros in einer Ansicht einer Zeichnung ein Rechteck erzeugen kann? CATIA soll dann die Abmessungen dieses Rechtecks ausgeben. Bin für alle Anregungen und Beispielmakros dankbar!!! Gruß Torspezi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
torspezialist Mitglied

 Beiträge: 44 Registriert: 29.06.2003
|
erstellt am: 27. Dez. 2004 08:29 <-- editieren / zitieren --> Unities abgeben:         
ACHTUNG! Als ich mir den Beitrag noch einmal durchgelesen habe, habe ich festgestellt, daß er falsch verstanden werden könnte. Hier noch eine wichtige Erläuterung: Das Rechteck soll nicht durch das Makro erzeugt werden, sondern der User soll das Rechteck selbst während der Laufzeit erzeugen, also z.B. die beiden diagonal gegenüberliegenden Punkte klicken!!! Danke! Spezi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
u01dz Mitglied

 Beiträge: 76 Registriert: 12.07.2003 V5R15GA
|
erstellt am: 04. Jan. 2005 14:48 <-- editieren / zitieren --> Unities abgeben:          Nur für torspezialist
Hi, die Selektion der Punkte während der Laufzeit kannst Du gemäß des Beispiels 2.12 (Makrobuch von Ziethen, S. 50) programmieren. Die Linien im Drawing erzeugst Du dann über folgende Befehle: Set Factory2D = CATIA.ActiveDocument.Sheets.ActiveSheet.Views.ActiveView.Factory2D Set Line1 = Factory2D.CreateLine(0,0,100,100) ------------------ Tschüß, Dieter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
torspezialist Mitglied

 Beiträge: 44 Registriert: 29.06.2003
|
erstellt am: 04. Jan. 2005 23:11 <-- editieren / zitieren --> Unities abgeben:         
Hallo Dieter, danke für die Antwort...aber das Rechteck soll ganz frei aufgezogen werden können. Es sind also noch keine Punkte zum Selektieren da. Hast Du auch dafür eine Lösung parat!?!? Vielen Dank im Voraus!!! Spezi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Steffen Hohmann Mitglied
 
 Beiträge: 446 Registriert: 06.03.2002
|
erstellt am: 05. Jan. 2005 10:46 <-- editieren / zitieren --> Unities abgeben:          Nur für torspezialist
Hallo Torspezi, es gibt die Methode 'Indicate2D' der Klasse 'Document', welche den Anwender auffordert, einen nicht vorhandenen Punkt anzuwählen. Zurückgegeben werden die Klick-Koordinaten x und y. Diese Methode kann in einer Drawing oder im Part verwendet werden, wobei sich im Part eine Skizze im Editiermodus befindet muss (Sketch.OpenEdition). Bsp: Dim oDoc 'As DrawingDocument Set oDoc = CATIA.ActiveDocument Dim aSelWindowPos(1) oDoc.indicate2D "Bitte einen Punkt indizieren", aSelWindowPos Dim x,y As Double x = aSelWindowPos(0) y = aSelWindowPos(1) Das ganze muß man für die beiden Eckpunkte machen und kann dann über Factory2D.CreateLine das Rechteck erzeugen. Ab R14 gibt es auch für die Selection-Klasse eine Methode namens 'IndicateOrSelectElement2D', mit der man die Koordinaten von physikalischen oder indizierten Punkten ermittelt. Gruss Steffen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |