Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Programmierung
  Lisp-Variable im Drafting-Befehl verwenden

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:   Lisp-Variable im Drafting-Befehl verwenden (642 mal gelesen)
achim96
Mitglied
Konstrukteur


Sehen Sie sich das Profil von achim96 an!   Senden Sie eine Private Message an achim96  Schreiben Sie einen Gästebucheintrag für achim96

Beiträge: 65
Registriert: 08.07.2013

Creo Elements / Direct Modeling, V18.1
Model Manager

erstellt am: 19. Okt. 2018 14:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

ich suche nach der Möglichkeit, über Lisp eine Eingabe zu machen, bei der ein Dateiname z.B. "1234-12345789-E0.jpg" eingegeben wird.

:variables
   '(
     ( ausgabe
         :value-type :string
:initial-value "1234-12345789-E0.jpg"
         :title "Dateiname"
           rompt-text "Zeichnungsname"
      )
)


anschließend soll ein Drafting-Befehl im Annotation

(oli:sd-execute-annotator-command :cmd
"BITMAP_TO_FILE JPEG PORT CURRENT RESOLUTION 3800,-1  del_old '(format nil "~a" (ausgabe))"

das ganze als Bild speichern. Was mache ich falsch? kann man eine Variable so nicht einbauen?

------------------
freundliche Grüße
Achim

[Diese Nachricht wurde von achim96 am 19. Okt. 2018 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der_Wolfgang
Ehrenmitglied
Tastenhauer


Sehen Sie sich das Profil von der_Wolfgang an!   Senden Sie eine Private Message an der_Wolfgang  Schreiben Sie einen Gästebucheintrag für der_Wolfgang

Beiträge: 1644
Registriert: 3.20.

● PEnix@home
● W10 Pro Build16299
● Drafting V17~V20.1.1
● Modeling V17~V20.2.0
● @Scirotec201804

erstellt am: 20. Okt. 2018 11:53    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für achim96 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von achim96:
ich suche nach der Möglichkeit, über Lisp eine Eingabe zu machen, bei der ein Dateiname z.B. "1234-12345789-E0.jpg" eingegeben wird.
....
anschließend soll ein Drafting-Befehl im Annotation

(oli:sd-execute-annotator-command :cmd
"BITMAP_TO_FILE JPEG PORT CURRENT RESOLUTION 3800,-1  del_old '(format nil "~a" (ausgabe))"


so wie du es gemacht hast muesste Annotator Plötzlich LISP kennen/können. denn alles was hinter dem :cmd kommt schickst du rüber..

Mach das noch mal so ..  aber ergänze um zwei zeilen

Code:
(sd-am-errors :clear)
(sd-execute-annotator-command :cmd  "... wie gehabt .... ")
(display (sd-am-errors :get_all))
dann siehst du worüber der Annotator stolpert.

Mit dem format nil bastelst du dir den GANZEN String zusammen... und den schickst du dann rüber:

Code:
(sd-execute-annotator-command :cmd
  (format nil
    "BITMAP_TO_FILE PNG PORT CURRENT RESOLUTION 3800,-1  del_old '~a'" ausgabe))

Wenn Du dein LISP programm ordentlich schreibst, dann hast du oben

Code:
;;; was macht das programm
(in-package :my-test)
(use-package :Oli)
drin und brachst nicht dauernd (oli: ... ) zu schreiben.

Darüber hinaus würde ich dir dringend PNG empfehlen, statt JPEG. Das sieht sauberer aus. Aber kannst du ja selber vergleichen.

------------------
Firefox ESRJava Forum Stuttgart JUGS ● OSD Hilfeseite (de) / help page (en)NotePad++BuFDi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der_Wolfgang
Ehrenmitglied
Tastenhauer


Sehen Sie sich das Profil von der_Wolfgang an!   Senden Sie eine Private Message an der_Wolfgang  Schreiben Sie einen Gästebucheintrag für der_Wolfgang

Beiträge: 1644
Registriert: 3.20.

● PEnix@home
● W10 Pro Build16299
● Drafting V17~V20.1.1
● Modeling V17~V20.2.0
● @Scirotec201804

erstellt am: 20. Okt. 2018 11:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für achim96 10 Unities + Antwort hilfreich

nachschieb:
Code:
:value-type :filename
existiert. 

------------------
Firefox ESRJava Forum Stuttgart JUGS ● OSD Hilfeseite (de) / help page (en)NotePad++BuFDi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

achim96
Mitglied
Konstrukteur


Sehen Sie sich das Profil von achim96 an!   Senden Sie eine Private Message an achim96  Schreiben Sie einen Gästebucheintrag für achim96

Beiträge: 65
Registriert: 08.07.2013

Creo Elements / Direct Modeling, V18.1
Model Manager

erstellt am: 22. Okt. 2018 10:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


2018-10-2210_44_35-Fehler.png

 
Danke schon mal Wolfgang für den Input,

an der eigentlichen Fehlermeldung hat sich nichts geändert. Die Variable ausgabe wird nicht erkannt. Die Fehlermeldung (wie bisher) im Anhang.

CODE:
;;; Bild als screenshot im Annotion im Laufwerk speichern

(in-package :my-test)
(use-package :Oli)

(sd-defdialog 'Bild
  :dialog-title "Bild erzeugen"
  :toolbox-button T

  :variables
  '(
    ( ausgabe
        :value-type :filename
:initial-value "'1234-12345789-E0.png"
        :title "Zeichnungsname"
          rompt-text "Zeichnungsname"
      )
)

  (sd-am-errors :clear)
  (sd-execute-annotator-command :cmd
  (format nil
    "BITMAP_TO_FILE PNG PORT CURRENT RESOLUTION 3800,-1  del_old '~a'" ausgabe))
(display (sd-am-errors :get_all))
)

------------------
freundliche Grüße
Achim

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

achim96
Mitglied
Konstrukteur


Sehen Sie sich das Profil von achim96 an!   Senden Sie eine Private Message an achim96  Schreiben Sie einen Gästebucheintrag für achim96

Beiträge: 65
Registriert: 08.07.2013

Creo Elements / Direct Modeling, V18.1
Model Manager

erstellt am: 22. Okt. 2018 10:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


2018-10-2210_44_35-Fehler.png

 
Sorry doppel-Posting


[Diese Nachricht wurde von achim96 am 22. Okt. 2018 editiert.]

[Diese Nachricht wurde von achim96 am 22. Okt. 2018 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der_Wolfgang
Ehrenmitglied
Tastenhauer


Sehen Sie sich das Profil von der_Wolfgang an!   Senden Sie eine Private Message an der_Wolfgang  Schreiben Sie einen Gästebucheintrag für der_Wolfgang

Beiträge: 1644
Registriert: 3.20.

● PEnix@home
● W10 Pro Build16299
● Drafting V17~V20.1.1
● Modeling V17~V20.2.0
● @Scirotec201804

erstellt am: 23. Okt. 2018 09:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für achim96 10 Unities + Antwort hilfreich

Dein execute-annotator aufruf steht an einer Stelle, die dem dialog generator unbekannt ist. Sprich: das wird beim laden des LISP files schon ausgführt. Da gibt es diese Variable nun mal nicht.

WANN soll das den ausgeführt werden???  Das hast du nicht angegeben. Möglichkeiten gibt es mehrere.. da fehlt noch ein Keyword oder so.  .. Jetzt lass ich dich selber grybeln. 

------------------
Firefox ESRJava Forum Stuttgart JUGS ● OSD Hilfeseite (de) / help page (en)NotePad++BuFDi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

achim96
Mitglied
Konstrukteur


Sehen Sie sich das Profil von achim96 an!   Senden Sie eine Private Message an achim96  Schreiben Sie einen Gästebucheintrag für achim96

Beiträge: 65
Registriert: 08.07.2013

Creo Elements / Direct Modeling, V18.1
Model Manager

erstellt am: 24. Okt. 2018 13:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

jetzt wird zwar die Variable im Dialog abgefragt, aber kein Bild geschrieben. Woran liegt das? Kann jemand helfen?

CODE:
;;; Bild als screenshot im Annotion im Laufwerk speichern

(in-package :my-test)
(use-package :Oli)

(sd-defdialog 'DRU
  :dialog-title "Druck"
  :toolbox-button T

  :variables
  '(
    ( ausgabe
        :value-type :filename
:initialdirectory "C:/tmp"
:initial-value nil
:filetype :jpg
          :title "Dateiname fuer Bild"
          rompt-text "Zeichnungsname eingeben"
:after-input (progn (sd-execute-annotator-command :cmd
                              (format nil "BITMAP_TO_FILE JPEG PORT CURRENT RESOLUTION 3800,-1 del_old ~A" ausgabe))
                              )

    )
)
)

------------------
freundliche Grüße
Achim

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

MiBr
Mitglied
Konstrukteur


Sehen Sie sich das Profil von MiBr an!   Senden Sie eine Private Message an MiBr  Schreiben Sie einen Gästebucheintrag für MiBr

Beiträge: 374
Registriert: 30.06.2015

HP Z400 Workstation 24GB
Modeling 19.0 M020(x64)
Drafting 19.0 (64x) klas. UI
Modell Manager 19.0 M010
Ansys Workbeanch 18.1 NLS

erstellt am: 25. Okt. 2018 06:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für achim96 10 Unities + Antwort hilfreich

Hallo Achim,

probier es mal so aus:

Code:
(sd-execute-annotator-command :cmd
(format nil "BITMAP_TO_FILE PNG PORT CURRENT RESOLUTION 3800,-1 del_old '~a'" (first ausgabe)))

Gruß Michael

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

achim96
Mitglied
Konstrukteur


Sehen Sie sich das Profil von achim96 an!   Senden Sie eine Private Message an achim96  Schreiben Sie einen Gästebucheintrag für achim96

Beiträge: 65
Registriert: 08.07.2013

Creo Elements / Direct Modeling, V18.1
Model Manager

erstellt am: 25. Okt. 2018 10:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Anno_Hintergrund_weiss.lsp


Anno_Hintergrund_schwarz.lsp


Drucken.lsp

 
Danke Michael, Dank auch an Wolfgang

jetzt funktioniert es!

Hintergrund dieser Fragen sind Teilausschnitte von Zeichnungen, die als Vorschaubilder für unser ERP-System gebraucht werden. Es sollen ausdrücklich nur kleine Bereiche der Zeichnung in schwarz-weiß dargestellt werden, die gut zu drucken sind. Momentan behelfe ich mir damit, dass ich eine Druckvorschau simuliere (Anno_Hintergrund_weiss.lsp) , den Ausschnitt auf dem Bildschirm mir zurecht zoome, das Bild mache und anschließend den Bildschirmhintergrund wieder schwarz mache (Anno_Hintergrund_schwarz.lsp). Anbei die 3 Programm - Schnipsel, die per drag and drop ins CAD schon mal so laufen.

Jetzt sind meine lieben Kollegen so bequem und hätten das gerne in einem Befehl. Wie kann ich die Hintergründe einbauen? Wie gesagt, mit drag and drop funktionieren die Hintergründe (mal in weiss, mal in schwarz) schon mal.

------------------
freundliche Grüße
Achim

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

MiBr
Mitglied
Konstrukteur


Sehen Sie sich das Profil von MiBr an!   Senden Sie eine Private Message an MiBr  Schreiben Sie einen Gästebucheintrag für MiBr

Beiträge: 374
Registriert: 30.06.2015

HP Z400 Workstation 24GB
Modeling 19.0 M020(x64)
Drafting 19.0 (64x) klas. UI
Modell Manager 19.0 M010
Ansys Workbeanch 18.1 NLS

erstellt am: 25. Okt. 2018 11:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für achim96 10 Unities + Antwort hilfreich

Hallo Achim,

ich würde mir nee Local-Funktion mit nem Push-Button basteln, anstelle des After-Inputs.
Etwa so:

;zusetzlich Variable

Code:
(push_scr
:title "Screenshot erstellen"
:push-action (do_it)
:toggle-type :wide-toggle
)

Code:
:local-functions '(
(do_it ()
(sd-execute-annotator-command :cmd weiß
(sd-execute-annotator-command :cmd plotten
(sd-execute-annotator-command :cmd schwarz
) ;end do-it
) ;end local-funktitons
) ;end sd-defdialog

Gruß Michael

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

achim96
Mitglied
Konstrukteur


Sehen Sie sich das Profil von achim96 an!   Senden Sie eine Private Message an achim96  Schreiben Sie einen Gästebucheintrag für achim96

Beiträge: 65
Registriert: 08.07.2013

Creo Elements / Direct Modeling, V18.1
Model Manager

erstellt am: 25. Okt. 2018 13:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

gebastelt und läuft. 
Vieeelen Dank.

Units waren schon vorher unterwegs.

------------------
freundliche Grüße
Achim

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der_Wolfgang
Ehrenmitglied
Tastenhauer


Sehen Sie sich das Profil von der_Wolfgang an!   Senden Sie eine Private Message an der_Wolfgang  Schreiben Sie einen Gästebucheintrag für der_Wolfgang

Beiträge: 1644
Registriert: 3.20.

● PEnix@home
● W10 Pro Build16299
● Drafting V17~V20.1.1
● Modeling V17~V20.2.0
● @Scirotec201804

erstellt am: 25. Okt. 2018 18:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für achim96 10 Unities + Antwort hilfreich

zum Lispeln...  man hätte auch den Settings browser nutzen können via IKIT funktionen. Folgender weg:

a) settings einfrieren  (sd-freeze .. )
b) settings umstellen (background weiß etc)...  (sd-set-setting.. .. )
c) screenshot machen
d) settings auftauen (sd-unfreeze .. )

nach d) wären die settings dann wieder so wie vor a)


..  also mit leicht grünen Hintergrund falls es einen KERMIT als username gäbe.. 

------------------
Firefox ESRJava Forum Stuttgart JUGS ● OSD Hilfeseite (de) / help page (en)NotePad++BuFDi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der_Wolfgang
Ehrenmitglied
Tastenhauer


Sehen Sie sich das Profil von der_Wolfgang an!   Senden Sie eine Private Message an der_Wolfgang  Schreiben Sie einen Gästebucheintrag für der_Wolfgang

Beiträge: 1644
Registriert: 3.20.

● PEnix@home
● W10 Pro Build16299
● Drafting V17~V20.1.1
● Modeling V17~V20.2.0
● @Scirotec201804

erstellt am: 25. Okt. 2018 18:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für achim96 10 Unities + Antwort hilfreich

Noch ein bischen Hilfe zur Selbsthilfe:
Zitat:
Original erstellt von achim96:
Code:

     ( ausgabe
         :value-type :filename
....
               (format nil "BITMAP_TO_FILE JPEG PORT CURRENT RESOLUTION 3800,-1 del_old ~A" ausgabe))


zum Testen hättest du mal einfach
Code:
(display(format nil "BITMAP_TO_FILE JPEG PORT CURRENT RESOLUTION 3800,-1 del_old ~A" ausgabe))
(pprint (format nil "BITMAP_TO_FILE JPEG PORT CURRENT RESOLUTION 3800,-1 del_old ~A" ausgabe))
einfügen können um dir mal selber ANZUSEHEN was du da dem Annototor schickst.

