| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Gruppencode 1 Assoziativ Bemaßung (763 mal gelesen)
|
RSt-Stahl Mitglied
Beiträge: 79 Registriert: 08.07.2005 ACAD 2006 AMD Athlon XP +4800 X2 1,5 GB Ram 500 GB HD ATI Radeon XT1900
|
erstellt am: 15. Jul. 2007 00:04 <-- editieren / zitieren --> Unities abgeben:
Hallo liebes Forum, ich habe mal wieder ein kleines Problem, ich möchte gern den Gruppencode 1 (müsste der sein der für die Angabe der "Länge" einer Bemaßung zuständig ist) auslesen. Lese ich den Gruppencode bei einer "normalen" Bemaßung aus erhalte ich den Wert der Maßzahl! Tu ich dies bei einer assoziativen Bemaßung erhalte ich immer nur den Wert " ". Gibt es eine Möglichkeit auch hier den angezeigten Wert der Bemaßung zu erhalten? Sinn des ganzen soll sein, ein Tool zu basteln mit dem ich Maßtexte addieren kann. Samit ich schneller Rundungsfehler finden kann..... Vielen Dank für eure Tipps im voraus. Gruß Thomas
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9732 Registriert: 01.12.2003 One AutoCAD 2.5 - 2023, Civil 3D, Win10/win11
|
erstellt am: 15. Jul. 2007 00:44 <-- editieren / zitieren --> Unities abgeben: Nur für RSt-Stahl
|
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9732 Registriert: 01.12.2003 One AutoCAD 2.5 - 2023, Civil 3D, Win10/win11
|
erstellt am: 15. Jul. 2007 07:40 <-- editieren / zitieren --> Unities abgeben: Nur für RSt-Stahl
Besser ist aber wohl, das Ganze mit etwas ActiveX anzureichern: Code: (vl-load-com) (defun c:GibBem ( / ss obj) ; Einzelauswahl _:S nur auf Bemaßungen (DIMENSION) anwenden (if (setq ss (ssget "_:S" '((0 . "DIMENSION")))) (progn ; wenn der Auswahlsatz (ss = SelectionSet) nicht NIL war ; Wandle ersten Elementnamen aus Auswahlsatz in Objektnamen (setq obj (vlax-ename->vla-object (ssname ss 0))) ; erfrage Maßlänge bzw. Winkel als Zahl vom Objekt (vlax-get-property obj "Measurement") ) ) )
[EDIT] Kommentare hinzugefügt [/EDIT] ------------------ Mit freundlichem Gruß Udo Hübner
[Diese Nachricht wurde von CAD-Huebner am 15. Jul. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
homer4480 Mitglied
Beiträge: 11 Registriert: 08.07.2007
|
erstellt am: 16. Jul. 2007 01:46 <-- editieren / zitieren --> Unities abgeben: Nur für RSt-Stahl
Hi, warum ließt Du nicht den Gruppencode 42 der Maßkette aus? Dies hat dann zwar mehrere Nachkommastellen, aber das ist ja schnell wieder gerundet, damit es mit dem der angezeigten Bemaßung übereinstimmt. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9732 Registriert: 01.12.2003 One AutoCAD 2.5 - 2023, Civil 3D, Win10/win11
|
erstellt am: 16. Jul. 2007 07:35 <-- editieren / zitieren --> Unities abgeben: Nur für RSt-Stahl
|
RSt-Stahl Mitglied
Beiträge: 79 Registriert: 08.07.2005 ACAD 2006 AMD Athlon XP +4800 X2 1,5 GB Ram 500 GB HD ATI Radeon XT1900
|
erstellt am: 16. Jul. 2007 09:11 <-- editieren / zitieren --> Unities abgeben:
Hallo CAD-Huebner! danke für die schnelle Antwort und gleichzeitig sorry das meine so lange auf sich warten lies, aber bei dem Super Wetter am WE kam ich erst gar nicht an den PC! Dein Vorschlag 1 hat schon die perfekte Lösung für mich gebracht! vielen Dank für die Mühe die 10 Unities sind unterwegs! auch noch ein danke an homer4480 deinen Vorschlag werde ich mir auch anschauen aber wie gesagt der erste Test mit Udo Hübners Vorschlag hat direkt funktioniert! Wünsche euch allen einen guten Start in die Arbeitswoche... Gruß Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RSt-Stahl Mitglied
Beiträge: 79 Registriert: 08.07.2005 ACAD 2006 AMD Athlon XP +4800 X2 1,5 GB Ram 500 GB HD ATI Radeon XT1900
|
erstellt am: 17. Jul. 2007 15:11 <-- editieren / zitieren --> Unities abgeben:
Noch mal Hallo Forum, nachdem ich jetzt die Werte die ich brauch auslesen kann, habe ich nun das Problem das ich die Strings die ich erhalte nicht zerteilen kann. Ich erhalte z..B. folgenden Wert "\\A1;512" nun möchte ich nur die 512 erhalten dies gelingt mir mit (atof(substr Wert 5)). Jetzt habe ich aber das Problem ist die Bemassung aus irgendeinem Grund von Hand geändert worden, so kann ich das auf diesem Wege nicht mehr abfragen! Darum meine Frage gibt es eine Methode mit der ich bei jedem Wert falls vorhanden den String "\\A1;" entfernen lassen kann? Habe schon einiges Versucht stecke aber leider fest. Vielen Dank im voraus. Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1734 Registriert: 11.10.2004 Window 10 ACAD 2021 CIVIL 2021 BricsCAD V14-V22 Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz 16.0GB RAM NVIDIA GeForce GTX 1050<P>
|
erstellt am: 17. Jul. 2007 15:54 <-- editieren / zitieren --> Unities abgeben: Nur für RSt-Stahl
Hallo Thomas, Code:
(defun nur_zahl (string / ) (substr string (+(vl-string-search ";" string)2)))
Aufrufen mit (nur_zahl "\\A1;512") Es wird alles hinter dem Semikolon ausgegeben. ------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RSt-Stahl Mitglied
Beiträge: 79 Registriert: 08.07.2005 ACAD 2006 AMD Athlon XP +4800 X2 1,5 GB Ram 500 GB HD ATI Radeon XT1900
|
erstellt am: 17. Jul. 2007 16:05 <-- editieren / zitieren --> Unities abgeben:
|