Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  AutoCAD Architecture ACA (ADT)
  Skript um Punkte in AutoCAD einzulesen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Skript um Punkte in AutoCAD einzulesen (950 mal gelesen)
patch
Mitglied



Sehen Sie sich das Profil von patch an!   Senden Sie eine Private Message an patch  Schreiben Sie einen Gästebucheintrag für patch

Beiträge: 71
Registriert: 06.01.2005

erstellt am: 27. Jan. 2006 15:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Gemeinde,

hab ne Frage: Ich will Punkte in AutCAD einlesen. Als Skript. Also:

_multiple
_point
X,Y,Z  und was als Trennung, also hier am Zeilenende?

Das weiss ich leider nicht mehr, bräuchte ich aber dringend!

Schon Mal Vielen Dank,

Patch

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

charlieBV
Ehrenmitglied V.I.P. h.c.
Bauzeichnerin



Sehen Sie sich das Profil von charlieBV an!   Senden Sie eine Private Message an charlieBV  Schreiben Sie einen Gästebucheintrag für charlieBV

Beiträge: 9318
Registriert: 28.08.2003

Win 10 Pro

erstellt am: 27. Jan. 2006 15:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für patch 10 Unities + Antwort hilfreich

Hi,

such mal im Rund um AutoCAD Forum hier auf cad.de. Das ist da (hab ich das Gefühl) fast wöchentlich Thema.

------------------
Gruß Yvonne                                ADT-Help-Site

"Die Erinnerung ist das einzige Paradies,
woraus wir nicht vertrieben werden können." Jean Paul (1763-1825)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

sleepless
Mitglied
Architekt



Sehen Sie sich das Profil von sleepless an!   Senden Sie eine Private Message an sleepless  Schreiben Sie einen Gästebucheintrag für sleepless

Beiträge: 947
Registriert: 30.05.2004

erstellt am: 27. Jan. 2006 15:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für patch 10 Unities + Antwort hilfreich

Hallo,

einfach Return und in der nächsten Zeile den nächsten x,y,z Wert -sollte hinhaun.

_multiple[Enter]
_point[Enter]
x,y,z[Enter]
x,y,z[Enter]
x,y,z[Enter]

Tom

------------------
Inoffizielle ADT-Help-Site

Rome wasn't built in a day. But these days we just have one to do so.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

patch
Mitglied



Sehen Sie sich das Profil von patch an!   Senden Sie eine Private Message an patch  Schreiben Sie einen Gästebucheintrag für patch

Beiträge: 71
Registriert: 06.01.2005

erstellt am: 27. Jan. 2006 16:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

okay, da haben sich bei mir doch nur ein paar Leerzeichen eingeschlichen.

Dachte aber ich hätte was vergessen.

Aber: Wie kann man sich eigentlich umgekehrt Punkt in eine Datei exportieren lassen?

Ciao Patch

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Proxy
Ehrenmitglied
Stateless-DHCP v6-Paketfragmentierer


Sehen Sie sich das Profil von Proxy an!   Senden Sie eine Private Message an Proxy  Schreiben Sie einen Gästebucheintrag für Proxy

Beiträge: 1629
Registriert: 13.11.2003

KEIN ADT<P> ;)

erstellt am: 27. Jan. 2006 16:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für patch 10 Unities + Antwort hilfreich

Code:

(defun vert (/ filterlist vla-obj-list
lwlist 2dlist ptlist vlist1
vlist2 vlist3
)
(vl-load-com)
(setq filterlist (make-filter)
vla-obj-list (get-objects filterlist)
lwlist (nth 0 vla-obj-list)
2dlist (nth 1 vla-obj-list)
ptlist (nth 2 vla-obj-list)
vlist1 nil
vlist2 nil
vlist3 nil
) ;_ end-of setq
(if lwlist
(setq vlist1 (make-list lwlist 2))
) ;_ end of if
(if 2dlist
(setq vlist2 (make-list 2dlist 3))
) ;_ end of if
(if ptlist
(setq vlist3 (make-list ptlist 3))
) ;_ end of if
(write-text vlist1 vlist2 vlist3)
(princ)
) ;_ end of vert

(defun make-list (p-list n / i vlist obj coords ca j x y z xy)
(setq i (- 1)
vlist nil
) ;_ end of setq
(repeat (length p-list)
(setq obj (nth (setq i (1+ i)) p-list)
coords (vlax-get-property obj "coordinates")
ca (vlax-variant-value coords)
j (- 1)
) ;_ end-of setq
(repeat (/ (length (vlax-safearray->list ca)) n)
(setq x (vlax-safearray-get-element ca (setq j (1+ j))))
(setq y (vlax-safearray-get-element ca (setq j (1+ j))))
(if (= n 2)
(setq xy (list x y))
(progn
(setq z (vlax-safearray-get-element ca (setq j (1+ j))))
(setq xy (list x y z))
) ;_ end of progn
) ;_ end of if
(setq vlist (append vlist (list xy)))
) ;_ end-of repeat
) ;_ end-of repeat
) ;_ end-of make-list

