| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | NVIDIA GTC Paris und ISC High Performance-Konferenz 2025, eine Pressemitteilung
|
Autor
|
Thema: DrawingUserDefinedSymbolsQuickCtxCmd mit Drehung (508 / mal gelesen)
|
DerBrain87 Mitglied Mathematiker

 Beiträge: 89 Registriert: 29.04.2015 Inventor 2021
|
erstellt am: 19. Mai. 2025 09:31 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen, ich habe eine kleine GUI programmiert, in welcher der Benutzer verschiedene Skizzensymbole (aus einer anderen Zeichnung) auswählen kann, diese dann in die aktive Zeichnung kopiert werden und mittels dem Befehl DrawingUserDefinedSymbolsQuickCtxCmd an den Mauszeiger geklebt wird. Das funktioniert soweit auch gut. Jetzt habe ich nur den Fall, dass eins der Skizzensymbole 'normal' platziert werden kann oder um 90° gedreht. Über die Inventor-Funktion 'Skizzensymbol einfügen' kann ich vor dem ans Mauszeiger kleben die Drehnung einstellen. Wie mache ich das in VBA? Hier den Code den ich bisher habe:
Code:
Dim symbolDef As SketchedSymbolDefinition: symbolDef = GetDefinition(name) Dim commandManager As Inventor.CommandManager: set commandManager = app.CommandManager mDrawing.SelectSet.Clear() mDrawing.SelectSet.Select(symbolDef) Dim controlDef As ControlDefinition: set controlDef = commandManager.ControlDefinitions.Item("DrawingUserDefinedSymbolsQuickCtxCmd") controlDef.Execute2(False)
Die Funktion GetDefinition öffnet die Zeichnung, in welcher die Skizzensymbol-Definition enthalten ist, kopiert sie in die aktive Zeichnung und gibt dessen Definition zurück. Mir fehlt eben nur, dass Inventor weiß, dass das Skizzensymbol um 90° gedreht an den Mauszeiger soll... Gruß DerBrain87 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BernoAn Mitglied
 
 Beiträge: 173 Registriert: 16.01.2014
|
erstellt am: 27. Mai. 2025 15:01 <-- editieren / zitieren --> Unities abgeben:          Nur für DerBrain87
|
DerBrain87 Mitglied Mathematiker

 Beiträge: 89 Registriert: 29.04.2015 Inventor 2021
|
erstellt am: 17. Jun. 2025 15:20 <-- editieren / zitieren --> Unities abgeben:         
Hallo. Für die Drehung habe ich mich jetzt entschieden, dass meine Konstrukteure vorerst das Skizzensymbol, wenn sie es gedreht haben möchten, nach dem Platzieren manuell drehen müssen. ABER: Für einen ähnlichen Fall würde ich gerne Skizzensymbole mit Führungslinie 'an den Mauszeiger kleben'. In dem Inventor-Tool "Skizzensymbol einfügen" ist das ebenfalls kein Problem. Hierfür gibt es die Checkboxen "Führungsline" sowie "Sichtbar". Mit meinem Inventor 2021 habe ich allerdings wie für die Drehnung keine Option gefunden, dies automatisiert zu aktivieren. Bei meiner Recherche bin ich aber auf folgenden Link gestoßen: https://help.autodesk.com/view/INVNTOR/2024/ENU/?guid=PostPrivateEventSample_Sample Heißt das, dass ich, sobald wir in den Sommerferien endlich auf 2024 updaten, das mittels dem kBooleanEvent aktivieren kann? Wenn ja: Wie heißt diese Eigenschaft, dass ich sie in die NameValueMap packen kann? Evtl. geht mit der Überarbeitung des PostPrivateEvents von Autodesk dann auch die Übergabe von Drehnung und Skalierung? Wenn schon jemand hiermit Erfahrung hiermit gesammelt hat, wäre ich über dessen Erfahrungen und/oder einen Codeschnipsel sehr dankbar:-) Gruß DerBrain87 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |

| |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik, Master Eng. IT-Security & Forensic
      

 Beiträge: 2854 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 17. Jun. 2025 17:21 <-- editieren / zitieren --> Unities abgeben:          Nur für DerBrain87
Moin Wieso erst mit Inventor 2024? Das PostPrivateEventexistiert seit Inventor 4. Das Gegenstück PeekPrivateEvent kam mit Version 10 (10, nicht 2010). Mir ist keine Dokumentation der Optionen bekannt und auch nicht, ob der Befehl überhaupt auf die Art Optionen akzeptiert. Praktisch wäre es schon - an vielen Stellen. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |