|
AutoLisp : Breitenfaktor vom Text ändern!
vision am 28.01.2004 um 19:40 Uhr (0)
Hallo, mit einem LISP-PRG. wird mit der Anweisung: (command _text p ul (getpoint Linker Einfügepunkt u. Ausrichtung wählen: ) 2.8 pause SIZ) ein Text mit der Variablen SIZE in der Zeichnung eingefügt. Wie kann man innerhalb des LISP-PRG. für den gerade eingefügten Text den Text-Breitenfaktor auf 0.6 setzen? Für Eure Bemühungen bedanke ich mich im Voraus.
|
In das Form AutoLisp wechseln |
|
AutoLisp : Mehrere Basispunkte!
vision am 29.02.2004 um 17:27 Uhr (0)
Hallo, die Variante mit vier Blöcken ist nicht so praktikabel. Den Basispunkt zu verschieben hat den Nachteil, dass sich das dann auf allen Blockreferenzen des Meßstellenblocks in der Zeichnung mit ändern. Wär es denn nicht möglich an den vier Stellen z.B. Punkte zu setzen und diese dann für den Cursor zu nehmen? Eine indirekte Vorgehensweise wäre z.B. per Lisp denkbar: - den Block in der Zeichnung einfügen - den Block aktiv machen - den Fang auf Mittelpunkt u. Endpunkt - den _move Befehl starten - einen ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Schräge Linie ausrichten!
vision am 30.03.2004 um 19:36 Uhr (0)
Hallo, leider habe ich keine Lösung für das Ausrichten von schrägen Linien bzw. 2DPolylinien gefunden. Ich habe Zeichnungen, wo etliche Linien/2DPolylinien minimal schräg verlaufen. Bei normalen Linien geht es noch über Eigenschaften, bei 2DPolylinien nicht mehr so einfach! Wer kann mir helfen, einen Lösungsmöglichkeit wie oben im ersten Beitrag beschrieben, in Lisp zu realisieren? Für Eure Bemühungen bedanke ich mich schon im Voraus.
|
In das Form AutoLisp wechseln |
|
AutoLisp : ENTSEL Linie
vision am 21.04.2004 um 13:27 Uhr (0)
Hallo! In dem unteren Lisp-Prg. (nicht von mir) wird nach der Auswahl einer Linie gefragt. Bei einer normalen Linie ist es OK, bei einer 2D-Polylinie kommt die Meldung: Fehlerhafter Argumenttyp: 2D-/3D-Punkt. Wie sollte die Abfrage für eine 2D-Polylinie aussehen? Für Eure Bemühungen bedanke ich mich schon im Voraus. (defun c:LINIENAUSWAHL() ;... (SETQ Q@@(ENTSEL Linie wählen: )) (SETQ ENAME(CAR Q@@)QQ@(CADR QO@)Ql@(ENTGET ENAME)Q|(TRANS(CDR(ASSOC 10 Ql@))ENAME 1)Q%(TRANS(CDR(ASSOC 11 Ql@))ENAME ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : ENTSEL Linie
vision am 21.04.2004 um 15:51 Uhr (0)
Hallo Thomas, könntes Du dein Lisp-Prg. so anpassen, dass es auch mit 2D-Polylinien klappt? MfG
|
In das Form AutoLisp wechseln |
|
AutoLisp : ENTSEL Linie
vision am 21.04.2004 um 21:28 Uhr (0)
Hallo, wie ich oben angemerkt habe, ist das Lisp-Prg. nicht von mir. Ich möchte aber das Prg. so anpassen, dass es auch mit den von uns hauptsächlich benutzten 2D-Polylinien funktioniert. Das kompl. Prg. benutzt die Angabe um eine parallele Linie zu erzeugen. Leider verstehe ich das Prg. auch nur ganz grob. Also, wenn ich auf eine normale Linie klicke bekomme ich Koordinaten angezeigt (x, y, z) die zur weiteren Berechnung so benötigt werden. Diese Koordinaten müssten so auch aus einer 2D-Polylinien generie ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Befehlswiederholung
vision am 20.01.2005 um 13:42 Uhr (0)
Hallo, das untere Lisp-Programm zeichnet eine Linie mit der festen Länge von 5mm und einen vom Benutzer angegeben Winkel. Leider funktioniert es nicht mehr richtig mit der Schleifenfunktion while ! Wer kann mir einen Tip geben? ;;; 5mm Verbindungslinie für Messstelle! (defun c:LINMSR () ;(while (command _line (setq pt (getpoint)) (mapcar + (-5 0 0) pt ) ) (command _rotate (ENTLAST) pt ) ;end while ) );defun
|
In das Form AutoLisp wechseln |
|
AutoLisp : Variable
vision am 18.02.2005 um 12:47 Uhr (0)
Hallo, ich möchte die 5mm Linienlänge in ...(mapcar + (-5 0 0)... nicht fest vorgeben, sondern mit getreal über die Tastatur eingeben. Wie müsste ich das Lisp ändern? Für Eure Bemühungen bedanke ich mich schon im Voraus. ;5mm Verbindungslinie für Messstelle! (defun c:LINMSR () (setq pt T) (while pt (command _line (setq pt (getpoint)) (mapcar + (-5 0 0) pt ) ) (if pt(command _rotate (ENTLAST) pt pause )) ) )
|
In das Form AutoLisp wechseln |
|
Lisp : Polylinie Eigenschaften zuweisen
vision am 18.02.2005 um 13:13 Uhr (0)
Hallo,ich benutze dazu dieses Lisp:(defun Init () (setq Err *error* *error* Fehler ) )(defun ReInit () (redraw OBJEKT 4) (setq *error* Err) (princ) )(defun Fehler (s) ;(print (strcat "Fehler: "s)) (ReInit)) (defun Lesen () (progn (setq OBJEKT Ax) (redraw OBJEKT 3) (if(and (not(vl-catch-all-error-p (setq GB (vl-catch-all-apply vlax-get-property (list (vlax-ename-vla-object OBJEKT) ConstantWidth ) ) ...
|
In das Form Lisp wechseln |
|
AutoLisp : Textausrichten
vision am 23.12.2003 um 12:16 Uhr (0)
Hallo gmk, erst mal Danke für Deine Anwort. Mit dem Lisp-Prg. wird der Einfügepunkt unten links gesetzt, aber der Text verschiebt sich auch auf den Nullpunkt (unten links in der Zeichnung)! Er sollte sich aber nur um den neuen Einfügepunkt verschieben (wie es auch bei der Ausführung in dem Eigenschaftsfenster passiert)!
|
In das Form AutoLisp wechseln |
|
AutoLisp : Polylinie > Eigenschaften übernehmen!
vision am 25.07.2005 um 14:51 Uhr (0)
Hallo, in einem Lisp-Programm werden Polylinien-Eigenschaften von einer Musterleitung auf die Ausgewählte Polylinie übertragen. Die Eigenschaften ...(-3 ( LTNR_00042 (1000 . Leitung ))) zum übertragen fehlen leider noch. Wie kann man die Werte mit dem Lisp-Prg. auslesen und Übertragen? Die Eigenschaften einer Linie: ---------- Befehl: (entget(car(entsel)) ( * )) Objekt wählen: ((-1 . Objektname: 7ecfb498 ) (0 . POLYLINE ) (330 . Objektname: 7ef7ac50 ) (5 . 548B ) (100 . AcDbEntity ) (67 . ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Linien bis zum Schnittpunkt verlängern!
vision am 14.10.2005 um 12:21 Uhr (0)
Hallo!Ja, es funktioniert damit. Vielen Dank!Allerdings müssen die Linien jeweils zwei mal ausgewählt werden.Wie ließe sich das mit Lisp vereinfachen?
|
In das Form AutoLisp wechseln |
|
AutoLisp : Bei Abruch oder Esc Benützereinstelungen zurücksetzten
vision am 20.10.2005 um 15:45 Uhr (0)
;Die Unterprogamme müssen oben stehen! (defun Init () (setq Err *error* *error* Fehler Osx (getvar "OSMODE") ) ) (defun ReInit () (setvar "OSMODE" Osx) (setq *error* Err) ;(redraw auswahl 4) (princ) ) (defun Fehler (s) (print (strcat "Fehler: "s)) (ReInit) ) (defun c:LispPrg (/ Err Osx) ;das vorhandene Lisp-Prg. (Init); Aufruf Unterprogramm (siehe oben) ;..... ;..... ;.....)Der fette Text muss zum vorhandenen Prog. hinzu gefügt werden!
|
In das Form AutoLisp wechseln |