Hilfreich wäre auch

Code:
(oli:sd-show-console-window)
(trace oli:sd-execute-annotator-command)
zum Beobachten was passiert. Und dis Ausgabe von (oli:sd-am-errors) ...  (welche ich eigentlich in Deinen Anworten erwartet hätte).  Beim nächsten "gibt nen fehler , tut nicht" bin ich weniger nachsichtig!   

Probier diese Mini-Debug-Hilfsmittelchen JETZT aus, wo du das eigentlich Problem verstehst / nachstellen kannst und du nur die Methode des was-läuft-falsch-erkennens verbessern willst.

Und, Achim, es gibt im UBB (das format wie wir hier schreiben die Formartierung [ code ] - rate mal wofür?     
Kannst du auch links vom Schreibfenster anklicken!

------------------
Firefox ESRJava Forum Stuttgart JUGS ● OSD Hilfeseite (de) / help page (en)NotePad++BuFDi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

achim96
Mitglied
Konstrukteur


Sehen Sie sich das Profil von achim96 an!   Senden Sie eine Private Message an achim96  Schreiben Sie einen Gästebucheintrag für achim96

Beiträge: 65
Registriert: 08.07.2013

Creo Elements / Direct Modeling, V18.1
Model Manager

erstellt am: 27. Okt. 2018 10:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

vielen Dank, ich habe es JETZT ausprobiert. Es hilft wirklich weiter.

------------------
freundliche Grüße
Achim

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2019 CAD.de | Impressum | Datenschutz