Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Objekteigenschaften

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
  
PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
Autor Thema:  Objekteigenschaften (1331 mal gelesen)
Goofy007
Mitglied
Vermessungstechniker


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

Beiträge: 578
Registriert: 06.11.2004

Map3D 2018 und Civil3D 2018

erstellt am: 01. Nov. 2005 17: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 Forum!

Ich möchte alle Eigenschaften eines beliebigen Objektes (zB. Linie, Text, ect.) mittels VBA exportieren.
Dafür kenne ich nun die Möglichkeit im Objektkatalog nachzuschauen welche Eigenschaften das Objekt hat, und diese dann mittels VBA abzufragen.
Da die Eigenschaften für jeden Objekttyp anders sind, muss ich nun für jeden Objekttyp eigenen Code schreiben.

Nun frage ich mich, bzw. euch: gibt es eine Möglichkeit alle Eigenschaften zu exportieren ohne zu wissen wie die Namen lauten.

Also etwas, was im Pseudecode etwa so aussieht:

für alle Eigenschaften dieses Objektes
  schreibe Eigenschaftenname und Eigenschaftenwert
nexte Eigenschaft

oder träume ich da, was ich eigentlich vermute, vom warmen Eislutscher? Ich möchte die Frage nur mal klären, bevor ich anfange eine Menge Code zu tippen!

mfg Didi

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

Stelli1
Moderator
Verm.-Ing.


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

Beiträge: 1526
Registriert: 17.08.2005

Map 2000-2014, Rasterdesign,
MapGuide, Autodesk Topobase,
VS6, VS.net 2013

erstellt am: 02. Nov. 2005 09: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 Goofy007 10 Unities + Antwort hilfreich

Hallo Didi,

mir wäre das hier nicht bekannt, dass man mit
"for each Property in Entity.Properties"
so was abfragen kann.

Einigermassen variable könnte man es so machen:
http://ww3.cad.de/foren/ubb/Forum259/HTML/000751.shtml#000004
Dann brauchst du pro Entity nur eine Auflistung der Properties erstellen und diese abarbeiten.

Dann stellt sich aber noch die Frage nach dem Sinn. Es sind ja nicht alle EIgenschaften so flac wie "Layer" oder  "Color".
z.B. Blockreferenz hat Einfügepunkt in 3D, LWPolyline hat x-Stützpunkte in 2D, Ein Block kann Attribute haben.
Wenn man das Ganze wie eine Wurst in eine Datei schreibt, kann da eh keiner was mit machen.
Eigentlich muss man es doch sowieso in eine Struktur bringen. Ich glaube dann sind die verschiedenen Properties das kleinste Problem.

Also: kalter Eislutscher und beim tippen warm werden lassen.
Ist doch fast so wie du es willst.

Stelli


------------------
Warum lisp'eln wenn's auch anders geht.

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

Goofy007
Mitglied
Vermessungstechniker


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

Beiträge: 578
Registriert: 06.11.2004

Map3D 2018 und Civil3D 2018

erstellt am: 02. Nov. 2005 19:59    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 Stelli,

ja du hast recht, fast so wie ich es will.
Danke!

mfg Didi

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

fuchsi
Mitglied
Programmierer c#.net Datawarehouse


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

Beiträge: 1201
Registriert: 14.10.2003

AutoCad Version 2012 deu/enu
<P>Windows 7 64bit

erstellt am: 09. Nov. 2005 13:02    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 Goofy007 10 Unities + Antwort hilfreich

eine auswertbare Auflistung der möglichen Eigenschaften gibts meiner Meinung nach nicht.
Du wirst da eher Elementtyp für Elementtyp abarbeiten müssen

In etwa so:


Sub test()

    Dim n1 As AcadEntity
    For Each n1 In ThisDrawing.ModelSpace
        debug.print n1.layer
        Select Case TypeName(n1)
        Case "IAcadLine"
            Dim tmpLine As AcadLine
            Set tmpLine = n1
            Debug.Print , tmpLine.StartPoint(0)
            Debug.Print , tmpLine.StartPoint(1)
            Debug.Print , tmpLine.StartPoint(2)
            Debug.Print , tmpLine.EndPoint(0)
            Debug.Print , tmpLine.EndPoint(1)
            Debug.Print , tmpLine.EndPoint(2)
        Case "IAcadCircle"
            Dim tmpCircle As AcadCircle
            Set tmpCircle = n1
            Debug.Print , tmpCircle.Center(0)
            Debug.Print , tmpCircle.Center(1)
            Debug.Print , tmpCircle.Center(2)
            Debug.Print , tmpCircle.Radius
        End Select
    Next
End Sub

------------------

Ing. Anton Fuchs
WWW.FFZELL.AT.TC

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)2025 CAD.de | Impressum | Datenschutz