|
Lisp : 2 Plotfiles mit einem Lisp erstellen
wronzky am 05.09.2008 um 15:11 Uhr (0)
Hallo,zumindest die 2. Frage geht schnell: ja, geht. statt(command "linie" (0 0 0) (1 1 1) "")kannst Du auch schreiben(command "linie")(command (0 0 0))(command (1 1 1))(command "")oder(command "linie" (0 0 0) (1 1 1) "")Das mit der Auswahl der ctb ist glaube ich doch ein bischen zu kompliziert...Grüsse, Henning------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
Obi-Wahn am 05.09.2008 um 15:55 Uhr (0)
Danke für die Antwort.Von meinen Sonstigen "programmierstücken" bin ich es gewohnt, dass ein komma, punkt, o.ä. in einer fortlaufenden codezeile steht. Anyway. Wieder was dazugelernt.Zu meiner ersten Frage:Wieso?Ich hab etwas gelesen, und es sollte doch mit getfiled funktionieren, oder gibts da was unüberwindliches, was ich nicht kenn?DankeO-W------------------Garten ist eine Kunstnatur
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
wronzky am 05.09.2008 um 16:18 Uhr (0)
Wenn Du weisst, WO die Plotstiltabellen liegen (Optionen - Dateien ...), und der Benutzer nicht trotzdem irgendeine andere zufällig auswählt, dann hast Du recht. Dann gehts natürlich mit (vl-filename-directory (getfiled "CTB auswählen" (getvar "acadprefix") "ctb" 0))Ich denke halt immer zu kompliziert, damit das Prog auch auf anderen Rechnern läuft, war ich in Gedanken bei:1) Voreinstellungen auslesen - Pfad zu ctb ermitteln2) Namen der ctb auslesen3) Dialogfeld zur Auswahl programieren Grüsse, Henning---- ...
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
Obi-Wahn am 09.09.2008 um 13:17 Uhr (0)
Noch eine kurze Frage:Ich vergleiche die Variabe ctab, und wenn die auf Model steht, dann soll die funktion abgebrochen werden.Wenn ich aber das so schreibe:Code:(setq layout (getvar "ctab")) (if (= layout "Model") (print "FEHLER: Das Drucken mit DBLPRNT ist nur im Layout möglich") (princ) )dann arbeitet die Funktion aber weiter, was zur folge hat, dass es dann später fehlermeldungen regnet.Wie kann ich das quasi mittendrin beenden?Danke------------------Garten ist eine Kunstnatur
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
Obi-Wahn am 05.09.2008 um 16:55 Uhr (0)
Hi und Danke für den code.Das problem was jetzt dabei auftaucht ist dieses, dass beim dialog standardmäßig der Desktop gewählt wird.ICH weis zwar, dass der ordner in %Allusersprofile%AnwendungsdatenAutodeskADT 2007deuPlot Styles ist (standardmäßig), aber wenn ich das Lisp weitergebe (was mit ziemlicher sicherheit passieren wird) wissen es die User nicht (die sind -ohne lästern zu wollen- schon froh, wenn der computer startet).ich hab auch schon mit ein paar sachen herumgespielt, und sogar an ein splitten v ...
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
wronzky am 05.09.2008 um 21:24 Uhr (0)
Hallo Andreas, und da wären wir schon bei Punkt 1 meines letzten Gedankenganges...Aber ich will mal nicht so sein:Code:(setq ctbPath (vla-get-printerstylesheetpath (vla-get-files (vla-get-preferences (vlax-get-acad-object)))))Grüsse, Henning[EDIT] Nicht vergessen ein (vl-load-com) am Anfang des Codes [/EDIT]------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de[Diese Nachricht wurde von wronzky am 05. Sep. 2008 editiert.]
|
In das Form Lisp wechseln |
|
Lisp : Wblock
steven-66 am 08.09.2008 um 08:39 Uhr (0)
Hallo,ich bin neu hier und möchte erst mal ein großes Lob für dieses Forum aussprechen.Ich beschäftige mich seit kurzem mit Lisp und habe hier schon einige interssanteTips gefunden.Ich hab jetzt folgenedes Problem:Ich möchte die aus einem Lisp Programm die Funktion WBlock aufrufen. Die Elemente dieich dann ausgewählt habe möchte ich nach Text durchsuchen und diesen Text dann vor demSpeichern des Wblocks mit der Express-Funktion "Txtexp" aufsprengen.Ich benötige den gesprengten Text zur Weiterverarbeitung a ...
|
In das Form Lisp wechseln |
|
Lisp : Dyn. Blöcke - welches Dictionary ist zuständig?
romi1 am 05.09.2008 um 13:26 Uhr (0)
Hi!Das mit dem ActiveX-... hab ich mal in der Hilfe angesehen, denke aber das mir das doch noch zu "steil" ist! Kann ich die Verbindung nicht auch übers normale Lisp, sprich über Dictionarys herausfinden - meiner Meinung nach müsste das möglich sein, aber wie?PS: zur Randfrage: Also durch bin ich scheinbar auch mit den Grundlagen nicht - wie Du siehst, bin ich soeben dabei, mir bei den dyn. Blöcken bzw. Dictionarys die Zähne auszubeissen ....Gruß,Roman
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
CADmium am 09.09.2008 um 13:25 Uhr (0)
(exit) oder (quit) ?aber du kannst deine Funktion auch in den ELSE-Zweig des If packen------------------ - Thomas -"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
Obi-Wahn am 09.09.2008 um 16:15 Uhr (0)
*seufz*Irgendwie blick ich durch LISP anscheinend doch nicht durch...Ich hab mehrere Funktionen in einem Lispfile, das sich nicht laden lies.Dann hab ich die Funktionen separat abgespeichert, und dabei ist folgendes herausgekommen:Funktion...........Fehler-------------------------------BLATTRAHMEN........SyntaxfehlerDBLPRNT............SyntaxfehlerFISCHGRAT..........Fehlerhafter Argumenttyp: stringpSCHIFFBODEN........Fehlerhafter Argumenttyp: stringpFLIESEN_GEREIHT....Fehlerhafter Argumenttyp: stringpFLIESE ...
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
Hunchback am 09.09.2008 um 15:38 Uhr (0)
(if (Bedienung) (Tu dieses) [wenn Bedienung erfüllt] (Tu jenes) [wenn Bedienung nicht erfüllt],optional)oder(if (Bedienung) (progn [mit progn kannst (Tu dieses) Du mehrere Ausdrücke (Tu dieses auch) zusammenfassen. (und das tu auch noch) ] ) (tu jenes) [wenn Bedienung nicht erfüllt])GrüßeMartin------------------You seem (in my (humble) opinion (which doesnt mean much)) to be (or possibly could be) more of a Lisp programmer (but I could be (and probably am) wrong).
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
Obi-Wahn am 09.09.2008 um 17:30 Uhr (0)
Aha. Wenn ich das als Button oder Menüeintrag deffiniere, kann ich dass dann alsCode:^C^C(BLATTRAHMEN "A0") deffinieren? Oder muss ich da wieder eine separates command anlegen?------------------Garten ist eine Kunstnatur
|
In das Form Lisp wechseln |
|
Lisp : 2 Plotfiles mit einem Lisp erstellen
Geos am 09.09.2008 um 17:23 Uhr (0)
Habs jetzt nicht ausprobiert, aber:entweder(defun C:BLATTRAHMEN( / FMT INSP OFANG_BAK)...)oder(defun BLATTRAHMEN ( FMT / INSP OFANG_BAK)...)Mit (defun c:xyz ... erzeugst Du ein "Command", willst Du FMT übergeben, musst eine "Funktion" (kein "c:") verwenden.Die wird dann aber so (blattrahmen fmt) aufgerufen. Diesen Aufruf kannst allerdings wieder in ein "Command" einbauen.------------------Schöne GrüßeErnst www.geopaint.at
|
In das Form Lisp wechseln |