Hallo zusammen,
ich möchte aus einer dwg Datei die Koordinaten von vielen Punkten auslesen.
Hierfür habe ich in einem anderen Beitrag den Code für eine LSP (pktkoo) von Holger gefunden.
Diese LSP erfüllt auch genau dass, was ich will
Da es sich bei den auszulesenden Punkten um Hoch- und Rechtswerte (HW und RW) mit einer bestimmten Höhe handelt, sind die absoluten Zahlen der HW und RW sehr groß (z.B. 5450380). In der ausgelesen Datei werden die HW und RW aber so dargestellt:
5.45038e+006;5.69736e+006;121.35
5.45038e+006;5.69736e+006;121.35
Wie und wo kann ich einstellen, dass die HW und RW nicht wissenschaftlich dargestellt werden, sondern dezimal ?
Danke für Hilfe.
vg.
Alex
hier nochmal der LSP Code von Holger:
Code:
--------------------------------------------------------------------------------
(defun c ktkoo ( / as file trenn)
(setq trenn ";";Trennzeichen für Spaltentrennung , für eine tab= \t eingeben
as (ssget ;"_X";hier das ; raus, wenn immer die ganze Zeichnung durchsucht werden soll.
'((-4 . "<and")
;(8 . "LAYERNAME");Hier Layer eintragen, falls nur bestimmte rLayer ausgewertet werden soll
(0 . "POINT")
(-4 . "and>")
)
)
as (if as (bau_elemli as))
)
(if as (setq file (open "c:\\pktliste.txt" "w")));hier den Zieldateinamen festlegen
(mapcar '(lambda (E / z)
(if (= (car E) 10)
(progn
(mapcar '(lambda (K)
(if (not z)
(setq z T)
(princ trenn file)
)
(princ K file)
)
(cdr E)
)
(princ "\n" file)
)
)
)
(apply 'append(mapcar 'entget as))
)
(close file)
)
(defun bau_elemli (asatz / n elemli)
(setq n 0)
(repeat (sslength asatz)
(setq elemli(cons (ssname asatz n) elemli)
n (1+ n))
)
elemli
)
--------------------------------------------------------------------------------
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP