| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | Exklusives EDU-Programm für RTX PRO Blackwell, eine Pressemitteilung
|
Autor
|
Thema: Linientypdefinition mit VLISP ermitteln (483 mal gelesen)
|
Andreas Kraus Ehrenmitglied Elektrotechniker
    
 Beiträge: 1517 Registriert: 11.01.2006 WIN 11 ACAD 2022 BricsCAD V25.1.07
|
erstellt am: 03. Jul. 2009 17:36 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen, wenn ich das mache: (vlax-for lt (VLA-GET-LINETYPES (vla-get-activedocument (vlax-get-acad-object)) ) (vlax-dump-object lt) ) bekomme ich z.B. sowas: ; IAcadLineType: Die Linieneigenschaften bestehend aus Kombinationen von Strichen, Punkten und Leerzeichen ; Eigenschaftswerte: ; Application (RO) = #<VLA-OBJECT IAcadApplication 0000000140d1fc38> ; Description = "Punkt (2x) . . . . . . . . . . . . " ; Document (RO) = #<VLA-OBJECT IAcadDocument 0000000037de4860> ; Handle (RO) = "125153" ; HasExtensionDictionary (RO) = 0 ; Name = "PUNKTX2" ; ObjectID (RO) = 111 ; ObjectID32 (RO) = 111 ; ObjectName (RO) = "AcDbLinetypeTableRecord" ; OwnerID (RO) = 107 ; OwnerID32 (RO) = 107 Wo find ich denn da die Musterdefinition ? Ich möchte über ODBX Linientypen aus XREFS in der aktuellen Zeichnung aktualisieren. Also hab ich mir gedacht ich nehm einfach die Definition und kopier die. Ich find aber nix Oder bin ich einfach nur zu blind ? ------------------ Gruß Andreas http://kraus-cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung und AutoLISPler
    
 Beiträge: 1781 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 03. Jul. 2009 18:04 <-- editieren / zitieren --> Unities abgeben:          Nur für Andreas Kraus
Hallo Andreas, ich würde die Linientypen von VLA nach Entity bringen und dann über entmake, wenn noch nicht vorhanden, neu erzeugen. Code:
(defun c:test (/ N LTYPES ltype_listen_fuer_entmake temp) (if (setq ltypes (VLA-GET-LINETYPES (vla-get-activedocument (vlax-get-acad-object)))) (vlax-for item ltypes (setq ltype_listen_fuer_entmake (cons (entget (vlax-vla-object->ename item)) ltype_listen_fuer_entmake)) (setq n (+ n 1))) ) (mapcar '(lambda(A) (if (not (tblsearch (cdr(assoc 2 (setq temp (vl-remove-if '(lambda(A) (member (car A)'(-1 330 5))))))))) (entmake temp))) ltype_listen_fuer_entmake))
Gestestet habe ich nichts, ist nur schnell getippt. ------------------ viele Grüße Jörn http://www.bosse-engineering.com [Diese Nachricht wurde von joern bosse am 03. Jul. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13533 Registriert: 30.11.2003 .
|
erstellt am: 03. Jul. 2009 18:39 <-- editieren / zitieren --> Unities abgeben:          Nur für Andreas Kraus
Zitat: Original erstellt von Andreas Kraus: Hallo zusammen, wenn ich das mache:(vlax-for lt (VLA-GET-LINETYPES (vla-get-activedocument (vlax-get-acad-object)) ) (vlax-dump-object lt) ) bekomme ich z.B. sowas: ; IAcadLineType: Die Linieneigenschaften bestehend aus Kombinationen von Strichen, Punkten und Leerzeichen ; Eigenschaftswerte: ; Application (RO) = #<VLA-OBJECT IAcadApplication 0000000140d1fc38> ; Description = "Punkt (2x) . . . . . . . . . . . . " ; Document (RO) = #<VLA-OBJECT IAcadDocument 0000000037de4860> ; Handle (RO) = "125153" ; HasExtensionDictionary (RO) = 0 ; Name = "PUNKTX2" ; ObjectID (RO) = 111 ; ObjectID32 (RO) = 111 ; ObjectName (RO) = "AcDbLinetypeTableRecord" ; OwnerID (RO) = 107 ; OwnerID32 (RO) = 107 Wo find ich denn da die Musterdefinition ? Ich möchte über ODBX Linientypen aus XREFS in der aktuellen Zeichnung aktualisieren. Also hab ich mir gedacht ich nehm einfach die Definition und kopier die. Ich find aber nix Oder bin ich einfach nur zu blind ?
gar nicht, das war (leider) noch nie in ActivX implementiert..da bleibt nur der Weg über die GC-Liste um an infos zu kommen .. Linientypen importieren geht aber über dbx ------------------ - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |

| |
Andreas Kraus Ehrenmitglied Elektrotechniker
    
 Beiträge: 1517 Registriert: 11.01.2006 WIN 11 ACAD 2022 BricsCAD V25.1.07
|
erstellt am: 06. Jul. 2009 09:20 <-- editieren / zitieren --> Unities abgeben:         
Danke ihr beiden ! Schade daß das nicht drinn ist. Ist ja schon schlimm was sich inzwischen so an fehlenden Dingen jeglicher Art angesammelt hat. Sind die bei Autodesk inkonsequent, schusselig, blind, faul oder war da einfach nur Feierabend und am nächsten Tag hat keiner mehr daran gedacht ? (Tschuldigung, aber ich hab halt für sowas kein Verständniss) ------------------ Gruß Andreas http://kraus-cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |