|
PTC Creo Elements/Programmierung : Rahmenformat auslesen
Walter Geppert am 17.11.2015 um 09:34 Uhr (1)
Code:(dolist (element liste)......)Arbeitet in einer Schleife alle Elemente einer Liste nacheinander ab.Im konkreten Fall wird der Variablen sh jeweils das sel-item einen Blattes (Sheet) zugeordnet und die dann weiterverarbeitet------------------meine LISP-Makros sind auf osd.cad.de DisclaimerGrüße aus WienWalter
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : Lisp vs. Makro
Greskamp am 18.11.2015 um 12:36 Uhr (5)
Hallo,ich würde mich jetzt mal als Programmieranfänger bezeichnen. Wobei mir die Makroprogrammierung in Drafting etwas vertrauter ist. Hätte mal ein paar grundlegenden Fragen.Kann man jeden Befehl im Drafting mit "(sd-execute-annotator-command :cmd...." auch im Annotation verwenden?Wann genau brauche ich den das "(sd-execute-annotator-command :cmd...."?Wenn ich im Drafting die beiden äusseren Punkte eines Rahmens auslesen möchte, geht das mitedit_part "Rahmen"inq_env 7display (inq 101)display (inq 102)Wie ...
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : Lisp vs. Makro
Walter Geppert am 18.11.2015 um 14:07 Uhr (4)
Noch ein Nachtrag: Ich verwende bei solchen Operationen zum blattweisen Drucken oder Exportieren von Zeichnungen lieber das Blatt und den Blattnamen, die sind in jeder Zeichnung eindeutig und es gibt keine unliebsamen Überraschungen. Es darf nur nix aus den Rahmen rausstehenDen Blattnamen erhält man mit:Code:(setf shname (sd-am-sheet-struct-name shstruct))------------------meine LISP-Makros sind auf osd.cad.de DisclaimerGrüße aus WienWalter
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : Lisp vs. Makro
Greskamp am 18.11.2015 um 14:36 Uhr (1)
Hallo Walter,wieso bin ich nicht überrascht wieder von dir zu lesen... Wenn ich das lese, glaube ich lasse ich das lieber mit dem programmieren.. Wie soll man denn da jemals durchsteigen.Jetzt hast du das ja mit Makro und Lisp gemacht. Rein auf Lisp-Basis kommt man da nicht dran? Weil du schreibst das ME10-Code sehr gefährlich ist.------------------Gruß Peter
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : Lisp vs. Makro
PeterO am 18.11.2015 um 16:38 Uhr (1)
Hallo Peter,so kann man die Eckpunkte in Annotation abfragen:(display (oli::sd-am-sheet-struct-corners (oli::sd-am-inq-sheet (oli::sd-am-inq-curr-sheet))))Auszug aus dem IKITSD-AM-SHEET-STRUCT [structure](sd-am-sheet-struct-p sd-am-sheet-struct)(sd-am-sheet-struct-name sd-am-sheet-struct)(sd-am-sheet-struct-frame sd-am-sheet-struct)(sd-am-sheet-struct-views sd-am-sheet-struct)(sd-am-sheet-struct-flats sd-am-sheet-struct)(sd-am-sheet-struct-sketches sd-am-sheet-struct)(sd-am-sheet-struct-scale sd-a ...
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : 25.0 in 25 wandeln
Walter Geppert am 20.11.2015 um 11:39 Uhr (3)
Zitat:Original erstellt von Greskamp:mit: (display (round 1.2345678)) wird ja nur auf die 1 gerundet. Wie bekomme ich 1.23 angezeigt?Code:(display (/ (round (* 1.2345678 100)) 100)) ------------------meine LISP-Makros sind auf osd.cad.de DisclaimerGrüße aus WienWalter
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : 25.0 in 25 wandeln
Walter Geppert am 20.11.2015 um 12:04 Uhr (3)
LISP erkennt die Division von zwei Ganzzahlen und formatiert das Ergebnis als BruchzahlDas lässt sich ganz einfach überlisten:Code:(display (/ (round (* 1.2345678 100)) 100.0)) ------------------meine LISP-Makros sind auf osd.cad.de DisclaimerGrüße aus WienWalter
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : Lisp vs. Makro
Walter Geppert am 03.12.2015 um 08:20 Uhr (4)
Zitat:Original erstellt von Greskamp:Ist es so das nicht alle Befehle dann verwendet werden können.Nein, alle Befehle, die eine Interaktion mit dem User benötigen, können nicht verwendet werden.Du brauchst einen Dialog im Annotation, der die Werte abfragt und dann als Parameter ans ME10-Makro übergibt------------------meine LISP-Makros sind auf osd.cad.de DisclaimerGrüße aus WienWalter
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : purge_file im Creo
Greskamp am 27.11.2015 um 12:23 Uhr (1)
Hallo,gibt es einen Befehl im Creo (Lisp) Dateien zulöschen, also wie das purge_file im Drafting.------------------Gruß Peter
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : purge_file im Creo
Walter Geppert am 27.11.2015 um 14:01 Uhr (3)
(delete-file path)------------------meine LISP-Makros sind auf osd.cad.de DisclaimerGrüße aus WienWalter
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : purge_file im Creo
Walter Geppert am 27.11.2015 um 14:41 Uhr (3)
Die Hilfe im CEDM beschränkt sich weitestgehend auf die speziell für dieses Programm definierten Funktionen. Für den Rest empfielt sich ein Buch über ANSI Common LISP, z.B. das hier------------------meine LISP-Makros sind auf osd.cad.de DisclaimerGrüße aus WienWalter
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : purge_file im Creo
Walter Geppert am 30.11.2015 um 09:11 Uhr (3)
Zitat:Original erstellt von Greskamp:Etwas kryptisch, aber das muss wohl so sein.So issesZitat:Original erstellt von Greskamp:Wenn ich dem Beispiel in dem Link folge, dann reicht es aus wenn man:(display (get-decoded-time))eingibt, aber da kommen bei mir immer nur die sekunden raus.(get-decoded-time) gibt 9 Werte zurück, (display) und die meisten anderen Funktionen verarbeitet aber nur den ersten.Um alle oder mehrere weiterverarbeiten zu können muss man anders vorgehen z.B.:Code:(multiple-value-bind (sec m ...
|
In das Form PTC Creo Elements/Programmierung wechseln |
|
PTC Creo Elements/Programmierung : purge_file im Creo
Walter Geppert am 30.11.2015 um 09:27 Uhr (3)
So interaktiv über die Kommandozeile geht mehrzeiliger Code nicht, weil die vorherige Eingabe schon wieder "vergessen" ist.Die deutsche Version von Paul Grahams Buch mit ISBN 3827295432 gibts scheints nur mehr antiquarisch: Amazon------------------meine LISP-Makros sind auf osd.cad.de DisclaimerGrüße aus WienWalter
|
In das Form PTC Creo Elements/Programmierung wechseln |