| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SolidEdge |
Autor
|
Thema: VB.Net Macro - Teil einbauen mit Capure Fit (1319 mal gelesen)
|
Andy313 Mitglied Konstruktöör
Beiträge: 212 Registriert: 10.02.2005 Solid Edge ST10 mit CIM Database (von Contact) Windows 10 64bit Intel Xeon E5-1620 v2 (3.7Ghz) 16 GB RAM / SSD HD
|
erstellt am: 17. Jun. 2016 11:54 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen Ich stehe wider an bei einem Makro an. Ich möchte ein Teil in eine Zusammenstellung einbauen, so wie wenn man es mit Drag and Drop reinzieht. Sprich: das sogleich das CaptureFit Tool aktiv ist. Reinholen ist kein Problem, das geht mit: MySE.ActiveDocument.Occurrences.AddByFilename(File) Aber dann ist es am Ursprung festgetackert =/ Schönen Tag Andy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zeitbeißer Moderator CAD-Koryphäe
Beiträge: 2646 Registriert: 25.06.2014 Die Computerrevolution ist vorbei - sie haben gewonnen.
|
erstellt am: 17. Jun. 2016 11:56 <-- editieren / zitieren --> Unities abgeben: Nur für Andy313
Zitat: Original erstellt von Andy313: [...] Aber dann ist es am Ursprung festgetackert =/ [...]
Und was möchtest du gerne haben?
------------------
Nichts ist mächtiger als eine Idee, deren Zeit gekommen ist. Victor Hugo ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andy313 Mitglied Konstruktöör
Beiträge: 212 Registriert: 10.02.2005 Solid Edge ST10 mit CIM Database (von Contact) Windows 10 64bit Intel Xeon E5-1620 v2 (3.7Ghz) 16 GB RAM / SSD HD
|
erstellt am: 17. Jun. 2016 11:59 <-- editieren / zitieren --> Unities abgeben:
|
Zeitbeißer Moderator CAD-Koryphäe
Beiträge: 2646 Registriert: 25.06.2014 Die Computerrevolution ist vorbei - sie haben gewonnen.
|
erstellt am: 17. Jun. 2016 12:01 <-- editieren / zitieren --> Unities abgeben: Nur für Andy313
Zitat: Original erstellt von Andy313: Hallo Zeitbeißerwie geschrieben möchte ich das nach dem Makro das "CaptureFit" Tool aktiv ist. Das man nur noch die Flächen auswählen muss wo es Eingebaut werden soll.
Ist den zu verbauenden Teilen bereits CaptureFit beigebracht worden?? Das erste Teil in einer ASM wird doch immer am Ursprung verbaut! -> Ist das auch noch so wenn du durch ausführen deines Makros ein weiteres Teil verbaust?? ------------------
Nichts ist mächtiger als eine Idee, deren Zeit gekommen ist. Victor Hugo ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andy313 Mitglied Konstruktöör
Beiträge: 212 Registriert: 10.02.2005 Solid Edge ST10 mit CIM Database (von Contact) Windows 10 64bit Intel Xeon E5-1620 v2 (3.7Ghz) 16 GB RAM / SSD HD
|
erstellt am: 17. Jun. 2016 13:05 <-- editieren / zitieren --> Unities abgeben:
|
Markus Gras Moderator Solid Edge AE
Beiträge: 4602 Registriert: 20.07.2000 Kritik muß sachlich falsch und persönlich verletzend sein, damit sie wirkt.
|
erstellt am: 17. Jun. 2016 13:09 <-- editieren / zitieren --> Unities abgeben: Nur für Andy313
Hallo Andy, wenn Du das Teil per Zwischenablage übergibst und Einfügen (STRG+V) auslöst dann sollte es gehen. Soweit ich das beobachtet habe wird das bei den Standard Parts auch so gemacht. Der Vorteil dabei ist, will man das Teil ein weiteres mal verbauen, dann braucht man nur STRG+V zu drücken. ------------------ Gruß Markus Gras Unitec Informationssysteme GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andy313 Mitglied Konstruktöör
Beiträge: 212 Registriert: 10.02.2005 Solid Edge ST10 mit CIM Database (von Contact) Windows 10 64bit Intel Xeon E5-1620 v2 (3.7Ghz) 16 GB RAM / SSD HD
|
erstellt am: 17. Jun. 2016 13:51 <-- editieren / zitieren --> Unities abgeben:
|
Zeitbeißer Moderator CAD-Koryphäe
Beiträge: 2646 Registriert: 25.06.2014 Die Computerrevolution ist vorbei - sie haben gewonnen.
|
erstellt am: 17. Jun. 2016 13:58 <-- editieren / zitieren --> Unities abgeben: Nur für Andy313
Zitat: Original erstellt von Andy313: [...] Weist du zufälligerweise eine bessere Methode zum Einfügen in SE als Sendkey?
SolidEdgeAssembly.Occurrence AddByFilename(String OccurrenceFileName, [Object UseSimplifiedPart]) Summary: Adds an occurrence to the active assembly. ------------------
Nichts ist mächtiger als eine Idee, deren Zeit gekommen ist. Victor Hugo ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andy313 Mitglied Konstruktöör
Beiträge: 212 Registriert: 10.02.2005 Solid Edge ST10 mit CIM Database (von Contact) Windows 10 64bit Intel Xeon E5-1620 v2 (3.7Ghz) 16 GB RAM / SSD HD
|
erstellt am: 17. Jun. 2016 14:04 <-- editieren / zitieren --> Unities abgeben:
Hallo Zeitbeißer, wie in meinem ersten Poste geschrieben kenne ich diesen Befehl schon, aber wie in meinem ersten und zweiten Post geschrieben möchte ich das Teil so einbauen das der CaptureFit Dialog erscheint und der User das Teil an den gewünschten Ort platzieren kann. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zeitbeißer Moderator CAD-Koryphäe
Beiträge: 2646 Registriert: 25.06.2014 Die Computerrevolution ist vorbei - sie haben gewonnen.
|
erstellt am: 17. Jun. 2016 14:20 <-- editieren / zitieren --> Unities abgeben: Nur für Andy313
Zitat: Original erstellt von Andy313: [...] das Teil so einbauen das der CaptureFit Dialog erscheint und der User das Teil an den gewünschten Ort platzieren kann.
Hast du schon mal das SESpy-Tool nach diesen Möglichkeiten durchforstet? Der Tipp von Markus Gras hört sich gut an finde ich... ------------------
Nichts ist mächtiger als eine Idee, deren Zeit gekommen ist. Victor Hugo ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Markus Gras Moderator Solid Edge AE
Beiträge: 4602 Registriert: 20.07.2000 Kritik muß sachlich falsch und persönlich verletzend sein, damit sie wirkt.
|
erstellt am: 17. Jun. 2016 14:31 <-- editieren / zitieren --> Unities abgeben: Nur für Andy313
|
Andy313 Mitglied Konstruktöör
Beiträge: 212 Registriert: 10.02.2005 Solid Edge ST10 mit CIM Database (von Contact) Windows 10 64bit Intel Xeon E5-1620 v2 (3.7Ghz) 16 GB RAM / SSD HD
|
erstellt am: 17. Jun. 2016 15:04 <-- editieren / zitieren --> Unities abgeben:
Hallo Zeitbeiße, Hallo Markus Danke für den Tipp mit dem Spy for SE. Dieses Tool ist Gold wert um für SE zu programmieren. Leider habe ich da nichts brauchbares gefunden. Ja der Tipp von Markus mit dem Kopieren und Einfügen (per Sendkey) habe ich nun so umgesetzt. Und funktioniert hervorragend. Nur versuche ich möglicht wenig mit Sendkey zu arbeiten, weil es nicht sehr sauber ist.. Hier der Code, falls jemand etwas ähnliches machen will: Dim f() As String = {File} Dim d As New DataObject(DataFormats.FileDrop, f) Clipboard.SetDataObject(d, True) AppActivate("Solid Edge") Threading.Thread.Sleep(500) SendKeys.Send("^v") Der Command "MySE.StartCommand(39002)" ist die Komponentenmontage. Aber wenn ich das Teil einbaue, selektiere und dann den Command ausführe ist das CaptureFit weg. Also: Nahe dran =) Ich danke Euch und wünsche euch schönes Wochenende Andy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RayBan Mitglied CAD/PLM-Consultant
Beiträge: 649 Registriert: 04.02.2002
|
erstellt am: 21. Jun. 2016 08:25 <-- editieren / zitieren --> Unities abgeben: Nur für Andy313
Hallo, ich habe ähnliches über das Einfügen aus der Zwischenablage in SE über den C#-Aufruf: seApplication.StartCommand((SolidEdgeFramework.SolidEdgeCommandConstants) AssemblyCommandConstants.AssemblyEditPaste); Thread.Sleep(2000); gelöst... hierbei wird ein Objekt aus der Zwischenablage in die aktive Umgebung von Solid Edge eingefügt. Vielleicht lässt sich das ja verwenden. Gruß Markus ------------------ Und er sagte noch: "noch nicht klicken"..... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andy313 Mitglied Konstruktöör
Beiträge: 212 Registriert: 10.02.2005 Solid Edge ST10 mit CIM Database (von Contact) Windows 10 64bit Intel Xeon E5-1620 v2 (3.7Ghz) 16 GB RAM / SSD HD
|
erstellt am: 22. Jun. 2016 13:04 <-- editieren / zitieren --> Unities abgeben:
|