| |
| KISTERS 3DViewStation WebViewer: Sichere 3D-Visualisierung - jederzeit und überall, eine Pressemitteilung
|
Autor
|
Thema: Erzeugung eines positionierten Sketch (4388 mal gelesen)
|
roccat Mitglied Konstrukteur
Beiträge: 172 Registriert: 19.02.2010 WinXP/Win7 Office XP/2007 Catia V5 R16-R19, VB6.0, VBA, BASCOM-AVR VB .Net 2010
|
erstellt am: 11. Jun. 2010 14:58 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich möchte nochmal das Thema "Erzeugung eines positionierten Sketch anschneiden", da ich noch nichts darüber gefunden habe. Hat dass schonmal jemand programmiert und wie werden die Referencen vergeben? Der Recorder zeichnet dazu auch nichts auf. Der "Sliding Sketch" funktioniert ja ohne Probleme. Wird das überhaupt von VBA/VB unterstützt? Danke für Eure Antworten mfG Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tberger Mitglied Application Manager CATIA V5 / V6
Beiträge: 1385 Registriert: 13.01.2007 WIN 7 64bit V5R21SP3HF49 3DX/V6 R2016x
|
erstellt am: 12. Jun. 2010 11:10 <-- editieren / zitieren --> Unities abgeben: Nur für roccat
|
roccat Mitglied Konstrukteur
Beiträge: 172 Registriert: 19.02.2010 WinXP/Win7 Office XP/2007 Catia V5 R16-R19, VB6.0, VBA, BASCOM-AVR VB .Net 2010
|
erstellt am: 13. Jun. 2010 15:37 <-- editieren / zitieren --> Unities abgeben:
Hallo Thomas, danke für den Link, ich werde das kommende Woche mal Testen. Wobei ich glaube das man wie im o.g. Beitrag beschrieben den "sliding Sketch" lediglich im Raum verschiebt und kein richtigen "Positioned Sketch" mit zugewiesenen Referencen erzeugt. (Was mir eigendlich lieber wäre). Aber evtl. liege ich ja auch falsch. Mal sehen... mfg Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 14. Jun. 2010 11:08 <-- editieren / zitieren --> Unities abgeben: Nur für roccat
Hallo Mario, den Positioned Sketch gibt's an der API-Schnittstelle nicht, der geht nur im CAA. Habe ich glaube ich auch schon gepostet. Wenn Du einen unbestimmten Sketch im VBA erzeugst, dann wird dafür allerdings das Feature des Positioned Sketch angelegt, dieses lässt sich jedoch nicht verändern, da das passende Objekte dazu fehlt. Das kann man höchstens über Latebinding und dann lustiges Attribute-Raten versuchen. Hier mal ein Code-Schnippsel aus meinem CAA, vielleicht hilft's weiter:
Code:
CATListValCATBaseUnknown_var lstOfUk; lstOfUk.Append(i_spiSpecOnOrign); piSketchPos->SetOriginMode(CATSktOriProjectionOfAPoint); piSketchPos->SetOriginReferences(lstOfUk);
zu sehen ist, dass der Sketch Normalerweise eine Methode für Mode hat, indem der Modus umgeschaltet werden kann um dann im Anschluss auf die Referenzen verweisen zu können. Edit: Mir fällt zusätzlich gerade ein, dass ich bei R16 (oder früher) im Kontakt mit DS zu dem Thema stand und mir das gleiche geantwortet wurde. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing [Diese Nachricht wurde von HoBLila am 14. Jun. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
roccat Mitglied Konstrukteur
Beiträge: 172 Registriert: 19.02.2010 WinXP/Win7 Office XP/2007 Catia V5 R16-R19, VB6.0, VBA, BASCOM-AVR VB .Net 2010
|
erstellt am: 14. Jun. 2010 11:11 <-- editieren / zitieren --> Unities abgeben:
Also ich habe das mal geteste, ist wirklich so wie vermutet. Der Sketchtyp ist und bleibt auch mit dem Code aus dem o.g. Link ein "Sliding Sketch" welchen wir bei uns aber nicht verwenden dürfen. CATIA.StartCommand "Positioned Sketch" - ruft mir zwar das Fenster auf bringt mich aber auch nicht wirklich weiter. Evtl. hat noch jemand eine noch Idee zu diesen Thema. THX Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
roccat Mitglied Konstrukteur
Beiträge: 172 Registriert: 19.02.2010 WinXP/Win7 Office XP/2007 Catia V5 R16-R19, VB6.0, VBA, BASCOM-AVR VB .Net 2010
|
erstellt am: 14. Jun. 2010 11:19 <-- editieren / zitieren --> Unities abgeben:
Hallo Henry, danke für deine Antwort. Jetzt habe ich wenigstens Klarheit. In CAA habe ich leider keine Ahnung. Ich habe unter dem Object Sketch auch schon verzweifelt die Eigenschaft "Type" gesucht. Naja wiedermal was, was hätte so einfach sein können aber wohl (absichtlich) in vb(a) vergessen wurde. tausend Dank für die Antwort. mfG Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 14. Jun. 2010 11:38 <-- editieren / zitieren --> Unities abgeben: Nur für roccat
Es gäbe noch einen Trick: Den Sketch mit Hilfselementen, wie Constraints, im Raum positionieren, so bleibt er auch assotiativ. Also Ebene benutzen, die ja Referenziert werden kann, Linien in die Ebene legen... Edit: Sketch in ein neues Achsenkreuz legen, das lässt sich auch ausrichten. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing [Diese Nachricht wurde von HoBLila am 14. Jun. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
roccat Mitglied Konstrukteur
Beiträge: 172 Registriert: 19.02.2010 WinXP/Win7 Office XP/2007 Catia V5 R16-R19, VB6.0, VBA, BASCOM-AVR VB .Net 2010
|
erstellt am: 14. Jun. 2010 12:16 <-- editieren / zitieren --> Unities abgeben:
Das ist schonmal nicht schlecht, wir dürfen aber seitens unserer Kunden nur "Positioned Sketch" verwenden. Das bringt mich aber auf die Idee ein Dummy-Part beim Makro abzulegen welches einen "Positioned Sketch" enthält. Diesen könnte man dann samt Parents zur Laufzeit ins aktive Part kopieren und die Parents der Parents austauschen. Ist zwar unschön wider unnötige Elemente zuhaben aber das könnte evtl. klappen. THX Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 14. Jun. 2010 12:28 <-- editieren / zitieren --> Unities abgeben: Nur für roccat
Hallo Mario, noch eine Idee: Erzeuge einen Sketch mit der Referenz auf Nothing, eventuell bekommt dieser irgendwo die entscheidente Eigenschaft. Vorraussichtlich muss diese dann aber eine Art GetAttribute-Methode aufgerufen werden, bei der man den Namen des Attributes kennen muss. Das kann ich hier im CAA nicht einmal einsehen, die sind ja manchmal auch französisch. Bei manchen Dingen im VBA muss man dem Kunden aber leider sagen, dass man das einfach nicht kann und einen Umweg gehen muss. 3DS ist ja schließlich nicht daran interessiert, dass man etwas automatisiert, bei CAA legen sie einem auch genug Steine in den Weg... ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
martin2 Mitglied Konstrukteur
Beiträge: 1010 Registriert: 05.2002.27
|
erstellt am: 06. Jul. 2022 15:38 <-- editieren / zitieren --> Unities abgeben: Nur für roccat
Hallo, ich möchte das Thema mal wieder zum Vorschein holen. Ich möchte: a) Eine Skizze erzeugen (kein Problem) b) Bei der erzeugten Skizze unter "Stützelement der Skizze ändern" den "Typ" auf "Positioniert" umstellen. c) Und dann als "Ursprung" einen (bereits vorhandenen) "Projektionspunkt" angeben. Weis jemand wie ich das im Makro umsetzen kann? Danke und Gruß Martin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 12005 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 07. Jul. 2022 12:25 <-- editieren / zitieren --> Unities abgeben: Nur für roccat
|
martin2 Mitglied Konstrukteur
Beiträge: 1010 Registriert: 05.2002.27
|
erstellt am: 07. Jul. 2022 14:46 <-- editieren / zitieren --> Unities abgeben: Nur für roccat
|