| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
Autor
|
Thema: kanten wählen (944 mal gelesen)
|
P.Greskamp Mitglied Ingenieur
Beiträge: 18 Registriert: 12.03.2003
|
erstellt am: 21. Mai. 2003 18:53 <-- editieren / zitieren --> Unities abgeben:
Hallo, habe mal ein kleines Problem im Solid. Gibt es eine Möglichkeit, eventuell auch über ein Makro, alle Kanten eines Teils zu wählen die eine Länge "x" (die ich eingeben kann, z.B. 1,5mm) haben. Wäre schön wenn mir da jemand helfen könnte ------------------ Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
baumgartner Mitglied Dipl.-Ing. Maschinenbau
Beiträge: 715 Registriert: 05.01.2001 Ing.-Büro Andreas Baumgartner bietet Lösungen rund um ME10. * ME10-Makros * ME10-Makroschulungen
|
erstellt am: 22. Mai. 2003 09:00 <-- editieren / zitieren --> Unities abgeben: Nur für P.Greskamp
|
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 22. Mai. 2003 11:26 <-- editieren / zitieren --> Unities abgeben: Nur für P.Greskamp
|
RAND CoCreateSolutions Mitglied
Beiträge: 10 Registriert: 22.04.2002
|
erstellt am: 22. Mai. 2003 18:52 <-- editieren / zitieren --> Unities abgeben: Nur für P.Greskamp
Na ja, es geht auch ohne konkrete Behandlung der Kanten. Wäre zwar schöner und einfacher .. . Ich hab mal was zusammengestöpselt - wirklich noch nicht das gelbe vom Ei aber ich denke der Ansatz ist schon mal soweit OK. Ich habs einfach mal an einem kleinen Teil ausprobiert. Man kann das Tool sogar mehrmals aufrufen um Kanten mit verschiedenen Längen zu wählen. Hätt ich selber nicht gedacht das das geht. Die folgen Zeilen in eine Datei übertragen - im OSD-M laden Verrunden aufrufen und nach der Eingabe des Radius einfach das Tool aus der Werkzeugkiste wählen Eingaben machen un zweimal OK. Gruß Stefan (sd-defdialog 'sko_select_edges_with_len :dialog-title "WÌhleKantenLÌnge" :dialog-type :interrupt :variables '( (Teil :title "Teil" :value-type art ) (Laenge :title "LÌnge" :value-type :length ) ) k-action '(sd-call-cmds (sko_list_edges_from_part Teil Laenge)) ) (DEFUN sko_list_edges_from_part (teil laenge) (setf KantenListeKomplett (sd-call-cmds (GET_SELECTION :FOCUS_TYPE *sd-edge-3d-seltype* :select :in_part Teil)) ) (setf KantenListe (Sko_create_ergebnis_liste KantenListeKomplett laenge '())) (sd-put-buffer "KantenListe") ) (DEFUN Sko_create_ergebnis_liste (Liste Laenge NeueListe) (IF (ENDP Liste) NeueListe (PROGN (IF (= Laenge (sd-vec-length (sd-vec-subtract (sd-edge-end-pnt (sd-inq-edge-geo (FIRST Liste) )) (sd-edge-start-pnt (sd-inq-edge-geo (FIRST Liste) )) ) ) ) ;then (PROGN (SETF NeueListe (CONS (FIRST Liste) NeueListe)) (Sko_create_ergebnis_liste (REST Liste) Laenge NeueListe) ) ;else (Sko_create_ergebnis_liste (REST Liste) Laenge NeueListe) );end_if ) );end_if ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
P.Greskamp Mitglied Ingenieur
Beiträge: 18 Registriert: 12.03.2003
|
erstellt am: 23. Mai. 2003 12:35 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, erstmal allen Danke für die Antworten. Das mit dem Makro kann ich erst nächste Woche ausprobieren. Es geht im Grunde darum alle Kanten die eine gewisse Blechstärke haben zu wählen und diese mit einem Radius zu versehen. Und das wären dann alle Kanten mit einer Länge "x" zum Beispiel. Danke Stefan für das Makro, werde es dann testen. In was für eine Datei muss ich das denn ablegen und wie bekomme ich das dann in den OSD? ------------------ Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
P.Greskamp Mitglied Ingenieur
Beiträge: 18 Registriert: 12.03.2003
|
erstellt am: 17. Jun. 2003 09:15 <-- editieren / zitieren --> Unities abgeben:
HAllo zusammen, wer kann mir denn hier nochmal helfen. Habe das Makro von Stefan mal eingeladen und auf den ersten Blick funktioniert das auch prima, aber nicht bei allen TEilen. Ich habe mal eine .pkg datei mit angehängt bei der es nciht funktioniert. Keine ahnung warum es bei dem einen klappt und bei dem anderen nicht. Wäre super wenn da jemand Rat wüsste. ------------------ Gruß Peter [Diese Nachricht wurde von P.Greskamp am 17. Juni 2003 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 17. Jun. 2003 15:09 <-- editieren / zitieren --> Unities abgeben: Nur für P.Greskamp
Probiers mal damit: (sd-defdialog 'sko_select_edges_with_len :dialog-title "WÌhleKantenLÌnge" :dialog-type :interrupt :variables '( (Teil :title "Teil" :value-type art ) (Laenge :title "LÌnge" :value-type :length ) ) k-action '(sd-call-cmds (sko_list_edges_from_part Teil Laenge)) ) (DEFUN sko_list_edges_from_part (teil laenge) (setf KantenListeKomplett (sd-call-cmds (GET_SELECTION :FOCUS_TYPE *sd-edge-3d-seltype* :select :in_part Teil)) ) (setf KantenListe (Sko_create_ergebnis_liste KantenListeKomplett laenge '())) (sd-put-buffer "KantenListe") ) (DEFUN Sko_create_ergebnis_liste (Liste Laenge NeueListe) (IF (ENDP Liste) NeueListe (PROGN (setf Klaenge (sd-vec-length (sd-vec-subtract (sd-edge-end-pnt (sd-inq-edge-geo (FIRST Liste) )) (sd-edge-start-pnt (sd-inq-edge-geo (FIRST Liste) )) ) ) ) (IF (AND (> Laenge (- Klaenge 0.001)) (< Laenge (* Klaenge 0.001)))) ;then (PROGN (SETF NeueListe (CONS (FIRST Liste) NeueListe)) (Sko_create_ergebnis_liste (REST Liste) Laenge NeueListe) ) ;else (Sko_create_ergebnis_liste (REST Liste) Laenge NeueListe) );end_if ) );end_if ------------------ Grüße aus Wien Walter DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
P.Greskamp Mitglied Ingenieur
Beiträge: 18 Registriert: 12.03.2003
|
erstellt am: 17. Jun. 2003 15:41 <-- editieren / zitieren --> Unities abgeben:
Hallo Walter, vielen Dank für die schnelle Hilfe und die Mühe. Aber wenn ich das Makro laufen lasse, kommt folgende Fehlermeldung. LISP-FEhler: Too few arguments. Mach ich da irgendwas falsch? ------------------ Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 17. Jun. 2003 16:17 <-- editieren / zitieren --> Unities abgeben: Nur für P.Greskamp
Zitat: Original erstellt von P.Greskamp: Mach ich da irgendwas falsch?
Nein, ich. Diese Zeile ist falsch gewesen: (IF (AND (> Laenge (- Klaenge 0.001)) (< Laenge (* Klaenge 0.001))) Die Programmänderung hab ich gleich hier im Eingabefeld vom Forum gemacht und hab mich mit den Klammern verzählt
------------------ Grüße aus Wien Walter DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
P.Greskamp Mitglied Ingenieur
Beiträge: 18 Registriert: 12.03.2003
|
erstellt am: 17. Jun. 2003 16:46 <-- editieren / zitieren --> Unities abgeben:
Hallo Walter, tut mir ja leid wenn ich dich so nerve, aber an den Klammern hat das nicht gelegen, ich glaube du hast dich jetzt verzählt, mit den 4 Klammern am Ende kam keine Fehlermeldung. Wenn ich das Makro jetzt aufrufen will kommt die Meldung: LISP-Fehler: Unexpected end of #<input stream MAch ich die 4. Klammer wieder hin, ist die Meldung weg. Vielleicht kannst du dir das nochmal ansehen, würde mir echt helfen. Vielen Dank ------------------ Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 17. Jun. 2003 16:47 <-- editieren / zitieren --> Unities abgeben: Nur für P.Greskamp
|
P.Greskamp Mitglied Ingenieur
Beiträge: 18 Registriert: 12.03.2003
|
erstellt am: 17. Jun. 2003 16:51 <-- editieren / zitieren --> Unities abgeben:
Also irgendwo muss da der Wurm drin sein, das mit dem "+" klappt auch nicht, wenn ich die 4. Klammer wieder hin mache, kann ich das Makro laden, dann kommt aber wenn ich das Makro aufrufen wieder die Meldung: LISP-Fehler: Too few arguments. Irgendwo muss da noch was nicht stimmen. ------------------ Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 17. Jun. 2003 16:58 <-- editieren / zitieren --> Unities abgeben: Nur für P.Greskamp
|