| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
| |
| Webcast: PTC | Smart Connected Manufacturing, ein Webinar am 25.10.2024
|
Autor
|
Thema: Text in Annotation automatisch erstellen (1711 mal gelesen)
|
tdoerner Mitglied Konstrukteur
Beiträge: 57 Registriert: 22.05.2003
|
erstellt am: 27. Mai. 2003 12:45 <-- editieren / zitieren --> Unities abgeben:
Hallo "schon wieder", habe ein erneutes Problem, ich muss in Annotation (11.60B) einen Text generieren der mit diesem "BALLOON"-Attribut versehen ist, und auf der Zeichnung zu der richtigen Ansicht platzieren. Habe folgenden Ansatz: a) Text- Voreinstellungen z.B. (am_text_settings :size 5 :adjust 1 :frame "BALLOON" :ratio 1 :linesp 2.2 :color 65280) b) jetzt kommt's, ich hätte mir gedacht mit (am_create_text wner am_geo_set_domain ???variable der ansicht??? :docu "Variable2") geht's, aber es geht nicht, ich bekomme einfach nicht den OWNER richtig hin. Das alles sollte mit nur 2 Parametern geschehen, Ansicht + Text. Hoffe Ihr könnt mir helfen Thomas
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2158 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.6, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook Fury 16 G9, Windows 10 Pro 64
|
erstellt am: 27. Mai. 2003 14:33 <-- editieren / zitieren --> Unities abgeben: Nur für tdoerner
Hallo Thomas, programmieren in Annotation ist ein ziemlicher Horror Die Online-Doku hat ordentliche Schwächen, auch mit dem Aufzeichner kommt man nicht immer auf die Syntax. Die Verwendung von Vektoren und Punkten ist mit ME10 nicht zu vergleichen und ingesamt steht man vor einem lustigen Wirrwarr aus Lisp, OSD-Commands, Integration-Kit-Funktionen (sd-XXX) und ME10-Makros. Zum konkreten Fall: Ich setze den Besitzer immer vorab als DEFAULT: (oli::sd-am-set-default-owner :geo :2dview Ansicht)Diese Zeile hat sich auch bewährt: (setf docu::*docu-hide-wrong-owner-warning* t)Ein COMMAND solte man aus Lisp immer mit (sd-call-cmds) verwenden. Die ganze restliche Syntax sollte dann heissen: (sd-call-cmds (am_create_text :docu-text Text Einfügepunkt)) (setf docu::*docu-hide-wrong-owner-warning* nil)------------------ DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tdoerner Mitglied Konstrukteur
Beiträge: 57 Registriert: 22.05.2003
|
erstellt am: 01. Jun. 2003 14:44 <-- editieren / zitieren --> Unities abgeben:
Tja, ermal danke für die Antwort, aaaber, ich komm einfach nicht weiter. Habe versuch das alles mal in ein makro zu packen, aber ohne den geringsten erfolg. Vorgehensweise zum Text erstellen in Annotation ist doch: a) Hauptmenue - Text - Text erstellen b) Ansicht auswählen c) Text eingeben d) positionieren könntest du mir vielleicht die vorgehensweise mit deinen commands aus annotation in einem kleinen makro zeigen, quasi mir auf den Weg helfen?? Gruß Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rene.weimar Mitglied CAD engineer
Beiträge: 24 Registriert: 27.11.2002
|
erstellt am: 05. Jun. 2003 14:18 <-- editieren / zitieren --> Unities abgeben: Nur für tdoerner
Hello, You use the wrong command. In Lisp you should use 'sd-am-create-text' See example (in-package 'common) (use-package li) (use-package :docu) (sd-defdialog 'createtext :dialog-title "Create text" :variables '( (owner :selection (*sd-anno-view-seltype*)) (Insertpoint :value-type :docupntcnp) (tekst :value-type :string) ) k-action '(progn (sd-am-create-text :text tekst osition insertpoint wner_type :2dview wner owner ) ) );sd-defdialog Hope this helps
Greetings René
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rene.weimar Mitglied CAD engineer
Beiträge: 24 Registriert: 27.11.2002
|
erstellt am: 05. Jun. 2003 14:21 <-- editieren / zitieren --> Unities abgeben: Nur für tdoerner
Sorry, now without smilies (in-package 'common) (use-package :oli) (use-package :docu)
(sd-defdialog 'createtext :dialog-title "Create text" :variables '( (owner :selection (*sd-anno-view-seltype*)) (Insertpoint :value-type :docupntcnp) (tekst :value-type :string) ) :ok-action '(progn (sd-am-create-text :text tekst :position insertpoint :owner_type :2dview :owner owner ) ) );sd-defdialog Greetings
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas 253 Mitglied
Beiträge: 157 Registriert: 01.03.2002
|
erstellt am: 06. Okt. 2004 16:15 <-- editieren / zitieren --> Unities abgeben: Nur für tdoerner
So da kram ich mal nen ganz alten Beitrag wieder raus, aber dieser Beitrag ist eigentlich die perfekte Einführung zu meinem Problem. Ich bin mit viel Suchen und basteln bis etwa zu dem Punkt gekommen, den Rene hier auch erklärt. Ich habe aber schon eine Variable vom typ docupntcnp, die ich für andere Zwecke brauche und die eigentlich auch schon die Ansicht identifiziert. Jetzt möchte ich nicht noch ein zweites Mal auf die Ansicht clicken, um sie auszuwählen, sondern würde für die Auswahl der Ansicht gerne die schon vorhandene Variable benutzen, die ja schon einen Punkt auf der Ansicht enthält. Ist das irgendwie möglich, und wenn ja, wie? Gruß
Andreas ------------------ 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: 06. Okt. 2004 21:25 <-- editieren / zitieren --> Unities abgeben: Nur für tdoerner
Zitat: Ich habe aber schon eine Variable vom typ docupntcnp, die ich für andere Zwecke brauche und die eigentlich auch schon die Ansicht identifiziert.
Integration Kit Docu, ganz oben im FunktionsVerzeichnis GET_SELECTION via sd-call-cmds aufrufen und dann hast Du eine 'Ansicht' in der Hand (== ein sel item). Das ist zumindest der richtige Weg. Oder einfacher: (glaube ich zumindest) Wenn Du die Ansicht ja schon hast, wie Du sagst, dann kannst Du auch den Namen reinstopfen in die funkion oli::sd-am-create-text. [Diese Nachricht wurde von der_Wolfgang am 06. Okt. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas 253 Mitglied
Beiträge: 157 Registriert: 01.03.2002
|
erstellt am: 07. Okt. 2004 09:43 <-- editieren / zitieren --> Unities abgeben: Nur für tdoerner
Hallo Wolfgang, Danke für die Antwort. Mit GET_SELECTION hab ich auch schon rumexperimentiert, leider ohne Erfolg. Das mit dem Name geht leider nicht, denn ich habe ja nur einen Punkt, der auch als Auswahl für die Ansicht taugen würde, aber eben noch nicht die Ansicht. Die will ich ja gerade aus diesem Punkt ohne weitere Benutzereingabe ermitteln. Da ich ja mit GET_SELECTION schon auf dem richtigen Weg war, probier ich es nochmal etwas weiter, allerdings bin ich noch nicht ganz sicher, wie das mit dem select aussehen muß. Für Tips wäre ich dankbar! Gruß
Andreas ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |