|
Lisp : Erweiterung Lisp zum Ermitteln von einem Schnittpunkt
StephanJP am 18.12.2008 um 08:28 Uhr (0)
Vielleicht sowas...Code:;by Stephan Vette - 2006-09-13(defun c:vme () ;verschneidet alle Linien mit einer Ebene (arxload "geomcal" T) (setq as (ssget ((0 . "LINE"))) ebene (getreal "zu erreichende Ebene eingeben: ") ep1 (list 0.0 0.0 ebene) ep2 (list 0.0 10.0 ebene) ep3 (list 10.0 0.0 ebene) n 0 en (ssname as n) ) (while en (setq p1 (cdr (assoc 10 (entget en))) p2 (cdr (assoc 11 (entget en))) ) (kal "vp=ilp(p1,p2,ep1,ep2,ep3)") (cond (( (nth 2 p1)(nth 2 p2))(entmod (list (car (entget en))(cons 10 vp)) ...
|
| In das Form Lisp wechseln |
|
Rund um Autocad : Koordinaten zeichnen
StephanJP am 17.11.2003 um 11:23 Uhr (0)
Hallo strich, wenn Du die Datei in x,y,z änderst (suchen-ersetzen) kannst Du sie einfach über die Zwischenablage einfügen: alle Zeilen markieren und mit strg+c in die Zwischenablage kopieren, nach AutoCAD wechseln und den Befehl Punkt aufrufen, mit F2 in das Textfenster wechseln, strg+v und AutoCAD sollte alle Punkte zeichnen. Ein Lisp braucht man eigentlich nur, wenn auch noch Punktnummern da sind, die in irgendwelche Attribute geschrieben werden müssen, wobei das auch u.U. mit einem script zu lösen wäre. ...
|
| In das Form Rund um Autocad wechseln |
|
Rund um Autocad : attribute verschwinden.
StephanJP am 26.06.2002 um 13:17 Uhr (0)
Hallo Stefan, meistens passiert uns das, wenn wir die Zeichnungen von einem Vermesser o.ä. erhalten. Man hat in Autocad die Möglichkeit, Blöcke per Lisp-Routine umzubenennen, d.h. nur der Name des Blockes wird(wurde?) umbenannt. So konnte man Blöcken scheinbar Attribute hinzufügen, obwohl diese per Definition gar keine hatten (da ja die Attribut-Listen in der Zeichnungsdatenbank und nicht in der Blockdatenbank geführt werden). Da die Blockdefinition des Blockes eigentlich keine(!) Attribute enthält, versch ...
|
| In das Form Rund um Autocad wechseln |
|
Rund um Autocad : pedit in LISP
StephanJP am 04.08.2002 um 22:13 Uhr (0)
Hallo Andrea, so ganz verstehe ich das nicht. Es ist natürlich so, das Du nur eine 2D-Polylinie mit _gpoly (UMGRENZUNG) erstellen kannst, aber 1. sollte das für Deine Aufgabe vollkommen genügen 2. @Axel ist eine Region durchaus als Objekt zur Ausrichtung des BKS geeignet 3.mußt Du vor dem Befehl Umgrenze natürlich das BKS auf diese Region ausrichten, dann 4. die Region zerlegen, einen Punkt in der Region bestimmen um mit 5. _gpoly eine Polylinie zu erstellen. Aber vielleicht kommst Du mit Axels Lösung ja a ...
|
| In das Form Rund um Autocad wechseln |
|
Rund um Autocad : blocktausch-attributblöcke
StephanJP am 03.10.2002 um 10:43 Uhr (0)
Hallo Jochen, für mich hört sich das so an: wenn wir Dateien von Vermessern kriegen sind die Punkte oft mit Attributen versehen, wenn man diesen "Punktblock" aber auflöst, sind die Attribute weg! Wenn also Deine verschwindenden Blöcke eigentlich keine Attribute haben kann es sein, das Diese beim ersetzen mit Blocktausch einfach verschwinden, da ja in der Blockdefinition keine Attribute gefunden werden. Ist so ein Trick von früher: Block mit Attribut (z.B. Punkthöhe), die Geometrie gefällt nicht, ergo Block ...
|
| In das Form Rund um Autocad wechseln |
|
Rund um AutoCAD : Konstruktionslinien
StephanJP am 13.11.2003 um 21:55 Uhr (0)
hier ein paar Zeilen Lisp:(defun c:kh() ;erzeugt eine horizontale Hilfslinie im gewählten Punkt(setq pt (getpoint))(setq altlay (getvar "CLAYER"))(command "_layer" "_m" "hilfslin_18" "_c" 9 "hilfslin_18" "_lw" 0.18 "hilfslin_18" "")(command "_xline" "_h" pt "")(setvar "CLAYER" altlay)(princ))(defun c:kv() ;erzeugt eine vertikale Hilfslinie im gewählten Punkt(setq pt (getpoint))(setq altlay (getvar "CLAYER"))(command "_layer" "_m" "hilfslin_18" "_c" 9 "hilfslin_18" "_lw" 0.18 "hilfslin_18" "")(command "_xli ...
|
| In das Form Rund um AutoCAD wechseln |
|
Rund um Autocad : Text auf Objekt drehen
StephanJP am 10.09.2002 um 16:22 Uhr (0)
Hallo Thomas, habe auch mal nen Lisp programmiert: (defun C:TDA() (setq tau (nentsel "
Ausrichtende Linie auswählen: ")) (setq tausel (entget (car tau))) (cond ((= (cdr (assoc 0 tausel)) "VERTEX")(setq pt1 (osnap (cadr tau) "_mid"))) ((= (cdr (assoc 0 tausel)) "LWPOLYLINE")(setq pt1 (osnap (cadr tau) "_mid"))) ((= (cdr (assoc 0 tausel)) "LINE")(setq pt1 (osnap (cadr tau) "_mid"))) (T (alert "An diesem Element kann nicht ausgerichtet werden!")(exit)) ) (setq ten (car (entsel "
Auszu ...
|
| In das Form Rund um Autocad wechseln |