| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY wird von NVIDIA zum Händler des Jahres gewählt – zum dritten Mal in Folge, eine Pressemitteilung
|
Autor
|
Thema: wie gebe ich einem lispbefehl eine eingabe mit? (1742 mal gelesen)
|
michelangelo Mitglied
Beiträge: 158 Registriert: 08.04.2004 Win XP, ACAD 2002 ExpressTool vom ACAD 2000
|
erstellt am: 25. Mai. 2004 08:24 <-- editieren / zitieren --> Unities abgeben:
|
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 25. Mai. 2004 08:30 <-- editieren / zitieren --> Unities abgeben: Nur für michelangelo
Hallo Michelangelo, die mögliche Übergabe von Parametern wird in der aufgerufenen Lisp-Datei festgelegt. (defun msg (TEXT /) (alert TEXT) ) (msg "Texttext") Du wirst dir dann also die Lisp-Datei dementsprechend anpassen müssen, dass du diesen Parameter gleich mitgeben kannst. Allgemein: (defun FunktionsName (argument1 argument2 / lokaleVariable1 lokaleVariable2) ;... ) (FunktionsName WertfürArgument1 WertfürArgument1) Bei Fragen ... Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man's hat! Treffen Sie (defun auf dem Autodesk Anwendertreffen am 15.06. in Steyr/Österreich! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 25. Mai. 2004 08:46 <-- editieren / zitieren --> Unities abgeben: Nur für michelangelo
Holger meint das sicher so : (defun C:EXPLODE_ALL (/ INDEX AUSWAHLSATZ OBJFILTER ASLENGTH) (command "_.-layer" "_thaw" "*" "_unlock" "*" "_on" "*" "") (setq OBJFILTER (cons 0 "DIM*,INSERT,*POLYLINE,HATCH")) (if (not (setq AUSWAHLSATZ (ssget "_I" (list OBJFILTER (cons 410 (getvar "ctab"))) ) ;_ end of ssget ) ;_ end of setq ) ;_ wenn kein pickset vorh. (progn (setq AUSWAHLSATZ (ssget "_X" (list OBJFILTER (cons 410 (getvar "ctab"))) ) ;_ end of ssget ) ; nimm alle (if AUSWAHLSATZ (progn (setq INDEX -1 ASLENGTH (sslength AUSWAHLSATZ) ) ;_ end of if (repeat ASLENGTH ;_ end of sslength (command "_.explode" (ssname AUSWAHLSATZ (setq INDEX (1+ INDEX))) ) ;_ end of command ) ;_ end of repeat (princ (strcat "\n>> " (itoa ASLENGTH) " << Objekt(e) aufgelöst. " ) ;_ end of strcat ) ;_ end of princ ) ;_ end of progn (princ "\nKeine auflösbaren Objekte gefunden!") ) ;_ end of if ) ;_ end of progn ) ;_ end of if (princ) ) @MARC ... kein (vlax-invoke-methode Objekt 'Explode) ? ------------------ - Thomas - Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
marc.scherer Ehrenmitglied V.I.P. h.c. CAD-Administrator
Beiträge: 2494 Registriert: 02.11.2001 Windows 10 64bit AutoCAD Architecture 2018/2019 (deu/eng) AEC-Collection 2019 (Revit und Zeugs) Wenn sich's nicht vermeiden läßt: D-A-CH Erweiterung (mies implementierter Schrott)
|
erstellt am: 25. Mai. 2004 09:23 <-- editieren / zitieren --> Unities abgeben: Nur für michelangelo
Hi CADmium, @: "... kein (vlax-invoke-methode Objekt 'Explode)?" Kannte ich da noch nicht :-). 's is relativ alt, damals wußte ich NOCH weniger über Lisp als heute. @Michel Anderswo: Marc SCHERER heißt das, nicht Scherler... So viel Zeit muß sein :-) ------------------ Ciao, Marc
[Diese Nachricht wurde von marc.scherer am 25. Mai. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
michelangelo Mitglied
Beiträge: 158 Registriert: 08.04.2004 Win XP, ACAD 2002 ExpressTool vom ACAD 2000
|
erstellt am: 25. Mai. 2004 09:29 <-- editieren / zitieren --> Unities abgeben:
|
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 25. Mai. 2004 10:06 <-- editieren / zitieren --> Unities abgeben: Nur für michelangelo
Zitat: Original erstellt von CADmium: Holger meint das sicher so :(defun C:EXPLODE_ALL (/ INDEX AUSWAHLSATZ OBJFILTER ASLENGTH) .....
@CADmium Nein, das meine ich nicht so. Die Frage war nicht, ob jemand mal eine Lisp ändern könnte, sondern ob und wie man einer Lisp-Routine Parameter mit übergeben kann. Die Routine, die auch nicht beigefügt war, musste ja nur als Bsp herhalten. EDIT>>Scheinbar meinte michelangelo das doch wie du es verstanden hattest, denn die von ihm angesprochenen Us sind bei mir nicht angekommen, so dass ich davon ausgehe, dass ihm meine Antwort nicht geholfen hat.<<EDIT Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man's hat! Treffen Sie (defun auf dem Autodesk Anwendertreffen am 15.06. in Steyr/Österreich! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |