| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
| |
| Integriertes PTC-Add-On ModelSearch , ein Anwenderbericht
|
Autor
|
Thema: Teil nicht aktiv setzen (2547 mal gelesen)
|
rabokon Mitglied Konstrukteur
Beiträge: 202 Registriert: 12.07.2005
|
erstellt am: 08. Dez. 2008 10:33 <-- editieren / zitieren --> Unities abgeben:
Guten Morgen an alle, vielleicht ist die Funktion ganz einfach zu realisieren. Aber manchmal frage ich mich, wie ein aktives Teil (oder Baugruppe) deaktiv gesetzt werden kann, ohne ein anderes zu aktivieren. Geht das überhaupt? rabokon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Gerhard Deeg Ehrenmitglied V.I.P. h.c. i.R. Konstrukteur aus Leidenschaft
Beiträge: 2643 Registriert: 17.12.2000 CREO - OSD - OSM HP XW4400 - XW4600 Dell Inspiron 17E NVIDIA QUADRO FX1500 NVIDIA Quadro FX1800 HP Mini 210 2002sg WIN 7 Ultimate 32/64
|
erstellt am: 08. Dez. 2008 10:41 <-- editieren / zitieren --> Unities abgeben: Nur für rabokon
Hallo Rabokon, ist doch ganz einfach, wenn ein Teil aktiv ist und ich will das es nicht mehr aktiv ist, erzeuge ich einfach ein neues leeres Teil und mein altes Teil ist deaktiviert. Sicher das neue leere Teil ist aktiv, aber wenn nichts drin ist kann einem das doch egal sein, oder? So würde ich die Lösung finden. Gruß aus Berlin Gerhard ------------------ Jeder erfüllte Wunsch ist ein Traum weniger Träume sind die Sonnenstunden der Hoffnung Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
highway45 Moderator Bastler mit Diplom
Beiträge: 6377 Registriert: 14.12.2004 SolidDesigner-20.5.0 + PhoenixPDM-11 + Solidworks-2023 + PE8 + Blender
|
erstellt am: 08. Dez. 2008 10:45 <-- editieren / zitieren --> Unities abgeben: Nur für rabokon
Wenn es öfters vorkommt, dann könntest du diesen Code auf einen Knopf legen: create_part :name "foobar" complete delete_3d "/foobar" complete Der macht genau das, was Gerhard beschreibt: Teil erzeugen und danach direkt wieder löschen. Anders geht es tatsächlich nicht. ------------------ http://osd.cad.de/ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rabokon Mitglied Konstrukteur
Beiträge: 202 Registriert: 12.07.2005
|
erstellt am: 08. Dez. 2008 11:00 <-- editieren / zitieren --> Unities abgeben:
|
Ex-Mitglied | |
der_Wolfgang Moderator Tastenhauer
Beiträge: 2219 Registriert: 3.20. ● PE20+60+80@home ● W10 Pro Build19045.4780 ● Drafting V17~V20.7 ● Modeling V17~V20.7 ● Windchill 12.1.2.6 ● UWGM Client 13.0.0.1
|
erstellt am: 08. Dez. 2008 22:58 <-- editieren / zitieren --> Unities abgeben: Nur für rabokon
Zitat: Original erstellt von highway45: Wenn es öfters vorkommt, dann könntest du diesen Code auf einen Knopf legen:create_part :name "foobar" complete delete_3d "/foobar" complete
Ich würde den Befehl wir folgt etwas sicherer machen: a) der Besitzer steht nicht zwangsläufig immer auf "/" (root), oder? b) theoretisch koennte es ein Teil/Container/Baugruppe/was-auch-immer names foobar schon geben, also überlassen wir das dem Soliden! Code: (create_part :owner "/") (delete_3d (oli:sd-inq-curr-part))
a) wir erzeugen das Teil immer unter root, überlassen die Namesvergabe dem Soliden b) das nach der Erzeugung aktuelle part wird geloescht (wie auch immer es heisen mag!) ------------------ ● Seamonkey Firefox Thunderbird ● OSD Hilfeseite (de) / help page (en) ● NotePad++ ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SanchoPinky Mitglied Systembetreuer, Konstrukteur
Beiträge: 56 Registriert: 21.03.2007 OSD V15.50C MM/SheetMetal/SolidPower auf WinXpProfessional 64bit Intel Core2 Duo 3.0GHz, 8GB RAM, Nvidia Quadro FX 1700
|
erstellt am: 09. Dez. 2008 07:24 <-- editieren / zitieren --> Unities abgeben: Nur für rabokon
Hi Leute, Danke für Eure vielen Antworten - war übers Wochenende weg und heute ganz überrascht von so vielen Antworten! Nach dem Schock wieder in der Arbeit zu seien nach 4 Tagen Skifahren werd ich mir alles durchlesen und schauen ob ich es auch verstehe ;-) und brav Units austeilen! lg Michi SORRY - Eintrag gehört nicht hierher - verdrückt!
[Diese Nachricht wurde von SanchoPinky am 09. Dez. 2008 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rabokon Mitglied Konstrukteur
Beiträge: 202 Registriert: 12.07.2005
|
erstellt am: 09. Dez. 2008 08:22 <-- editieren / zitieren --> Unities abgeben:
Guten Morgen wieder an alle! Ich habe nicht gedacht, dass dieses wohl so einfache Thema doch solch eine rege Diskussion auslöst. Die letzte Anregung von Wolfgang habe ich in meine Symbolleiste aufgenommen und der Befehl hat zudem auch den Vorteil, dass man sich nicht mehr im "Löschen"-Modus befindet wie bei der Lösung von highway_45. Aber natürlich gilt beiden mein Respekt. rabokon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rabokon Mitglied Konstrukteur
Beiträge: 202 Registriert: 12.07.2005 Win Vista 64bit Business, Inventor 2010, Intel Xenon, 2x2,5 GHz, NVIDIA Quadro FX3800, 8GB RAM
|
erstellt am: 09. Dez. 2008 09:04 <-- editieren / zitieren --> Unities abgeben:
Hallo noch einmal, ich habe jetzt den Befehl mehrmals angewendet, leider muss ich aber eine "Reklamation" anbringen: Nach dem Deaktivieren wird das durch den "Soliden" erstellte Teil nicht gelöscht, sondern nach einem nächsten Mausklick erscheint es in der Strukturliste. Ich wollte dann noch einmal überprüfen, ob der Befehl dem Button richt zugeordnet worden ist, in der Befehlszeile stand aber nur noch (ELAN::CREATE_PART :OWNER "/") Dabei hatte ich darauf geachtet, dass all Klammern auch wirklich vorhanden waren. Woran kann das liegen? rabokon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rabokon Mitglied Konstrukteur
Beiträge: 202 Registriert: 12.07.2005
|
erstellt am: 09. Dez. 2008 09:53 <-- editieren / zitieren --> Unities abgeben:
Und noch einmal hallo! Ich hab' mir mal selbst geholfen und eine Befehlsfolge aufgezeichnet. Der Ablauf ist dann ungefähr so: - Neues Teil - Aktuelles Teil löschen (siehe oben) - Alles OK In der aufgezeichneten Liste sieht das dann so aus: create_part complete delete_3d (SD-INQ-CURR-PART) complete Und das scheint erst einmal zu funktionieren. Kann die Sache in dieser Art einen Haken haben? rabokon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Moderator Tastenhauer
Beiträge: 2219 Registriert: 3.20. ● PE20+60+80@home ● W10 Pro Build19045.4780 ● Drafting V17~V20.7 ● Modeling V17~V20.7 ● Windchill 12.1.2.6 ● UWGM Client 13.0.0.1
|
erstellt am: 09. Dez. 2008 20:15 <-- editieren / zitieren --> Unities abgeben: Nur für rabokon
Zitat: Original erstellt von rabokon: create_part complete delete_3d (SD-INQ-CURR-PART) completeKann die Sache in dieser Art einen Haken haben?
Jein.. wenn Du noch den :OWNER "/" einbaust bist Du auf der sicheren Seite, denn "/" kann nie schreibgeschuetzt sein. Ein geklammerter Aufruf (create_part) und ein "create_part complete" Verhalten sich unterschiedlich was das Neuzeichnen der Benutzeroberfläche betrifft. --------------------- Auch mit Matthias'seiner Seqeunce steht man am Ende *NICHT* im delete befehl. Denn um das zu vermeiden steht ja da complete vollkommen korrekt dahinter. --------------------- Warum in Deiner Befehlszeile noch ein Teil stand kann man/ich so nicht nachvollziehen. Da hast Du was 'anders' gemacht als gedacht (zumal es ja auch noch der 1. Teil des neuen 'Knopfes' ist). Wie ich soeben feststellte verhält sich die geklammerter Version in der Tat etwas komisch. Insbesondere dann, wenn man sie in einen String packt, icon-command speichert, erneut editiert und wieder abspeichert..... gefällt mir nicht. Empfehlung: Code: CREATE_PART :OWNER "/" complete DELETE_3D (OLI::SD-INQ-CURR-PART) complete
Beim neuerlichen editieren dieses commands verschwindet dann wieder das 2. complete.. Also jetzt ähmmm ööhmmmm.... muss ich die Nase rümpfen.Fazit: 1* eingeben und nicht wieder editieren scheint bei beiden *EIN* zeiligen Varianten gut zu funktionieren. Oh noch ein Hinweis: die obigen Versuche meinerseits fanden mit der alten Version 14.50 statt. Der Veteran lief halt grad. ------------------ ● Seamonkey Firefox Thunderbird ● OSD Hilfeseite (de) / help page (en) ● NotePad++ ● [Diese Nachricht wurde von der_Wolfgang am 09. Dez. 2008 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rabokon Mitglied Konstrukteur
Beiträge: 202 Registriert: 12.07.2005
|
erstellt am: 10. Dez. 2008 08:33 <-- editieren / zitieren --> Unities abgeben:
Hallo Wolfgang und alle anderen, ich habe den o.g. einzeiligen Code eingegeben und dieser läuft richtig. Die Zeile werde ich dann so belassen und die Erklärungen sind auch plausibel und nachvollziehbar - man lernt halt ständig dazu. Danke rabokon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
uli1601 Mitglied Konstrukteur
Beiträge: 16 Registriert: 19.07.2007 Creo Elements/Direct3D 19.0 MM 19.0 Intel Xeon mit 64GB RAM Windows 7
|
erstellt am: 11. Dez. 2008 09:04 <-- editieren / zitieren --> Unities abgeben: Nur für rabokon
So funktioniert der Befehl: Code: (PROGN (CREATE_PART :OWNER "/") (DELETE_3D (OLI::SD-INQ-CURR-PART)))
Vermutlich erwartet Modeling nur eine einzelne Terminate-Action, wenn du einen neuen Befehl erzeugst, aber mit "PROGN" kannst du ihn austricksen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Moderator Tastenhauer
Beiträge: 2219 Registriert: 3.20. ● PE20+60+80@home ● W10 Pro Build19045.4780 ● Drafting V17~V20.7 ● Modeling V17~V20.7 ● Windchill 12.1.2.6 ● UWGM Client 13.0.0.1
|
erstellt am: 11. Dez. 2008 20:00 <-- editieren / zitieren --> Unities abgeben: Nur für rabokon
Zitat: Original erstellt von uli1601: So funktioniert der Befehl:
nicht wirklich! Zitat:
Code: (PROGN (CREATE_PART :OWNER "/") (DELETE_3D (OLI::SD-INQ-CURR-PART)))
Vermutlich erwartet Modeling nur eine einzelne Terminate-Action, wenn du einen neuen Befehl erzeugst, aber mit "PROGN" kannst du ihn austricksen.
a) Da kannst Du 25 (progn's drum rum machen. SO bleiben das 2 Terminate Actions. b) mit dieser Variante bleibt der Gruene Strich unterm Part im Browser erhalten! Siehe weiter oben 'geklammerter Aufruf' ------------------ ● Seamonkey Firefox Thunderbird ● OSD Hilfeseite (de) / help page (en) ● NotePad++ ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |