|
Lisp : DCL mit Popup_list mit LSP verknüpfen
copymaster am 03.10.2006 um 20:38 Uhr (1)
Da bin ich nochmal..der Anfänger...Hab nochmal einen Teil des LISP-Codes eingefügt, mein Problem ist, dass beide Formate (Blöcke) eingefügt werden. Vielleicht kann nochmal jemand nen Blick drauf werfen, wäre super, denn ich komme da leider nicht weiter.Wie schon oben beschrieben werden die Formate über ne Popup_list ausgewählt...in der liste steht lediglich.."A0" "A1" (key: format_choose).Nach dem OK-Klick soll der jeweilige Block eingefügt werden..allerdings werden bei mir beide Blöcke eingefügt.(if ok_cl ...
|
In das Form Lisp wechseln |
|
Lisp : Polylinie versetzen und enden schließen
CAD-Huebner am 28.08.2020 um 12:08 Uhr (1)
Anbei mal eine überarbeitete Version mit Vorgabelayer "Blech", Wahl der Seite durch +- Blechdicke und anschließender Schraffur mit ANSI31.Details kann man dann im Lisp Code selbst noch anpassen.------------------Mit freundlichem GrußUdo Hübnerwww.CAD-Huebner.de
|
In das Form Lisp wechseln |
|
Lisp : Grundlagenfrage
CADmium am 04.10.2006 um 11:12 Uhr (0)
Thx für die Blumen ... Axel (mapcar) hätt dir das sicher besser erklären können..dafür mach ich noch nicht lange genug mit Autocad und Lisp, aber:auch wenn der Lispbefehl als Autocadbefehl angemeldet wurde, ist er noch lange keiner.man kann ja auch sowas definierenCode:(defun c:Testus(A B) (princ "
HAllo
"))wird zwar als Befehl angemeldet, trotzem wird es nur beim Aufruf als Lispfunktion mit der Parameterübergabe klappen.Ein Lisp , egal ob als Befehl angemeldet oder nicht, muß zuallererst den Lispinterp ...
|
In das Form Lisp wechseln |
|
Lisp : Grundlagenfrage
CADmium am 04.10.2006 um 11:44 Uhr (0)
mal ein Bsp:_line ist ein Acadbefehl... L ist in der acad.pgp als kürzeldefiniertwenn ich L eingebe wird dann der Autocadbefehl _line gestartet(command "L") funktoniert aber nicht.Vielleicht ist es so , das die mittels (defun c: ...) definierten Lisp ähnlich wie die Kürzel der acad.pgp angemeldet werden.. dann so ählich wie : wenn testus eigegeben wurde, suche im Speicher nach der Funktion "Testus" , lade sie in den Interpreter und arbeite sie dann ab .. Akzeptiere es einfach als Syntxvorgabe und fertig!-- ...
|
In das Form Lisp wechseln |
|
Lisp : Grundlagenfrage
Geos am 03.10.2006 um 13:38 Uhr (0)
Soweit mir bekannt ist,kann man selbst definierten Befehlen keine Parameter mitgeben.Wie Rabbit schon ausführte: Der Aufruf in Lisp unterscheidet sich - nicht (command "befehl" ...)sondern (command (c:befehl))------------------Schöne GrüßeErnstMeine Homepage
|
In das Form Lisp wechseln |
|
Lisp : Grundlagenfrage
autocart am 03.10.2006 um 14:21 Uhr (0)
@rabbit&Ernst:Befor ich (command (c:Befehl)) schreibe, schreibe ich aber gleich (c:Befehl). @Ernst only:Was meinst du mit Parameter?@Markus:Das stimmt mit dem Umweg! (Hätte ich auch schon selbst oben versucht anzudeuten.) Was mich verwundert ist allerdings folgendes: Ich dachte immer, die Funktion (command ...) tut nichts anderes, als die Argumente in die Befehlszeile zu schreiben und dann auf Enter zu drücken, so als würde man es händisch machen. Wäre das der Fall, dann verstehe ich nicht, warum bei so ...
|
In das Form Lisp wechseln |
|
Lisp : Grundlagenfrage
autocart am 03.10.2006 um 22:52 Uhr (0)
Danke Thomas! Us unterwegs.Endlich hilft uns hier in diesem Thread jemand, der sich wirklich auskennt. Was ich trotzdem noch immer nicht verstehe:Du schreibst: Lisp-Funktionen, deren Namen mit c: beginnen, werden von defun im Acad als Autocadbefehl angemeldet. Ist klar.Weiter schreibst du: command interpretiert ihren Parameter (ich nehme an, du meinst das 1.Argument) als Autocadbefehl. Scheint auch irgentwie verständlich.Warum erkennt dann Autocad (oder ist es command selbst?) den von defun als Autocadbef ...
|
In das Form Lisp wechseln |
|
Lisp : Linientyp für Polylinie auf VONLAYER
U. Neumann am 04.10.2006 um 11:55 Uhr (0)
Hallo Lisp-Gemeinde,ich möchte gerne über Lisp den Linientyp einer Polylinie ändern.Über (setq EE (subst (cons 6 LTyp) (assoc 6 EE) EE)) und (entmod EE) funktioniert das auch - allerdings nur so lange, bis ich den Linientyp auf "VONLAYER" setzen möchte. In EE stehen dann zwar die korekten Werte - entmod bringt aber nicht das gewünschte Ergebnis.Das gleiche Problem tritt auf, wenn ich die Breite der Polylinie ändern möchte. Auch hier bringt entmod nicht das gewünschte Ergebnis, obwohl die GC 40 und 41 über ...
|
In das Form Lisp wechseln |
|
Lisp : zahlen.lsp
joern bosse am 04.10.2006 um 16:02 Uhr (0)
Hallo wokijed,ich habe mal ein bißchen geändert, und wegen ACAD-Lt uns LISP, suche mal nach dem "Extender"Code:(Defun C:ZAHLEN ( / temp) (if (or (not (setq wunschlayer (getstring (strcat "Wunschlayer:" (if (and wunschlayer (/= wunschlayer "")) wunschlayer "0") "")))) (= wunschlayer "")) (setq wunschlayer "0")) (if (not (setq wunschhoehe (getreal (strcat "Wunschhöhe:" (if wunschhoehe (rtos wunschhoehe 2 1) "2.5") "")))) (setq wunschhoehe 2.5))(START)(pr ...
|
In das Form Lisp wechseln |
|
Lisp : Umwandlung von (getvar DWGNAME)
spider_dd am 05.10.2006 um 10:01 Uhr (0)
Hallo Angeltoni,teste doch mal Deine einzelnen Codezeile (auch abschnittsweise) im Lisp-Editor / VL-Konsole. Da siehst Du was die einzelnen substr Anweisungen liefern. Das erhaltenbleiben der mittleren Zeichen: Kann es sein, dass Dein aktueller Dateiname das zweite "-" Zeichen nicht hat? Das wird nämlich gesucht.Wenn Deinen Dateinamenstruktur immer so "starr" ist wie angegeben brauchst Du auch nur die gewünschten Abschnitte rausgreifen.Code:(setq dwgname (vl-string-right-trim ".dwg" dwgname))(setq TX (strc ...
|
In das Form Lisp wechseln |
|
Lisp : ADT-Bemassung erstellen
tmoehlenhoff am 06.10.2006 um 09:29 Uhr (0)
Hi Alex,die beiden Befehle kenne ich, aber so einfach ist es nicht. Das von dir gepostete Lisp liefert den Handle des Kreises in der Blockdefinition (wie ein nentsel auch). Nur hilft der mir nix, denn damit komme ich nicht weiter, da ich keinen Weg kennen diesen Handle für das (command "dimadd" oder auch (command "dimattach" zu nutzen.Der einzige Weg (den ich bisher gefunden habe) dem (command "dimadd" was akzeptables zu übergeben ist eben ein Auswahlsatz wie er von ssget ":N" erzeugt wird, nur bringt mich ...
|
In das Form Lisp wechseln |
|
Lisp : Aufruf von Dialogfenstern im LISP unterbinden
cadffm am 12.08.2020 um 08:22 Uhr (1)
Hi,Einstellungssache, nicht Versionsunabhängig, euer Code sollte verbessert werden Sicherstellen die entsprechenden Variablen wie benötigt eingestellt zu haben (setvar)und am besten VOR dem Teil die aktuelle Einstellung speichern, nach dem Teildiese Einstellung wieder herstellen.FAQ:ATTDIA/ATTREQ: Bei Block einfügen kein Dialogfenster mehr da ?
|
In das Form Lisp wechseln |
|
Lisp : Aufruf von Dialogfenstern im LISP unterbinden
marmora am 12.08.2020 um 09:54 Uhr (1)
Hi und danke für die schnelle Antwort!Genauso (setvar) habe ich es mir auch gedacht.Nur welche Variable unterbindet den Aufruf des Dialogfensters? Die o. g. sind es leider nicht...Gruß,marmora
|
In das Form Lisp wechseln |