|
AutoLisp : Variable in Variable?
CADmium am 23.03.2004 um 10:28 Uhr (0)
vl ... ist Visual-Lisp .. mach mal in den im ACAD integrierten Lisp-Editor auf .. und dann die Hilfe- Befehlsreferenz .... ------------------ - Thomas -
|
In das Form AutoLisp wechseln |
|
AutoLisp : Variable in Variable?
Brischke am 23.03.2004 um 10:32 Uhr (0)
Hallo Holger, es macht mich etwas ärgerlich, wenn ein Thread so aufgeblasen wird, weil nicht von Anfang an gesagt wird, was der Fragende eigentlich möchte. Bei nächsten mal: Bitte die Aufgabe konkret beschreiben, und dann auch die Dinge, die nicht funktionieren mit Fehlermeldung posten. Eine Koordinate ist ja keine Zeichenkette. Deshalb kannst du diese auch nicht mit der Funktion (strcat..) nutzen. Du musst nun also entweder die Koordinate komplett (also die Liste), oder die einzelnen Koordinatenwerte in e ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Attribute umbenennen
Brischke am 23.03.2004 um 10:42 Uhr (0)
ich darf auch antworten? Du willst also in vielen Vorgabezeichnungen die Attributdefinition mit dem Namen ARTICLENUMBER die Vorgabewerte, wenn sie einem Suchmuster TISCH_11-222- ## entsprechen, mit der Zeichenkette _N_K erweitern? In bereits eingefügten Blöcken soll sich nichts ändern? Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man s hat!
|
In das Form AutoLisp wechseln |
|
AutoLisp : Attribute umbenennen
Brischke am 23.03.2004 um 11:05 Uhr (0)
die Frage ist, welche Abhängigkeit besteht, um Programmtechnisch die Entscheidung des Anhängsels treffen zu können. Wenn das jedoch notwendig ist, dann sollte dir folgende Zeilen helfen Code: (defun chg:attdef_vg (/ aws) (setq aws (ssget _X ((0 . ATTDEF )(2 . ARTICLENUMBER )(1 . TISCH_##-###-## )))) (if aws (mapcar (lambda (AD) (entmod (subst (cons 1 (strcat (cdr(assoc 1 AD)) _N_K )) (assoc 1 AD) ...
|
In das Form AutoLisp wechseln |
|
Lisp : Daten speichern
Brischke am 23.03.2004 um 11:47 Uhr (0)
Hallo Michael,bevor du XDatas anhängen kannst musst du mit (regapp..) die Applikation registrieren.Grüße Holger------------------Holger Brischke(defun - Lisp over night!AutoLISP-Programmierung für AutoCADDa weiß man, wann mans hat!
|
In das Form Lisp wechseln |
|
Lisp : Daten speichern
Brischke am 23.03.2004 um 12:34 Uhr (0)
Hallo Michael,die XDatas werden einer bestimmten, bekannten Applikation zugeordnet - (list -3 (cons AppName xd))Damit das funktioniert, muss man Acad mitteilen, dass es die mit Applikation eines bestimmten Namens auch gibt. Das macht man mit (regapp "MEINSUPERAPPLOKATIONSNAME")Die LISP-Hilfe schreibt dazu: Zitat:Registers an application name with the current AutoCAD drawing in preparation for using extended object data(regapp application) Argumentsapplication A string naming the application. The name must ...
|
In das Form Lisp wechseln |
|
Lisp : Daten speichern
Brischke am 23.03.2004 um 13:42 Uhr (0)
in jeder Zeichnung.Du kannst ja vorher Checken, ob es schon einen entsprechenden Eintrag in der Tabelle der Applikationseinträge gibt.(if (tblobjname "APPID" "DEINSUPIAPPNAME"))(alert "Ja, gibts schon")(alert "Nö, gibts noch nicht"))Grüße Holger------------------Holger Brischke(defun - Lisp over night!AutoLISP-Programmierung für AutoCADDa weiß man, wann mans hat!
|
In das Form Lisp wechseln |
|
Lisp : Daten speichern
Brischke am 23.03.2004 um 16:38 Uhr (0)
zum Objektnamen gehört alles nach dem (-1 . Wenn du ein Objekt wählen möchtest dann mit (car (entsel)). willst du viele Objekte dann mit (ssget), dann hast du allerdings erst einen Auswahlsatz. Um daraus eine Elementliste zu machen, dann kopiere dir aus dem Beitrag http://ww3.cad.de/foren/ubb/Forum145/HTML/000037.shtml die Funktion (defun bau_elemli ..)heraus. Mit den Elementnamen kannst du ja dann wieder etwas anfangen.Bist aber ganz schön mutig, ohne so recht zu wissen, was du machst, das einfach zu mac ...
|
In das Form Lisp wechseln |
|
AutoLisp : sonnenstandsberechnung
mapcar am 23.03.2004 um 22:30 Uhr (0)
Hi Fuchsi, direkt verwenden kann man das wohl nicht, erscheint mir eher als eine Methode innerhalb des Render-Moduls, die nicht nach außen freigegeben ist. In Lisp müsste man sich also um eine Funktion bemühen, die bei einem Input von Uhrzeit, Längengrad, Breitengrad den Sonnenstand ausspuckt. Irgendwo hatten wir doch auch mal das Thema Ostern (komisch, dass an Karfreitag immer Fast-Vollmond ist)... Gruß, Axel ------------------ Meine AutoLisp-Seiten Meine private Homepage Mein Angriff auf de ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Namen und Ablageort der Zeichnung
Brischke am 24.03.2004 um 09:40 Uhr (0)
Hallo Andreas, beides kannst du aus Systemvariablen ermitteln (getvar DWGNAME )- Dateiname (getvar DWGPREFIX )- Verzeichnis Das ganze dann den Variablen zuweisen. (setq name (getvar DWGNAME );- Dateiname verzeichnis (getvar DWGPREFIX );- Verzeichnis ) Verbinden dann mit (strcat name verzeichnis) Bei Fragen ... Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man s hat!
|
In das Form AutoLisp wechseln |
|
AutoLisp : AutoLisp in AutoCad-LT
WolfgangE am 24.03.2004 um 09:55 Uhr (0)
Hallo Lisp-Gemeinde, mal ne Grundsatzfrage (bin übrigens Anfänger): wenn ich ein paar AutoLisp-Routinen programmiere und über den VLISP-Editor in eine FAS kompiliere, kann ich dann davon ausgehen, dass das Ding auch auf AutoCad-LT läuft? Ist wirklich reines AutoLisp, kein einziger VLISP-Befehl. Ich hab schon ein wenig rum-gegooglet , die Antwort müsste ja sein, würde ich sagen. Ich hätte nur noch mal gern die Bestätigung der Spezialisten. Besten Dank und schönen Tag, WolfgangE ------------------ An Op ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : "Solange bis...."
Brischke am 24.03.2004 um 16:19 Uhr (0)
(while Bedingung ;hier mach was ) So heißt das in Lisp. Bei Fragen ... Grüße Holger (Habe im Moment keine Zeit, deshalb nur so kurz) ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man s hat!
|
In das Form AutoLisp wechseln |
|
AutoLisp : "Solange bis...."
Brischke am 24.03.2004 um 18:15 Uhr (0)
Hallo Holger, ähm .. Lisp ist hervorragend dazu geeignet mit Listen zu hantieren, deshalb würde ich dir empfehlen, die Listenbearbeitungsfunktionen mal anzuschauen. Ich programmiere schon eine Weile, habe auch selber bereits mit variablen Variablennamen gespielt aber wirklich gebraucht habe ich dieses noch nicht. Mal ein paar Stichworte (Suchworte) für die Hilfe zum Suchen: cons - assoc - nth - mapcar - lambda - apply - append - reverse - vl-sort - ... Dein Konstrukt könnte dann wie folgt aussehen: C ...
|
In das Form AutoLisp wechseln |