(defun make-filter (/ filter)
(setq filter '((-4 . "<OR")
(0 . "LWPOLYLINE")
(0 . "POLYLINE")
(0 . "POINT")
(-4 . "OR>")
)
) ;_ end of setq
) ;_ end of make-filter

(defun get-objects (filter / ss k lwp-list
2dp-list pt-list no-ent obj pl
2d pt
)
(setq no-ent 1)
(while no-ent
(setq ss (ssget filter)
k (- 1)
lwp-list nil
2dp-list nil
pt-list nil
obj nil
pl "AcDbPolyline"
2d "AcDb2dPolyline"
pt "AcDbPoint"
) ;_ end-of setq
(if ss
(progn
(setq no-ent nil)
(repeat (sslength ss)
(setq ent (ssname ss (setq k (1+ k)))
obj (vlax-ename->vla-object ent)
) ;_ end-of setq
(cond
((= (vlax-get-property obj "ObjectName") pl)
(setq lwp-list (append lwp-list (list obj)))
)
((= (vlax-get-property obj "ObjectName") 2d)
(setq 2dp-list (append 2dp-list (list obj)))
)
((= (vlax-get-property obj "ObjectName") pt)
(setq pt-list (append pt-list (list obj)))
)
) ;_ end-of cond
) ;_ end-of repeat
) ;_ end-of progn
(prompt "\nKeine Polylinien oder Punkte in der Auswahl gefunden !.")
) ;_ end-of if
) ;_ end-of while
(list lwp-list 2dp-list pt-list)
) ;_ end-of get-objects

(defun write-text (vl1 vl2 vl3)
(setq fn (getfiled "Text File" "" "txt" 1))
(setq f (close (open fn "w")))
(setq msg "Punkte aus LW-Polylinien-Objekten")
(do-points fn vl1 msg 2)
(setq msg "Punkte aus 2D-Polylinien-Objekten")
(do-points fn vl2 msg 3)
(setq msg "Punkte aus Punkt-Objekten")
(do-points fn vl3 msg 3)
(princ)
) ;_ end of write-text

(defun do-points (fn vl msg n)
(setq f (open fn "a"))
(write-line msg f)
(write-line " x, y, z" f)
(write-line "" f)
(foreach point vl
(setq x (nth 0 point)
y (nth 1 point)
) ;_ end of setq
(if (= n 2)
(setq str (strcat (rtos x) "," (rtos y)))
(progn
(setq z (nth 2 point))
(setq str (strcat (rtos x) "," (rtos y) "," (rtos z)))
) ;_ end of progn
) ;_ end of if
(write-line str f)
) ;_ end of foreach
(setq f (close f))
(princ)
) ;_ end of defun

(defun c:points2file ()
(vert)
(princ)
) ;_ end-of defun


------------------
MfG Proxy

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

patch
Mitglied



Sehen Sie sich das Profil von patch an!   Senden Sie eine Private Message an patch  Schreiben Sie einen Gästebucheintrag für patch

Beiträge: 71
Registriert: 06.01.2005

erstellt am: 27. Jan. 2006 17:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

erst mal Danke für die Antwort.

Ähhhh: Aber was mach ich denn mit dem Code?! D.H. wie bekomm ich den in AutoCAD?

Ciao Patch

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Proxy
Ehrenmitglied
Stateless-DHCP v6-Paketfragmentierer


Sehen Sie sich das Profil von Proxy an!   Senden Sie eine Private Message an Proxy  Schreiben Sie einen Gästebucheintrag für Proxy

Beiträge: 1629
Registriert: 13.11.2003

KEIN ADT<P> ;)

erstellt am: 27. Jan. 2006 17:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für patch 10 Unities + Antwort hilfreich

marvin101010
Mitglied
ingenieur der architektur ohne diplom, bauzeichner ohne lehre, cad-admin ohne wissen :-)


Sehen Sie sich das Profil von marvin101010 an!   Senden Sie eine Private Message an marvin101010  Schreiben Sie einen Gästebucheintrag für marvin101010

Beiträge: 562
Registriert: 22.01.2003

Pentium 4
Windows XP
Autocad 2006
Autocad 2006LT + Extender
ADT 2006
ArchiCAD

erstellt am: 27. Jan. 2006 17:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für patch 10 Unities + Antwort hilfreich

Editor öffnen
Code hinein kopieren
unter "irgendein Name".lsp speichern
in die autoCAD Befehlszeile _appload eingeben
*.lsp suchen und dazuladen
fertig

Befehl: points2file

------------------
...so long and thanx for all the fish!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz