;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; www.cad-huebner.de erstellt von Udo Hübner ;; ;; Achtung folgende Verbesserungen müssen geprüft bzw. eingearbeitet werden ;; ;; Prüfung auf locked Layers, und evt. Behandlung von Gruppen wie text + wipeout ;; ;; 15.09.98 ansonsten von 1.0 auf 1.1 nur windows umlaute eingesetzt. ;; ;; Update 01.03.2004 - nur Kommentare eingepflegt ;; ;; Die Textbeschriftung erfolgt rechts oberhalb vom Punkt, der Versatz beträgt ;; ;; 75% der Texthöhe ;; ;; Es ist keine Error-Routine eingebaut. ;; ;; das Abschalten des permanenten Objektfangs zu Laufzeit wäre sinnvoll, ;; ;; der neugesetzte Text nicht auf ein naheliegendes Objekt einrastet ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (DEFUN C:Z2TXT ( / ANZAW1 ANZH AW1 ENTINSERT EPKT I TEMP Z) (PROMPT (STRCAT "\nZ2TXT.lsp - Objekte mit Höhentext/Z-Koordinate) versehen - V1.2 1999-2004" "\n(c) Ing.- Büro Hübner, info@CAD-Huebner.de" "\nTEXTSIZE = " (RTOS (GETVAR "TEXTSIZE")) ) ;_ Ende von STRCAT ) ;_ Ende von PROMPT (SETQ AW1 (SSGET "X" '((0 ."INSERT")(2 ."HÖHENPUNKT"))); Objekte wählen Anzaw1 (SSLENGTH AW1) ; Anzahl der Objekte in AW1 AnzH 0 ; Anzahl der geänderten Elemente I 0 ; Zähler ) ;_ Ende von SETQ (INITGET 6) (Prompt "\nAugenblick, ich ich prüfe Objekte...") (while (> Anzaw1 0) (setq temp (ssname AW1 (setq AnzAw1 (1- AnzAW1))) entinsert (entget temp) epkt (cdr (assoc 10 entinsert)) z (RTOS (NTH 2 epkt) 2 2) ) ;_ Ende von setq (PRINC ".") (COMMAND "_MTEXT" (LIST (+ (* 0.75 (GETVAR "TEXTSIZE")) (NTH 0 epkt)) (+ (* 0.75 (GETVAR "TEXTSIZE")) (NTH 1 epkt)) 0.0 ) ;_ Ende von LIST "_justif" "_ML" ; Positionierung Mitte zentriert "_WID" 10.0 ; konstante Textfeldbreite - ist einfacher zu picken z "" ) ;_ Ende von COMMAND ) ; ende while (princ " Objekte beschriftet. ") (princ "Z2TXT beendet.") (PRIN1) ) ; ende defun ;-------------------------------------------------------------------- (PROMPT "\nZ2TXT.lsp geladen. Start mit Z2TXT") (PRIN1)