| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY WIRD VON NVIDIA ZUM HÄNDLER DES JAHRES GEWÄHLT, eine Pressemitteilung
|
Autor
|
Thema: MText-Inhalt Polygon zuweisen, und zusätzlich Koordinaten auslesen (152 / mal gelesen)
|
kinglouis Mitglied Ingenieur
Beiträge: 38 Registriert: 23.04.2015 Autodesk AEC Subscription
|
erstellt am: 20. Nov. 2024 13:36 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, folgende Problematik. Ich habe eine Zeichnung erhalten, die ca. 7.500 geschlossene Polylinien (Rechtecke) enthält. Neben jedem Rechteck befindet sich ein MTEXT (ebenfalls ca. 7.500). Deren Inhalte würde ich gerne dem entsprechenden Polygon zuweisen. Jedes Ploygon-MTEXT-Pärchen ist nicht mehr als 10 Einheiten voneinander entfernt. Zusätzlich sollen die Koordinaten eines Eckpunkts oder auch des geom. Mittels jedes Polygons extrahiert werden. Als Ergebnis benötige ich eine Tabelle mit eindeutiger Zuweisung des MTEXTs zu den entsprechenden Koordinaten. Ich habe soeben ein paar erste Gehversuche mit ChatGPT gemacht, aber das hat alles nicht funktioniert. Bin für Hilfe dankbar. Ich benutze die AEC-Collection. VG kinglouis Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadwomen Ehrenmitglied V.I.P. h.c. Mädchen für fast alles
Beiträge: 3081 Registriert: 26.08.2002 ACAD R11 - 2022 (Plant3D) AVIS ACAD LT 2013- 2021 ZWCAD 2015 Versuch "nun ja" [s]History P3D 2012/(13) SP und Hotfix([/s]<P> Windows 10 / 64 Bit Xeon CPU 3.5GHz 16GB Ram NVIDIA Quadro P2000 3x Dell TV100 88P Monitore
|
erstellt am: 20. Nov. 2024 13:47 <-- editieren / zitieren --> Unities abgeben: Nur für kinglouis
Hy, kann evtl. ganz anderst, einfach gehen....kann man den Plan posten ? sind die Polygone alle gleich , was steht in dem Mtext und warum ? cu cw ------------------ Also ich finde Unities gut ... und andere sicher auch ------------------------------------------------ cadwomen™ Plant ist nur die Spitze des Berges der da treibt ? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
kinglouis Mitglied Ingenieur
Beiträge: 38 Registriert: 23.04.2015 Autodesk AEC Subscription
|
erstellt am: 20. Nov. 2024 13:50 <-- editieren / zitieren --> Unities abgeben:
Hi, ich hoffe, dass ich die Datei korrekt gepostet habe? Ja, alle Polylinine sind gleich. Am Ende benötige ich eigentlich nur eine Tabelle mit den MTEXT-Inhalten und den zugehörigen Koordinaten des entsprechenden Polygons. [Diese Nachricht wurde von kinglouis am 20. Nov. 2024 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadwomen Ehrenmitglied V.I.P. h.c. Mädchen für fast alles
Beiträge: 3081 Registriert: 26.08.2002 ACAD R11 - 2022 (Plant3D) AVIS ACAD LT 2013- 2021 ZWCAD 2015 Versuch "nun ja" [s]History P3D 2012/(13) SP und Hotfix([/s]<P> Windows 10 / 64 Bit Xeon CPU 3.5GHz 16GB Ram NVIDIA Quadro P2000 3x Dell TV100 88P Monitore
|
erstellt am: 20. Nov. 2024 14:04 <-- editieren / zitieren --> Unities abgeben: Nur für kinglouis
Mh ne Tabelle mit dem Mtext Inhalt ist kein Thema Datenextraktion und gut , geht 5min Arbeit, aber da die Polys keinen Bezug zum Text so haben , muss mal schauen was man da machen könnte. cu cw
------------------ Also ich finde Unities gut ... und andere sicher auch ------------------------------------------------ cadwomen™ Plant ist nur die Spitze des Berges der da treibt ? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
kinglouis Mitglied Ingenieur
Beiträge: 38 Registriert: 23.04.2015 Autodesk AEC Subscription
|
erstellt am: 20. Nov. 2024 14:14 <-- editieren / zitieren --> Unities abgeben:
|
CADdog Ehrenmitglied V.I.P. h.c.
Beiträge: 2286 Registriert: 30.04.2004 Intel Xeon 3,6 GHz 32 GB RAM NVIDIA Quadro P2000 Windows 10 Enterprise AutoCADmap 3D 2023 WS-Landcad 2023 QGIS 3.28.5
|
erstellt am: 20. Nov. 2024 15:23 <-- editieren / zitieren --> Unities abgeben: Nur für kinglouis
Datenextrakt des Textes, dabei Text und Geometrie exportieren Danach in der Tabelle mit Formeln die Koordinaten ändern. Der Bezug zum Rechteck scheint mir abhängig zu sein von: 1. Ausrichtung des Textes rechts oder links 2. vorletzte Nummer des Textes 0 oder 1 habe das aber nur stichprobenartig geprüft und habe mir nicht alle 7500 angeschaut ------------------
Gruß Thomas CADdog the dog formerly known as TR AutoCAD spricht mit einem, aber viele hören nicht zu. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
kinglouis Mitglied Ingenieur
Beiträge: 38 Registriert: 23.04.2015 Autodesk AEC Subscription
|
erstellt am: 20. Nov. 2024 15:58 <-- editieren / zitieren --> Unities abgeben:
Das hat mich auf eine Idee gebracht. Ich habe alle gleich ausgerichteten Texte (Mitte links, bzw. Mitte rechts) ausgewählt und auf den geom. Mittelpunkt der Polygone geschoben. Da (fast) alle Texte identisch zu den Polygonen verschoben waren, sind nun die geometrischen Daten des Textfeldes gleich der des zugehörigen Polygons...der Rest dann über Datenextraktion war ein Kinderspiel. Danke für den Denkanstoß! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas Kraus Mitglied Elektrotechniker
Beiträge: 1461 Registriert: 11.01.2006 WIN 10 ACAD 2022 BricsCAD V23
|
erstellt am: 20. Nov. 2024 16:20 <-- editieren / zitieren --> Unities abgeben: Nur für kinglouis
Da ich LISP-Liebhaber bin Das hier macht einen MTEXT an Koordinate 0,0 mit den Koordinaten vom Polygonmittelpunkt und dem Text der daneben steht. Wenn du Lust hast ... einfach in eine Textdatei, irgendeinname.lsp und in die Zeichnung ziehen. Ist jetzt keine fertige Funktion, einfach etwas code der helfen könnte. Den MTEXT-Inhalt kannst du ja z.B. in Word kopieren und mit suchen/ersetzen bearbeiten und eine Tabelle draus machen, usw. usw. In der Zeichnung ist allerdings ein Text mehr als Polygone. Code: (defun k_satz->entlist (satz) ;;; Elementliste aus Auswahlsatz erstellen (if (= (type satz) 'PICKSET) (vl-remove-if-not '(lambda (dummy) (= (type dummy) 'ENAME)) (mapcar 'cadr (ssnamex satz)) ) ) )(defun k_geomcen (obj_list) ;;; geometrischen Mittelpunkt(e) von Objekt oder Objektliste zurückgeben (defun k_geomcen_midp (obj_name) (vla-getboundingbox obj_name 'minp 'maxp ) (k_midp (vlax-safearray->list minp) (vlax-safearray->list maxp)) ) (if (listp obj_list) (mapcar 'k_geomcen_midp obj_list) (k_geomcen_midp obj_list) ) ) (setq ergebnis_list nil) (setq ent_list (k_satz->entlist (ssget))) (mapcar 'set '(pl_list text_list) (mapcar '(lambda (name) (vl-remove-if-not '(lambda (ent) (= (cdr (assoc 0 (entget ent))) name)) ent_list) ) '( "LWPOLYLINE" "MTEXT") ) ) (setq text_list (mapcar '(lambda (text) (list (cdr (assoc 10 (entget text))) (cdr (assoc 1 (entget text))))) text_list)) (foreach pl pl_list (setq p (k_geomcen (vlax-ename->vla-object pl))) (setq text (car (vl-sort text_list '(lambda (t1 t2) (< (distance p (car t1)) (distance p (car t2))))))) (setq ergebnis_list (cons (list p (cadr text)) ergebnis_list)) (setq text_list (vl-remove text text_list)) ) (vla-addmtext (vla-get-block (vla-get-activelayout (vla-get-activedocument (vlax-get-acad-object)) ) ) (vlax-3D-point '(0 0)) 0.0 (substr (apply 'strcat (mapcar '(lambda (zeile) (strcat "\\P" (vl-princ-to-string (car zeile)) " - " (cadr zeile))) ergebnis_list)) 3) )
------------------ Geht nicht, gibts nicht Gruß Andreas http://kraus-cad.de [Diese Nachricht wurde von Andreas Kraus am 20. Nov. 2024 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22301 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 20. Nov. 2024 16:41 <-- editieren / zitieren --> Unities abgeben: Nur für kinglouis
Zitat: Original erstellt von kinglouis: Da (fast) alle Texte
Richtig, leider nur fast alle (weder Ausrichtung, noch vorletztes Zeichen = 0 kann verwendet werden, aber fast) Beachte auch die Fehler bei WR 07.18.06 u WR 06.19.11 (doppelte PL) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadwomen Ehrenmitglied V.I.P. h.c. Mädchen für fast alles
Beiträge: 3081 Registriert: 26.08.2002 ACAD R11 - 2022 (Plant3D) AVIS ACAD LT 2013- 2021 ZWCAD 2015 Versuch "nun ja" [s]History P3D 2012/(13) SP und Hotfix([/s]<P> Windows 10 / 64 Bit Xeon CPU 3.5GHz 16GB Ram NVIDIA Quadro P2000 3x Dell TV100 88P Monitore
|
erstellt am: 20. Nov. 2024 16:54 <-- editieren / zitieren --> Unities abgeben: Nur für kinglouis
|
kinglouis Mitglied Ingenieur
Beiträge: 38 Registriert: 23.04.2015 Autodesk AEC Subscription
|
erstellt am: 20. Nov. 2024 19:04 <-- editieren / zitieren --> Unities abgeben:
Euch allen vielen Dank. Ohne eure Ideen wäre ich nicht auf meine Vorgehensweise gekommen. Ich habe die paar Fehler auch entdeckt und die einzelnen nicht identisch verschobenen Texte von Hand an die richtige Stelle geschoben. Das waren keine 5 Minuten. Dennoch werde ich die Lisp von Andreas ausprobieren. ChatGPT ist auch immer über LISP gegangen, hat aber immer wieder Fehler produziert. Danke nochmal - tolles Forum! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
archtools Mitglied
Beiträge: 971 Registriert: 09.10.2004 Entwickler für AutoCAD, BricsCAD u.a., alle Systeme
|
erstellt am: 22. Nov. 2024 09:36 <-- editieren / zitieren --> Unities abgeben: Nur für kinglouis
Zitat: Original erstellt von kinglouis: ChatGPT ist auch immer über LISP gegangen, hat aber immer wieder Fehler produziert.
Das geht mir und vermutlich allen anderen Programmierern ja ganz genau so. ChatGPT wird also immer menschenähnler :-)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |