|
Lisp : Benutzerabfrage in einer Endlosschleife
CADwiesel am 17.03.2009 um 15:17 Uhr (0)
also der 1. Teil deiner Ausführung: Zitat:Das Messgerät gibt über die serielle Schnittstelle je 1sek einen Zeichenstring aus der die Koordinaten und Qualität enthält. Mit Lisp sollte es wohl möglich sein Diese kontinuierlich abzufragen. ist mir leider noch etwas myseriös, aber wenn du es sagst...Grundsätzlich solltest du in deinen Versuchen ersteinmal alle Daten aus der Asciidatei in eine Liste einlesen.Sind ja eh nur spieldaten - die Wirklichkeit wir sicher anders aussehen.Dann kannst du jede Sec einen da ...
|
| In das Form Lisp wechseln |
|
Lisp : Vorgabewerte an Lisp übergeben
CADwiesel am 10.05.2007 um 08:42 Uhr (0)
Ich habe dir hier mal was gemacht - vielleicht kannst es ja nutzen:Code:(defun hs ( hs_abstand hs_farbe / winkel abstand farbe)(if (null hs_abstand) (if(null(setq hs_abstand (getreal (strcat"
Schraffurabstand eingeben " (rtos 10)":")))) (setq hs_abstand 10)) )(setq winkel (+ 90(*(getangle "
Winkel 90° zur Schraffurrichtung wählen:")(/ 180 pi)))) (if(null hs_farbe) (if(null(setq hs_farbe (acad_colordlg 256))) (setq hs_farbe 3) ) )(command "schraff" "b" winkel hs_abstand "N" (while (/=(getvar "CMDACTIVE")0 ...
|
| In das Form Lisp wechseln |
|
Rund um Autocad : lisp, mittelpunkt, winkel
CADwiesel am 06.02.2003 um 11:10 Uhr (0)
Hier was für die Mitte zwischen 2 Punkten: (DEFUN X MP (/ AGRBIB#O AGRBIB0O) (INITGET 128) (SETQ AGRBIB#O (GETPOINT "NERSTER PUNKT :") AGRBIB0O (GETPOINT AGRBIB#O "NZWEITER PUNKT :")) (IF (= (QUOTE STR) (TYPE AGRBIB#O)) (SETQ AGRBIB#O (EVAL (READ AGRBIB#O))) AGRBIB#O ) (IF (= (QUOTE STR) (TYPE AGRBIB0O)) (SETQ AGRBIB0O (EVAL (READ AGRBIB0O))) AGRBIB#O ) (MAPCAR (QUOTE (LAMBDA (AGRBIB0) (/ AGRBIB0 2))) (F:V+ AGRBIB#O AGRBIB0O)) (D ...
|
| In das Form Rund um Autocad wechseln |
|
AutoLisp : Externe Lisp in Repeat starten möglich?
CADwiesel am 26.10.2004 um 11:15 Uhr (0)
müsste so gehen (command .-layer _th * _on * ) (setq allobj (ssget X (list (-4 . AND )(cons 8 * ) (-4 . AND )))) (Setq objanz (sslength allobj)) (repeat objanz (setq laakt (ssget l )) (print laakt) (setq las (ssname laakt 0)) (print las) (setq elist (entget las)) (print elist) (setq lalist (assoc 8 elist)) (print lalist) (setq aktla (cdr lalist)) (print aktla) (command .-layer _se aktla _off * _on aktla ) (if (setq lst (acet-overkill-ui nil)) (acet-overkill2 lst) );if ...
|
| In das Form AutoLisp wechseln |
|
Lisp : Save-Methode und Reactor
CADwiesel am 07.07.2011 um 07:08 Uhr (0)
Wie du schon gesagt bekommen hast: Es geht nicht, das ein Lisp Zeichnungsübergreifend weiterläuft. Ich habs zwar noch nie getestet, aber vielleicht kannst du noch einen Befehl in einer anderen Zeichnung ausführen - das wäre dann eine in dieser Zeichnung geladene Funktion. So könntest du evtl. erst alle anderen geöffneten Zeichnungen nacheinander schließen und am Ende dann die, aus der gestartet wurde.Also keine Ahnung, obs wirklich geht...ok, geht so nicht, nach Aktivieren der Zeichnung geht nix mehr. was ...
|
| In das Form Lisp wechseln |
 |
Lisp : Werte von Attributen in Blöcken ändern
CADwiesel am 19.01.2021 um 14:53 Uhr (15)
Im Kern brauchst du ENTNEXT. Damit hangelst du dich durch die Attribute, wenn deine Blockref welche hat.Hier mal ein Lisp codeschnipsel mit dem du was machen könntest...Code:(defun attchange (elem attname gcwert wert / aslst) (setq aslst (entget elem)) (if (= (cdr (assoc 0 aslst)) "INSERT") (progn (if (= (cdr (assoc 66 aslst)) 1) (progn (setq aslst (entget (entnext (cdr (assoc -1 aslst))))) (while (/= (cdr (assoc 0 aslst)) "SEQEND") (if (= (cdr (assoc 2 aslst)) attnam ...
|
| In das Form Lisp wechseln |
|
Rund um Autocad : Block-Attribute mit lisp ausfiltern.
CADwiesel am 11.10.2002 um 13:03 Uhr (0)
Hai Du kannst 1. Die Filterliste noch spezifizieren und 2. Musst Du dien Attribut benennen. (z.Zt. steht da Basis) und 3. musst Du einen Eintrag machen was Passieren soll, wenn das Attribut mit dem gesuchten übereinstimmt. (z.Zt steht da (setq M:base (assoc 10 M:ELIST)) ) (prompt "
---- Starten mit BLK-ATT ") (defun C:BLK-att (/ M:MD_ERR M:FEHLER M:SS1 M:SS1LEN i M:ENAME M:ELIST M:ETYPE M:BTAB M:BASE M:BLK ) (setq M:M ...
|
| In das Form Rund um Autocad wechseln |
|
Rund um Autocad : automatische attribute wie username/datum
CADwiesel am 16.03.2001 um 12:37 Uhr (0)
Hi Ich hab dir mal den code eingepackt, der einen Stempel bei uns Aktualisiert. Wenn Du das nicht verstehst, schick mir ne Mail. Das mit den Reaktoren ist etwas schwieriger, aber auch nicht so. Der Vorteil von Reaktoren ist einfach der, daß sie auf bestimmte Acadbefehle ansprechen und dann eine vordefinierte Arbeit ausführen. Sie sind leider nur dürftig dokumentiert, ich hab auch nur ein paar blätter doku-aber für die einfachen sachen reicht s. Übrigens solltest Du in Visual Lisp (editor) entwickeln, da ...
|
| In das Form Rund um Autocad wechseln |
|
AutoLisp : Lisp Zahlen von CADWiesel
CADwiesel am 16.03.2005 um 16:50 Uhr (0)
(Defun C:ZAHLEN () (START) (setq STYLE_LIST (EARX:LIST-TAB STYLE ) STYLE_TAB (list) FF (getvar textstyle ) ) ;_ end of setq (if (or (null ff) (= ff )) (setq FF STANDARD ) ) ;_ end of if (prompt
Textstil wählen ) (princ STYLE_LIST) (prompt (strcat FF )) (if (not (member (setq textst (strcase (getstring T))) STYLE_LIST) ) ;_ end of not (setvar textstyle ff) (setvar textstyle textst) ) ;_ end ...
|
| In das Form AutoLisp wechseln |