|
Lisp : Lisp befehl der Copy (acad.pgp) ausführt
wronzky am 27.01.2011 um 11:25 Uhr (0)
Wenns nicht geht: Zitat:Some typical reasons for returning nil are source-file is not readable source-file is a directory append? is absent or nil and destination-file exists destination-file cannot be opened for output (that is, it is an illegal file name or a write-protected file) source-file is the same as destination-fileGrüsse, Henning------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form Lisp wechseln |
|
Rund um AutoCAD : Meldung: Kann nicht zu LISP zurückkehren u.a.
wronzky am 12.03.2008 um 13:43 Uhr (0)
Zitat:Original erstellt von tunnelbauer:der Wert VonLayer wird nämlich nur dann gesetzt wenn er nicht "VonLayer" ist - ist also so nicht abfragbar.Das stimmt so nicht. Hierzu verweise ich mal auf DIESEN BEITRAG!Der Fehler liegt woanders:zum Filtern von NICHT VONLAYER ist die Farbnummer als Zahl, nicht als Text zu übergeben:(ssget "_X" ((-4 . "NOT") (62 . 256) (-4 . "NOT")))Grüsse, Henning------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Architekten und Ingenieure http://www.vox ...
|
| In das Form Rund um AutoCAD 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 |
|
Rund um AutoCAD : Drehen Dynamischer Block -> Error
wronzky am 09.05.2008 um 12:48 Uhr (0)
Zitat:Original erstellt von joern bosse:Aber jetzt noch eine Frage an die LISP-Experten: Wie kann ich feststellen, ob ein Block dynamisch ist oder nicht??? Ich habe das zwar schon irgendwo hier im Forum gelesen, aber ich finde es leider nicht mehr.Schau mal HIER...Grüsse, Henning------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form Rund um AutoCAD wechseln |
|
AutoLisp : Lisp immer kränker?
wronzky am 05.08.2005 um 16:59 Uhr (0)
Noch was ganz komisches:Der Fehler ist eigentlich kein Fehler, dennCode:(vl-catch-all-apply list ((220 220 220)))liefert korrekt ((220 220 220)) zurück und kein #%catch-all-apply-error%. Und erst nach der Rückgabe kommt BAD ARGUMENT TYPE, allerdings ohne die sonst übliche Erläuterung, welches Argument denn nun falsch ist.Grüsse, Henning------------------VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form AutoLisp wechseln |
|
Rund um AutoCAD : VektorWorks nach AutoCAD Elementstruktur
wronzky am 16.06.2008 um 10:36 Uhr (0)
Hi Jan,mit ein bischen Lisp (ist ja Dein Hobby ) kannst du es doch so machen:1. alle Blocke wählen2. mit jedem Block:2.1 Layer mit Blockname erstellen2.2 Block auflösen2.3 aufgelöste Elemente in neuen Layer verschieben(Probleme dabei: Hier werden Sie geholfen...)Grüsse, HenningPS: Wenn Du keine Zeit hast, kann ich Dir auch was aus meiner Sammlung geben ------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form Rund um AutoCAD wechseln |
|
Rund um AutoCAD : Linien verbinden mit Radius 0
wronzky am 23.05.2008 um 09:38 Uhr (0)
Zitat:was noch ?könnte noch ein kleines Lisp sein:Code:(defun c:f0 ( / alt_f) (setq alt_f (getvar "filletrad")) (setvar "filletrad" 0) (command "_fillet") (while ( (getvar "cmdactive") 0) (command pause) ) (setvar "filletrad" alt_f) (prin1))Grüsse, Henning------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form Rund um AutoCAD wechseln |
|
AutoCAD VBA : Nächster bei GetEntity
wronzky am 29.08.2007 um 21:10 Uhr (0)
Hi Jörg,ich poste dir mal einen Lisp-Code, auch wenn das hier das VBA-Forum ist. Da gibt es eine entsprechende Funktion:Code:(defun get-point-on-element ( / p ele) (setq p (entsel)) (setq ele (car p) p (cadr p)) (vlax-curve-getClosestPointTo ele p))Das Entscheidende ist vlax-curve-getClosestPointTo. Vielleicht fällt ja noch wem eine VBA-Entsprechung ein?Grüsse, Henning------------------VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form AutoCAD VBA wechseln |
|
Rund um AutoCAD : Hilfe für lisp veränderung kopieren-einfügen-drehen
wronzky am 25.01.2008 um 10:35 Uhr (0)
...oder halt so:Code:(defun C:MCOPY () (setq #ele# (car (entsel "
vorhandenes Element wählen: "))) (setvar "clayer" (cdr (assoc 8 (entget #ele#)))) (setq #bpf# (getpoint "Basisbunkt:")) (while (setq #epf# (getpoint "Zielpunkt:")) (command "_copy" #ele# "" #bpf# #epf#) (command "_rotate" (entlast) "" #epf# pause) ))Grüsse, Henning------------------VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de[Diese Nachricht wurde von wronzky am 25. Jan. 2008 editiert.]
|
| In das Form Rund um AutoCAD wechseln |
|
Lisp : Programmaufruf mit Parameter
wronzky am 15.04.2008 um 11:29 Uhr (0)
Hallo Markus,also wenn Du den Befehl ekk_frameinsert nicht selbst programmiert hast, dann gibt es da so einfach keine Möglichkeit. Da der Befehl ja ein Command-Befehl ist, kann man an ihn keine Parameter übergeben. Du müsstest also entweder im Quellcode der Lisp ändern, oder (falls das Lispprogramm die Einstellungen nicht vornimmt) im Quellcode der DCL.Grüsse, Henning------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form Lisp wechseln |
|
Rund um AutoCAD : Katasterplan
wronzky am 21.11.2008 um 16:13 Uhr (0)
Hallo Fuwe-cad,also ich denke, Du bekommst mit so einem Programm doch echte Probleme:1. Du kannst die Flächen nicht mehr so einfach ermitteln2. Du kannst die Flächen nicht mehr korrekt schraffieren3. Der Objektfang "END" führt in der Zeichnung zu falschen Punkten.Daher hier nur mal "akademisch", ein kleiner Befehl. Ist eine schöne Übung für einen Lisp-Kurs.Grüsse, Henning------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form Rund um AutoCAD wechseln |
|
Rund um AutoCAD : Liste für Layer in Blöcken
wronzky am 17.11.2005 um 12:39 Uhr (1)
Also mit der kleinen Lisp-ZeileCode:(cdr (assoc 8 (entget (car (nentselp)))))bekommst Du den Layer des Blockelementes, das Du anpickst. Vielleicht hilft das ja auch schon. In einen kleinen Befehl verpackt dann vielleicht so:Code:(defun c:z-layer ( / dummy) (if (setq dummy (nentselp)) (cdr (assoc 8 (entget (car dummy)))) ))Grüsse, Henning------------------VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form Rund um AutoCAD wechseln |
|
Rund um Autocad : wollen sie wirklich
wronzky am 25.04.2006 um 17:46 Uhr (0)
Eine Idee hätte ich auch noch:laufen irgendwelche Makros, Lisp oder so?gib z. B. mal (command "_pline" p1 p2 p3 "_close") einfach in der Befehlszeile ein. Dann kommt auch die Abfrage, da p1 p2 p3 leer sind, und _pline folglich bereits beendet, wenn der _close-Befehl kommt. Dieser will dann nicht die Polylinie, sondern die AutoCAD-Sitzung schliessen...Grüsse, Henning------------------VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form Rund um Autocad wechseln |