| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: Eigenschaften: lwpolyline, 2d-polyline (5673 mal gelesen)
|
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 16. Dez. 2009 16:42 <-- editieren / zitieren --> Unities abgeben:
ja zum x´ten-male das beliebte Thema "polylinien" Punkt1) Veratet mir doch mal bitte was ist positiv und negativ bei *lwpolyline (+) (-) *2d-polyline (+) (-)
Punkt2) Ich lese nur zu oft bei 2d-polylines "ein altes Format", trotzdem verwendet es mein Aufsatz beispielsweise, und der ist up-to-date. In der Weiterverarbeitung lassen sich lwplolylines besser händeln (aufbrechen / zusammenfügen...) Punkt3) Wenn ich mir die Gruppencodes einer Lwpolyline anzeigen lasse taucht der GC 370 gar nicht auf (Linienbreite) also... (setq lb(cdr(assoc 370(entget(car(entsel"\nOBJwahl:")))))) ... nil! c a d p l a y e r [Diese Nachricht wurde von cadplayer am 16. Dez. 2009 editiert.] [Diese Nachricht wurde von cadplayer am 16. Dez. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 16. Dez. 2009 16:48 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 Alles
|
erstellt am: 16. Dez. 2009 16:52 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Soso, Wissen welches man über Jahre Aufbauen müßte willst du also in Sekunden bekommen Einen Teil kennst du ja schon und ganz allgemein gesagt ist es einfach so: LWPOLYLINES können nicht alles darstellen was POLYLINEs können usw. So trivial mit a,b,c beantwortet geht nicht, das wäre eine lange Liste denke ich, zumindest, wenn man dann noch in Untergruppen wie Polygonnetze abrutscht die mit dem POLYLINEobjekt dargestellt werde etc.) So Randinformationen was/wie ACADBefehle (nicht Lisp) arbeiten willst du sicher auch noch bekommen wie zB: Was passiert eigentlich mit einer LWPOLYLINE wenn ich diese mit PEDIT und "Angleichen" bearbeite etc. Bin aber mal gespannt was die anderen dir noch schreiben [edit: Mist, nur Zweiter] ------------------ die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 17. Dez. 2009 08:08 <-- editieren / zitieren --> Unities abgeben:
dem stimme ich völlig überein, was man hier im Forum erfährt und das gebe ich gern den 2 Experten, CADmium und cadffm als meine grosses Dankbarkeit zurück - hat mich faktisch in die tieferen Sphären von Autocad katapultiert. "Ihr kommt immer kurz und knapp zur Sache - beeindruckend und fänominal !" (Natürlich gibt es von unzähligen hier auch nützliche Tips... das würde den Tread sprengen, alle aufzuzählen). Zurück zum Stoff, Ich hab hier mal ein und diesselbe Linie einmal als 2d-polyline zum zweiten als lwpolyline mit den GC-codes ausgedruckt, sind es denn wirklich alle codes die da angezeigt werden ? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 17. Dez. 2009 08:14 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|
Dorfy Mitglied Double-Dipl.-Ing. Bleistiftanspitzer
Beiträge: 900 Registriert: 21.07.2006 AutoCad2007, ProE, HiCad
|
erstellt am: 17. Dez. 2009 08:33 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Zitat: Original erstellt von CADmium:
wenn du dich mal informieren willst, guck mal ,ob du das Teil noch irgendwo erstehen kannst
... nur zu empfehlen das "Teil" Hab es vor längerer Zeit günstig erworben. (Dank an CADmium) ------------------ Mfg Heiko Edit: und Dank an CADffm hier Elefantenjagd in Afrika "... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..." (www.uni-leipzig.de/~rotheh/elefant.htm)
[Diese Nachricht wurde von Dorfy am 17. Dez. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 17. Dez. 2009 08:46 <-- editieren / zitieren --> Unities abgeben:
|
Bernd10 Mitglied
Beiträge: 763 Registriert: 20.11.2003 Intel(R) Xeon(R) W-2123 CPU @ 3.60GHz 16 GB RAM Windows 10 Pro 64-bit AutoCAD Mechnical 2020 Deu
|
erstellt am: 18. Dez. 2009 08:29 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Hallo cadplayer , ich habe unten meinen Programmcode, mit dem ich die Koordinaten ermittle und diese in eine spezielle Liste schreibe. Der Programmcode ist so zwar nicht lauffähig, aber Teile daraus kannst Du vielleicht übernehmen. ((or (= cele "polyline") (= cele "polylinie")) (polylinie_doppelte_punkte_entfernen eename) (setq lkoorpolyl nil) (setq rausbtglinbog 0.0) (setq csubele nil) (setq esubele (entnext eename)) (while (and (/= esubele nil) (/= csubele "seqend")) (setq lentget (entget esubele)) (setq l0 (assoc 0 lentget)) (setq csubele (cdr l0)) (setq csubele (strcase csubele t)) (if (= csubele "vertex") (progn (setq l10 (assoc 10 lentget)) (setq lepktlinbog (list (nth 1 l10) (nth 2 l10) (nth 3 l10))) (setq l42 (assoc 42 lentget)) (setq rausbtgnaechst (cdr l42)) ; Ausbuchtung für das nächste Element Linie/Kreisbogen (setq rradiuslinbog (ausbuchtung_radius lspktlinbog lepktlinbog rausbtglinbog)) (if (/= rradiuslinbog 0.0) (progn (if (or (< rausbtgnaechst -1.0) ; Falls Bogen im UZ größer 180 Grad (> rausbtgnaechst 1.0)) ; Falls Bogen im GUZ größer 180 Grad (progn (setq rausbtg rausbtgnaechst) (if (> rausbtgnaechst 1.0) (progn (setq lpkt1 lepktlinbog) (setq lpkt2 lspktlinbog) (setq rradiuslinbog (* rradiuslinbog -1)) ) ; progn (progn ; else (setq lpkt1 lspktlinbog) (setq lpkt2 lepktlinbog) ) ; progn ) ; if (setq lsplit (split lpkt1 lpkt2 rausbtg)) (setq lpkt1nicht (nth 0 lsplit)) ; bereits in der Liste eingetragen (setq lpktzw (nth 1 lsplit)) ; muss hier noch in die Liste eingetragen werden (setq lpkt2nicht (nth 2 lsplit)) ; wird anschließend noch in die Liste eingetragen (setq rausbtgnicht (nth 3 lsplit)) ; NICHT übernehmen (setq cpktken ckenk) ; Konturpunkt (setq lpktpolyl lpktzw) (setq lpktpolyl (append lpktpolyl (list 0.0))) ; Y-Koordinate hinzufügen (setq lpktpolyl (acadwe_punkt_erstellen lpktpolyl rradiuslinbog cpktken carh1)) (setq lkoorpolyl (append lkoorpolyl (list lpktpolyl))) ) ; progn ) ; if ) ; progn ) ; if (setq lpktpolyl (acadwe_punkt_erstellen lepktlinbog rradiuslinbog ckenk carh1)) (setq lkoorpolyl (append lkoorpolyl (list lpktpolyl))) (setq rausbtglinbog rausbtgnaechst) (setq lspktlinbog lepktlinbog) ) ; progn ) ; if (setq esubele (entnext esubele)) ) ; while (setq lentget (entget eename)) (setq l70 (assoc 70 lentget)) (setq iwert70 (cdr l70)) (setq sbitenthalten (bit_enthalten iwert70 1)) (if (/= sbitenthalten nil) ; Flag 1 ist enthalten => Polylinie ist geschlossen (progn (setq ianzkoorpolyl (length lkoorpolyl)) (setq lspktlis (nth 0 lkoorpolyl)) (setq lpkterstlis lspktlis) (setq lpkterstlis (acad_punkt_erstellen lpkterstlis)) (setq lpktletztlis (nth (- ianzkoorpolyl 1) lkoorpolyl)) (setq lpktletztlis (acad_punkt_erstellen lpktletztlis)) (setq rabsterstletzt (distance lpkterstlis lpktletztlis)) (if (/= rabsterstletzt 0.0) (progn (setq rradiuspolyl (ausbuchtung_radius lpktletztlis lpkterstlis rausbtglinbog)) (setq lepktlis lspktlis) (setq lepktlis (listeninhalt_ersetzen lepktlis 3 rradiuspolyl)) (setq lkoorpolyl (append lkoorpolyl (list lepktlis))) ) ; progn ) ; if ) ; progn ) ; if (setq lkoorpolyl (koordinaten_kontur_erstellen lkoorpolyl nil)) (setq lkoorele (append lkoorele lkoorpolyl)) ) ((or (= cele "lwpolyline") (= cele "lwpolylinie")) (polylinie_doppelte_punkte_entfernen eename) (setq lkoorpolyl nil) (setq izlerpkt 0) (setq lename (entget eename)) (setq ianz (length lename)) (setq izler1 0) (while (< izler1 ianz) (setq lgrpcode (nth izler1 lename)) (setq igrpcode (car lgrpcode)) (if (= igrpcode 10) (progn (setq rradius 0.0) (setq l42 (nth (- izler1 1) lename)) ; Ausbuchtung (setq igrpcode42 (car l42)) (if (= igrpcode42 42) (progn (setq rausbtg (cdr l42)) (setq lpkt1 (cdr (nth (- izler1 4) lename))) (setq lpkt2 (cdr (nth izler1 lename))) (setq rradius (ausbuchtung_radius lpkt1 lpkt2 rausbtg)) (if (/= rradius 0.0) (progn ; Den Kreisbogen gemäß Funktion NC_gen kontrollieren (if (or (< rausbtg -1.0) ; Falls Bogen im UZ größer 180 Grad (> rausbtg 1.0)) ; Falls Bogen im GUZ größer 180 Grad (progn (setq lsplit (split lpkt1 lpkt2 rausbtg)) (setq lpkt1nicht (nth 0 lsplit)) ; bereits in der Liste eingetragen (setq lpktzw (nth 1 lsplit)) ; muss hier noch in die Liste eingetragen werden (setq lpkt2nicht (nth 2 lsplit)) ; wird anschließend noch in die Liste eingetragen (setq rausbtgnicht (nth 3 lsplit)) ; NICHT übernehmen (setq izlerpkt (+ izlerpkt 1)) (if (= izlerpkt 1) (setq cpktken ckens) ; Startpunkt (setq cpktken ckenk) ; Konturpunkt ) ; if (setq lpkt lpktzw) (setq lpkt (append lpkt (list 0.0))) ; Y-Koordinate hinzufügen (setq lpkt (acadwe_punkt_erstellen lpkt rradius cpktken carh1)) (setq lkoorpolyl (append lkoorpolyl (list lpkt))) (if (= izlerpkt 1) (setq lspkt lpkt) ) ; if ) ; progn ) ; if ) ; progn ) ; if ) ; progn ) ; if (setq izlerpkt (+ izlerpkt 1)) (if (= izlerpkt 1) (setq cpktken ckens) ; Startpunkt (setq cpktken ckenk) ; Konturpunkt ) ; if (setq lpkt (cdr (nth izler1 lename))) (setq lpkt (append lpkt (list 0.0))) ; Y-Koordinate hinzufügen (setq lpkt (acadwe_punkt_erstellen lpkt rradius cpktken carh1)) (setq lkoorpolyl (append lkoorpolyl (list lpkt))) (if (= izlerpkt 1) (setq lspkt lpkt) ) ; if ) ; progn ) ; if (setq izler1 (+ izler1 1)) ) ; while (setq lentget (entget eename)) (setq l70 (assoc 70 lentget)) (setq iwert70 (cdr l70)) (setq sbitenthalten (bit_enthalten iwert70 1)) (if (/= sbitenthalten nil) (progn (setq rausbtg (cdr (nth (- izler1 2) lename))) (setq lpkt1 (cdr (nth (- izler1 5) lename))) (setq lpkt2 (cdr (assoc 10 lename))) (setq rradius (ausbuchtung_radius lpkt1 lpkt2 rausbtg)) (if (/= rradius 0.0) (progn ; Den Kreisbogen gemäß Funktion NC_gen kontrollieren (if (or (< rausbtg -1.0) ; Falls Bogen im UZ größer 180 Grad (> rausbtg 1.0)) ; Falls Bogen im GUZ größer 180 Grad (progn (setq lsplit (split lpkt1 lpkt2 rausbtg)) (setq lpkt1nicht (nth 0 lsplit)) ; bereits in der Liste eingetragen (setq lpktzw (nth 1 lsplit)) ; muss hier noch in die Liste eingetragen werden (setq lpkt2nicht (nth 2 lsplit)) ; wird anschließend noch in die Liste eingetragen (setq rausbtgnicht (nth 3 lsplit)) ; NICHT übernehmen (setq izlerpkt (+ izlerpkt 1)) (if (= izlerpkt 1) (setq cpktken ckens) ; Startpunkt (setq cpktken ckenk) ; Konturpunkt ) ; if (setq lpkt lpktzw) (setq lpkt (append lpkt (list 0.0))) ; Y-Koordinate hinzufügen (setq lpkt (acadwe_punkt_erstellen lpkt rradius cpktken carh1)) (setq lkoorpolyl (append lkoorpolyl (list lpkt))) (if (= izlerpkt 1) (setq lspkt lpkt) ) ; if ) ; progn ) ; if ) ; progn ) ; if (setq lpkt lpkt2) (setq lpkt (acadwe_punkt_erstellen lpkt rradius cpktken carh1)) (setq ikst (getvar "luprec")) ; Anzahl Kommastellen (setq rfuzzy (kommastellen_fuzzy ikst)) (if (not (equal (acad_punkt_erstellen lpkt) (acad_punkt_erstellen (last lkoorpolyl)) rfuzzy)) (setq lkoorpolyl (append lkoorpolyl (list lpkt))) ; Kontur schließen, wenn nicht bereits vorhanden ) ; if ) ; progn ) ; if (setq lkoorpolyl (koordinaten_kontur_erstellen lkoorpolyl nil)) (setq lkoorele (append lkoorele lkoorpolyl)) ) ((or (= cele "insert") (= cele "einfügung")) (setq lkoorinsert nil) (setq lentget (entget eename)) (setq l2 (assoc 2 lentget)) (setq cblkname (cdr l2)) (setq eblock (tblobjname "block" cblkname)) (setq esubele (entnext eblock)) (while (/= esubele nil) (setq cblkname (cdr (assoc 2 (entget esubele)))) (if (/= cblkname nil) (progn (setq cblkname (strcase cblkname t)) (setq ispos1 (strpos cblkname cprtypname 1)) (setq ispos2 (strpos cblkname cprtypnamealt 1)) (if (or (/= ispos1 nil) (/= ispos2 nil)) (setq ispos t) ) ; if ) ; progn (progn ; else (setq ispos nil) ) ; progn ) ; if (if (= ispos nil) (setq lkoorsubele (koordinaten_element_ermitteln esubele smeldg)) (setq lkoorsubele nil) ; else ) ; if (if (/= lkoorsubele nil) (setq lkoorinsert (append lkoorinsert lkoorsubele)) ) ; if (setq esubele (entnext esubele)) ) ; while (if (/= lkoorinsert nil) (progn (setq l10 (assoc 10 lentget)) (setq lbpktins (list (nth 1 l10) (nth 2 l10) (nth 3 l10))) (setq l41 (assoc 41 lentget)) (setq rskalfak (cdr l41)) (setq l50 (assoc 50 lentget)) (setq rdrehbm (cdr l50)) (setq rdreh (atof (angtos rdrehbm))) (setq lkoorinsert (koordinaten_groesse_ermitteln lkoorinsert rskalfak rdreh lbpktins)) (setq lkoorinsert (basispkt_ausgleichen lkoorinsert nil lbpktins)) (setq ielenr (eed_element_ermitteln eename (vl-bb-ref '*igcelenr*))) (if (or (= ielenr nil) (= ielenr (vl-bb-ref '*igcpikto*))) ; falls Basispunkt links/unten nicht mit den Koordinaten übereinstimmt (z.B. PT...) (progn (setq lelebox (elementbox_ermitteln eename)) (setq lpktboxlu (acad_punkt_erstellen (nth 0 lelebox))) (setq ikst (getvar "luprec")) ; Anzahl Kommastellen (if (/= (runden (distance lbpktins lpktboxlu) ikst) 0.0) (setq lkoorinsert (basispkt_ausgleichen lkoorinsert nil lpktboxlu)) ) ; if ) ; progn ) ; if (setq lkoorele (append lkoorele lkoorinsert)) ) ; progn ) ; if ) Viele Grüße Bernd
[Diese Nachricht wurde von Bernd10 am 18. Dez. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 18. Dez. 2009 08:47 <-- editieren / zitieren --> Unities abgeben:
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 18. Dez. 2009 09:36 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 18. Dez. 2009 10:37 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 18. Dez. 2009 10:39 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 18. Dez. 2009 10:46 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 18. Dez. 2009 10:50 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 18. Dez. 2009 11:09 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Zitat: Original erstellt von CADmium: .. bei PLs gilt : linear zwischen den Ganzzahligen Stützpunktparams siehe auch noch mal vorherigen Post von mir
Gut zu wissen, bei splines ist es nämlich genau bei der halben Länge. Das Bespiel in der Hilfe ist dann wohl etwas irreführend. Ciao Georg ------------------ http://www.xxx-tausend.info Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 18. Dez. 2009 11:10 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 26. Jan. 2010 07:51 <-- editieren / zitieren --> Unities abgeben:
Hallo! Ja ich würde nochmal gern auf das eigentliche Thema, den Eigenschaften von 2D-plines und Lw-plines zurückkommen. Inzwischen steht die wunderbare Errungenschaft "AutoCAD-Objekte" auch in meinem Bücherregal (war nicht leicht - zumal das Buch schon längst nicht mehr im Handel erhältlich ist) Inwischen ist mir klar geworden, die Frage ob + oder - stellt sich gar nicht, sondern fortgeschrittener massen, was steckt eigentlich alles hinter einer 2d-pline, die weitaus intelligenter ist. Dazu das Besipiel von zwei 2d-pline mit dem Namen "V1343_VM" und "V1342_VM" vom Vianova-aufsatz: Bsp 1) * Registered Application Name: 472VIANOVA_VEG_NADB_SEG * Code 1002, Starting or ending brace: { * Code 1000, ASCII string: Fast * Code 1000, ASCII string: Lös * Code 1000, ASCII string: Fast * Code 1000, ASCII string: Lös * Code 1000, ASCII string: Fast * Code 1000, ASCII string: Lös * Code 1000, ASCII string: Fast * Code 1000, ASCII string: Halvfast * Code 1002, Starting or ending brace: } * Registered Application Name: 472VIANOVA_QUADRI_INFO * Code 1002, Starting or ending brace: { * Code 1070, 16-bit integer: 0 * Code 1000, ASCII string: V1343_VM * Code 1040, Real number: 300122020 * Code 1040, Real number: 9313003 * Code 1002, Starting or ending brace: } * Registered Application Name: HorAlignmentDwgApp * Code 1002, Starting or ending brace: { * Code 1000, ASCII string: LAYERASCURRENT * Code 1000, ASCII string: 0 * Code 1002, Starting or ending brace: } Bsp 2) * Registered Application Name: 472VIANOVA_VEG_DAKNADB * Code 1002, Starting or ending brace: { * Code 1000, ASCII string: $20 * Code 1005, Database handle: 3576D * Code 1005, Database handle: 357C7 * Code 1005, Database handle: 0 * Code 1040, Real number: 0 * Code 1070, 16-bit integer: 1 * Code 1000, ASCII string: $NCOS$ 3 POP0_DRA * Code 1002, Starting or ending brace: }
* Registered Application Name: 472VIANOVA_QUADRI_INFO * Code 1002, Starting or ending brace: { * Code 1070, 16-bit integer: 0 * Code 1000, ASCII string: V1342_VM * Code 1040, Real number: 301000021 * Code 1040, Real number: 9313003 * Code 1002, Starting or ending brace: } Object has 16275 bytes of Xdata space available. Das JPG zeigt die 2d-pline vom Vianova-aufsatz her, könnte ich denn auch erfahren ob die 2d-plines ursprünglich berechenbar war ? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwiesel Moderator CAD4FM UG
Beiträge: 1989 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 26. Jan. 2010 10:00 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Die GC codes über 1000 die du hier aufgeführt hast haben mit der Polyliniendarstellung garnichts zu tun, sondern sind angehängte Daten, die es deiner Applikation erlauben die Polylinie zu verwalten o.ä. alles was du zur Darstellung brauchst wurde schon gepostet. ------------------ Gruß CADwiesel Besucht uns im CHAT
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 26. Jan. 2010 10:11 <-- editieren / zitieren --> Unities abgeben:
ja schon klar - ich hab die xdaten von den 2d-plines ausgeslesen und überascht, was sich da alles wiederspiegelt. Daher meine Frage, wie man die Kontrolle über die xdaten behält bzw. was sich da alles noch über die Zeichengeometri entdecken lässt ? xdlist ?! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 Alles
|
erstellt am: 26. Jan. 2010 10:18 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 26. Jan. 2010 10:36 <-- editieren / zitieren --> Unities abgeben:
|
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 26. Jan. 2010 17:11 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Zitat: Original erstellt von cadplayer: ...Daher meine Frage, wie man die Kontrolle über die xdaten behält bzw. was sich da alles noch über die Zeichengeometri entdecken lässt ?...
Was da alles zu finden ist, hängt von der Applikation ab, welche die Info's angehangen hat. In aller Regel kann man als Laie nichts mit diesen Info's anfangen - sie sind nur für die interne Verwendung durch die Applikation gedacht, weshalb wir dir an dieser Stelle (ohne Kenntnis der Applikation) nicht weiterhelfen können. Grüße Holger ------------------ Holger Brischke CAD on demand GmbH Individuelle Lösungen von Heute auf Morgen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Theodor Schoenwald Ehrenmitglied
Beiträge: 1672 Registriert: 16.04.2002
|
erstellt am: 26. Jan. 2010 18:22 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Hallo, zu dieser Frage aus Deinem Punkt 2: "...In der Weiterverarbeitung lassen sich lwplolylines besser händeln (aufbrechen / zusammenfügen...)" Beim normalen Zeichnen achte ich nicht, ob es sich um eine Polylinie oder um eine LWPolylinie handelt. Wenn ich aber die Koordinaten und Ausbuchtungen auslesen muss, kann ich nicht gleich vorgehen, das wurde auch schon kurz erwähnt. Findet man ein Tool, wie zum Beispiel die Umkehrung der Konturrichtung, kann man es nicht für LW-Polylinien verwenden, wenn es für Polylinien gemacht wurde. Da bleibt nur ein zweites Tool zu finden oder zu erstellen das für LWPolylinien funktioniert. Wenn man dann nicht vorher prüfen will ob LWPL oder PL, kann man im Tool, das aus zwei Teilen besteht, abfragen um welchen Typ es sich handelt und entsprechend verzweigen. Für meine Arbeiten bringt das Vorhandensein von zwei PL-Typen nur Umstände. Sie sind jedoch da und ich habe meine Programme angepasst, damit sie mit beiden Typen umgehen können. Gruß Theodor Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 04. Mrz. 2010 08:21 <-- editieren / zitieren --> Unities abgeben:
Das Thema "Polylines" ist einfach zu spannend, um es loszulassen. Deshalb hier mal wieder eine klitzekleine Frage zu den x-tensions. Mir ist klar, dass die "Verwaltungsdaten" vom Hersteller bestimmt werden, und viele Codes kann ich wiedererkennen, dabei stosse ich auf 16bit - holla. Heisst das, das schwed.Novapoint arbeitet noch 16bit orientiert. Gleiches Bild wie im Anhang schickte ich an Vianova, dem Produzent... mal sehen welche Antwort da kommt Für mich stellt sich die Frage, dass wenn ich noch mit einem 16bit-programm arbeite, dann muss ich doch Acht geben auf zu lange Suchwege, d.h. volle 256 Zeichen darf ich nicht eingeben. Da arbeitet das System nicht rund - die Schwierigkeiten habe ich bereits (Systemcrahes öfters) cp Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
marc.scherer Ehrenmitglied V.I.P. h.c. CAD-Administrator
Beiträge: 2494 Registriert: 02.11.2001 Windows 10 64bit AutoCAD Architecture 2018/2019 (deu/eng) AEC-Collection 2019 (Revit und Zeugs) Wenn sich's nicht vermeiden läßt: D-A-CH Erweiterung (mies implementierter Schrott)
|
erstellt am: 04. Mrz. 2010 09:38 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Zitat: Original erstellt von cadplayer: ...dabei stosse ich auf 16bit - holla. Heisst das, das schwed.Novapoint arbeitet noch 16bit orientiert.
Hi, ich würde mal sagen: Nein 16bit Integer sagt nur etwas darüber aus, um welche "Art" von Integer es sich handelt bzw. wieviel unterschiedliche Werte hier gespeichert werden können: Zitat:
Wikipedia Zitat: A 16-bit integer can store 216 (or 65536) unique values.
Wenn der Entwickler nicht mehr als 16bit für den dort gespeicherten Wert benötigt, warum sollte er dann mehr Speicher bereitstellen. ------------------ Ciao, Marc [Diese Nachricht wurde von marc.scherer am 04. Mrz. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 04. Mrz. 2010 10:33 <-- editieren / zitieren --> Unities abgeben:
|
archtools Mitglied
Beiträge: 965 Registriert: 09.10.2004 Entwickler für AutoCAD, BricsCAD u.a., alle Systeme
|
erstellt am: 04. Mrz. 2010 20:26 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Zitat: Original erstellt von cadplayer: Das Thema "Polylines" ist einfach zu spannend, um es loszulassen. Deshalb hier mal wieder eine klitzekleine Frage zu den x-tensions.
Bei den Polylinien alten Typs ist aus meiner Sicht einer der ganz großen Vorteile, dass man an jeden einzelnen Vertex eigene Xdata hängen kann, um so die einzelnen Abschnitte zu markieren. Man kann damit dann analog zum Polymesh-Objekt komplizierte Objekte beispielsweise mit Inseln drin erzeugen, und kann dabei den Inseln auch noch Daten zuweisen - also beispielsweise ein Blech mit Ausschnitten, wobei jeder Ausschnitt einen Verweis auf einen Datensatz mit der Größe hat. Kann man eigentlich auch bei LWPolylinien einzelne Linienstücke darin unsichtbar machen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadplayer Ehrenmitglied CADniker
Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 05. Mrz. 2010 08:03 <-- editieren / zitieren --> Unities abgeben:
danke für eure Einträge, ich muss zugeben ich muss mich erstmal ein bissel mer kundig machen, d.h. zur Abwechlsung mal ein Buch in die Hand nehmen und zweitens Vianova im Stundentakt anrufen Gebe gern neues durch... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
marc.scherer Ehrenmitglied V.I.P. h.c. CAD-Administrator
Beiträge: 2494 Registriert: 02.11.2001 Windows 10 64bit AutoCAD Architecture 2018/2019 (deu/eng) AEC-Collection 2019 (Revit und Zeugs) Wenn sich's nicht vermeiden läßt: D-A-CH Erweiterung (mies implementierter Schrott)
|
erstellt am: 05. Mrz. 2010 09:43 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Zitat: Original erstellt von archtools: Kann man eigentlich auch bei LWPolylinien einzelne Linienstücke darin unsichtbar machen?
...Interessanter Denkanstoß... Gleich mal ausprobieren. Danke. ------------------ Ciao, Marc Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
archtools Mitglied
Beiträge: 965 Registriert: 09.10.2004 Entwickler für AutoCAD, BricsCAD u.a., alle Systeme
|
erstellt am: 05. Mrz. 2010 18:50 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
Zitat: Original erstellt von marc.scherer: [QUOTE]Original erstellt von archtools: Kann man eigentlich auch bei LWPolylinien einzelne Linienstücke darin unsichtbar machen?
...Interessanter Denkanstoß... Gleich mal ausprobieren. Danke. [/QUOTE] Da muss sich was geändert haben: bei alten Polylinien konnte man früher einzelne Vertices durch setzen von DXF-Gruppencode 60 auf 1 unsichtbar machen, aber das geht nicht mehr. Zwar wird ein so veränderter Vertex bei Aufruf von Befehl: LISTE als "unsichtbar" ausgegeben, aber in der Zeichnung ist er doch sichtbar. Schade. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 05. Mrz. 2010 18:57 <-- editieren / zitieren --> Unities abgeben: Nur für cadplayer
|