| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
| |
 | Windows Server 2025 - Was ist neu im Microsoft Server-Betriebssystem, eine Pressemitteilung
|
Autor
|
Thema: Makroprogrammierung; Ansicht auswählen (2428 mal gelesen)
|
Fischer-Reinach Mitglied Lehrling Konstruktion

 Beiträge: 14 Registriert: 28.10.2010
|
erstellt am: 05. Jan. 2011 10:12 <-- editieren / zitieren --> Unities abgeben:         
Hallo Allerseits Wieder einmal hab ich ein Problem mit dem Aufzeichner von Modeling 17.0 Ich wollte mir einen Befehl mit den Aufzeichner generieren, welcher eine bestimmte Ansichtseigenschaft ändert. In diesem Beispiel sollten alle "unsichtbaren" Linien gelöscht werden (2D), dabei kam folgendes raus: Code: am_view_prop (DOCU::DOCU-PROCESS-DIRECT-PICK -58.492695224495499 97.508700773611906) (GPNTDOCU -58.492695224495499 97.508700773611906 "Annotation") :Display_ui :the_view :show_no_hidden_lines cancel
Ich vermute, das Makro funktioniert nicht, weil
Code: (DOCU::DOCU-PROCESS-DIRECT-PICK -58.492695224495499 97.508700773611906) (GPNTDOCU -58.492695224495499 97.508700773611906 "Annotation")
die ID der Ansicht ist, mit welcher ich das Makro erstellt habe.Gibt es vielleicht einen Befehl welchen ich mit der ID auswechseln kann, damit man bestimmte Ansichten auswählen kann? Und wenn ich ganz auf dem Holzweg bin bitte aufklären  Gruss Tyu
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
highway45 Moderator Bastler mit Diplom
       

 Beiträge: 6385 Registriert: 14.12.2004 CoCreate Modeling V20 + PE6 NotePad++
|
erstellt am: 05. Jan. 2011 14:46 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
Du darst keine Klicks in das Fenster machen. Die einzelne Ansicht müßte also als Pfad angegeben werden. Das geht zum Beispiel mit Öffnen des Auswahlmenüs und dann Klick in die Zeichnungsliste und ergibt so etwas: am_view_prop :by_view_docu_geo "/Bauteil/Ansichtssatz/Vordans" :display_ui :the_view :show_no_hidden_lines cancel Nachteilig ist hier natürlich, daß der Pfad nur für eine bestimmte Ansicht gültig ist ! Vielleicht reicht ja auch die Auswahl über das gesamte Blatt 1: am_view_prop :by_sheet_docu_geo "1" :display_ui :the_view :show_no_hidden_lines cancel oder universell über die gesamte Zeichnung: am_view_prop :by_drawing_docu_geo :display_ui :the_view :show_no_hidden_lines cancel Nur einzelne Ansichten auszuwählen ist meiner Erfahrung nach nicht möglich mit einem Recorder-Makro. ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mazdarati Mitglied
 Beiträge: 6 Registriert: 26.11.2010
|
erstellt am: 05. Jan. 2011 15:13 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
ich habe ganz früher mal einen button erstellt welcher alle unsichtbaren linien einer zeichnung löscht. das war damals ein me10 befehl. ----------------------------------------------------------------- (OLI::SD-EXECUTE-ANNOTATOR-COMMAND :CMD "DELETE SELECT GLOBAL DASHED CONFIRM END REDRAW") ----------------------------------------------------------------- hoffe das funktioniert noch so, habs nicht getestet also ohne gewähr... die zahlen -58.49... 97.50... stehen glaube ich für die koordinaten an welcher stelle du ins fenster geklickt hast...
vielleicht hilft dir das ja etwas weiter...
lg mazdarati Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fischer-Reinach Mitglied Lehrling Konstruktion

 Beiträge: 14 Registriert: 28.10.2010
|
erstellt am: 06. Jan. 2011 08:28 <-- editieren / zitieren --> Unities abgeben:         
Zitat: Original erstellt von highway45: Du darst keine Klicks in das Fenster machen.
Gäbe es vielleicht einen Befehl mit welchem man eine Ansicht auswählen kann, also per klick? Der Rest würde ich wohl dank des Aufzeichners selbst hinbekommen...$ Gruss Tyu Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Patrick Weber Mitglied Konstruktionstechniker, Admin
  
 Beiträge: 659 Registriert: 20.11.2006 Win11 Pro 23H2 Core i7-12700, 32GB RAM, Quadro P620 Creo Elements/Direct 19.0 M030 ModelManager 19.0 License Server 19.0 F000 clisp,VB.net,VBA,AHK,Python
|
erstellt am: 06. Jan. 2011 10:25 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
Soviel ich weiß, ist eine Interaktion aus einem Makro heraus nicht möglich. Man müsste einen Dialog schreiben, in dem die Ansicht abgefragt wird. Folgendes muss in eine .lsp-Datei und im Modeling geladen werden. Code:
(in-package :custom) (use-package :OLI)(sd-defdialog 'cust-view-prop-show-no-hidden-lines-dialog :Dialog-title "Ansichtseigenschaft aendern" :toolbox-button nil ; kann t gesetzt werden, wenn in Werkzeugkiste erscheinen soll :without-show t :variables '( (ANSICHT :selection *sd-anno-view-seltype* :prompt-text "Ansicht angeben." :title "Ansicht" :multiple-items nil :after-input (progn (sd-call-cmds (am_view_prop ANSICHT :show_no_hidden_lines)) ; Unsichtbare Körperkanten ausblenden (display :clear-hide) ; Hinweisfenster, dass Ansicht aktualisiert werden muss, ausblenden (sd-call-cmds (am_view_update :update_selected_views ANSICHT)) ; Ansicht aktualisieren (setf ANSICHT nil) ) :next-variable 'ANSICHT ; weiter mit nächster Ansicht ) ) )
Anstatt des aufgezeichneten Makros wird dann nur
Code: cust-view-prop-show-no-hidden-lines-dialog
als Befehlsaktion im Eingabefehl eingetragen.(hoffe, das geht auch noch mit v17) ------------------ Grüße aus Sachsen pw Karl Marx ist tot, Einstein ist tot, und mir ist auch schon ganz schlecht! [Diese Nachricht wurde von Patrick Weber am 06. Jan. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fischer-Reinach Mitglied Lehrling Konstruktion

 Beiträge: 14 Registriert: 28.10.2010
|
erstellt am: 06. Jan. 2011 11:03 <-- editieren / zitieren --> Unities abgeben:         
Für den Code, muss ich einfach eine .txt umbenennen, oder muss ich den vielleicht noch kompilieren? Hättest du mir vielleicht eine "For Dummies"-Anleitung ?  Ich kenne mic gerade mal mit den Grundlagenvon C++ aus und hatte nie mit Lisp zu tun  Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
highway45 Moderator Bastler mit Diplom
       

 Beiträge: 6385 Registriert: 14.12.2004 CoCreate Modeling V20 + PE6 NotePad++
|
erstellt am: 06. Jan. 2011 11:37 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
Kannst du einfach kopieren in eine leere Textdatei. Die Endung muß dann von .txt in .lsp umgeändert werden. Dann ins CAD laden und in die Eingabezeile dies hier schreiben und Enter drücken: cust-view-prop-show-no-hidden-lines-dialog ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Patrick Weber Mitglied Konstruktionstechniker, Admin
  
 Beiträge: 659 Registriert: 20.11.2006
|
erstellt am: 06. Jan. 2011 12:33 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
Wenn die LISP-Datei geladen ist, kannst du den enthaltenen Dialog einfach so z.B. auf einen Button legen. ------------------ Grüße aus Sachsen pw Karl Marx ist tot, Einstein ist tot, und mir ist auch schon ganz schlecht! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fischer-Reinach Mitglied Lehrling Konstruktion

 Beiträge: 14 Registriert: 28.10.2010
|
erstellt am: 06. Jan. 2011 13:33 <-- editieren / zitieren --> Unities abgeben:         
|
Fischer-Reinach Mitglied Lehrling Konstruktion

 Beiträge: 14 Registriert: 28.10.2010
|
erstellt am: 06. Jan. 2011 14:02 <-- editieren / zitieren --> Unities abgeben:         
Zitat: Original erstellt von mazdarati: ich habe ganz früher mal einen button erstellt welcher alle unsichtbaren linien einer zeichnung löscht. das war damals ein me10 befehl.
Code: (OLI::SD-EXECUTE-ANNOTATOR-COMMAND :CMD"DELETE SELECT GLOBAL DASHED CONFIRM END REDRAW")
Dieser Befehl funktioniert tadellos, doch will ich nicht alle "unsichtbaren" Linien löschen. Gibt es auch in dieser Form ein Befehl, um einzelne auszuwählen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
highway45 Moderator Bastler mit Diplom
       

 Beiträge: 6385 Registriert: 14.12.2004 CoCreate Modeling V20 + PE6 NotePad++
|
erstellt am: 06. Jan. 2011 14:04 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
|
Patrick Weber Mitglied Konstruktionstechniker, Admin
  
 Beiträge: 659 Registriert: 20.11.2006
|
erstellt am: 06. Jan. 2011 14:20 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
|
der_Wolfgang Moderator Tastenhauer
     
 Beiträge: 2296 Registriert: 3.20. ● PE60+80@home ● W10 Pro Build10.0.19045.5737 ● Drafting V17~V20.7@job ● Modeling V17~V20.7@job ● Windchill 12.1.2.6@job ● UWGM Client 13.0.0.1@job ● Taschenrechner ● Stift+Zettel V8.42
|
erstellt am: 06. Jan. 2011 19:14 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
Zitat: Original erstellt von Fischer-Reinach: [QUOTE]Original erstellt von mazdarati: ich habe ganz früher mal einen button erstellt welcher alle unsichtbaren linien einer zeichnung löscht. das war damals ein me10 befehl.
Code: (OLI::SD-EXECUTE-ANNOTATOR-COMMAND :CMD"DELETE SELECT GLOBAL DASHED CONFIRM END REDRAW")
Dieser Befehl funktioniert tadellos
Dieser Befehl ist IMHO ganz schlecht! denn.. nach der naechsten Aktualisierung sind alle Linien wieder da. Man sollte halt nur an eigenen Daten mit Drafting befehlen rum machen. Sonst schneidet man sich schnell ins eigene Fleisch (== in die Ansichtsdaten). -- Macht es NICHT so - Der visuell gewünschte effekt mag ja *fuer den Moment* da sein, aber die Daten sind eigentlich jetzt schon verhunzt. ------------------ ● Seamonkey Firefox Thunderbird ● OSD Hilfeseite (de) / help page (en) ● NotePad++ ● [Diese Nachricht wurde von der_Wolfgang am 06. Jan. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Moderator Tastenhauer
     
 Beiträge: 2296 Registriert: 3.20. ● PE60+80@home ● W10 Pro Build10.0.19045.5737 ● Drafting V17~V20.7@job ● Modeling V17~V20.7@job ● Windchill 12.1.2.6@job ● UWGM Client 13.0.0.1@job ● Taschenrechner ● Stift+Zettel V8.42
|
erstellt am: 06. Jan. 2011 19:19 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
|
der_Wolfgang Moderator Tastenhauer
     
 Beiträge: 2296 Registriert: 3.20. ● PE60+80@home ● W10 Pro Build10.0.19045.5737 ● Drafting V17~V20.7@job ● Modeling V17~V20.7@job ● Windchill 12.1.2.6@job ● UWGM Client 13.0.0.1@job ● Taschenrechner ● Stift+Zettel V8.42
|
erstellt am: 06. Jan. 2011 19:25 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
Zitat: Original erstellt von Patrick Weber:
Code: ... (sd-defdialog 'cust-view-prop-show-no-hidden-lines-dialog ... :after-input (progn (sd-call-cmds (am_view_prop ANSICHT :show_no_hidden_lines)) ; Unsichtbare Körperkanten ausblenden (display :clear-hide) ; Hinweisfenster, dass Ansicht aktualisiert werden muss, ausblenden (sd-call-cmds (am_view_update :update_selected_views ANSICHT)) ; Ansicht aktualisieren (setf ANSICHT nil) .
am_view_prop *hat* einen update button! Dann braucht man nicht so einen 3 Sprung zu machen wie du das oben gezeigt hast. Code: (sd-call-cmds (am_view_prop ANSICHT :show_no_hidden_lines :UPDATE_VIEW))
[Diese Nachricht wurde von der_Wolfgang am 06. Jan. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fischer-Reinach Mitglied Lehrling Konstruktion

 Beiträge: 14 Registriert: 28.10.2010
|
erstellt am: 07. Jan. 2011 07:37 <-- editieren / zitieren --> Unities abgeben:         
|
Patrick Weber Mitglied Konstruktionstechniker, Admin
  
 Beiträge: 659 Registriert: 20.11.2006 Win11 Pro 23H2 Core i7-12700, 32GB RAM, Quadro P620 Creo Elements/Direct 19.0 M030 ModelManager 19.0 License Server 19.0 F000 clisp,VB.net,VBA,AHK,Python
|
erstellt am: 07. Jan. 2011 17:25 <-- editieren / zitieren --> Unities abgeben:          Nur für Fischer-Reinach
Zitat: Original erstellt von der_Wolfgang: am_view_prop *hat* einen update button! Dann braucht man nicht so einen 3 Sprung zu machen wie du das oben gezeigt hast.
Kann sein. Hatte nicht die Online-Referenz bemüht. @TE: Hast du etwas am Lisp modifiziert? ------------------ Grüße aus Sachsen pw Karl Marx ist tot, Einstein ist tot, und mir ist auch schon ganz schlecht! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |