Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Blockattribute

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
Autor Thema:  Blockattribute (1608 mal gelesen)
Kelme
Mitglied



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

Beiträge: 33
Registriert: 16.03.2004

erstellt am: 06. Mai. 2004 10:55    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

Hy,

Wie kann man die Attribute von verschachtelten Blöcken auslesen?


MfG

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

cadffm
Moderator
良い精神




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

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 06. Mai. 2004 10:57    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 Kelme 10 Unities + Antwort hilfreich

Ab AutoCAD2002 ganz einfach mit der Attributextr. (_EAttExt) ...

------------------
- Sebastian -

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

Kelme
Mitglied



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

Beiträge: 33
Registriert: 16.03.2004

erstellt am: 06. Mai. 2004 10: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

Und per Programmierung?

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

Brischke
Ehrenmitglied V.I.P. h.c.
CAD on demand GmbH



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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 06. Mai. 2004 11:03    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 Kelme 10 Unities + Antwort hilfreich

Hallo Kelme,

ja auch per Programmierung.
Wenn das in verschachtelten Blöcken ist, musst du in die Blockdefinition rein und von den darin befindlichen INSERTS die Attribute auslesen.

Was hast du konkret vor? Wenn du dann noch die Anzahlen haben möchtest, dann musst du die Anzahl Blockreferenzen der übergeordneten Blöcke zählen. Wenn das mehrfach verschachtelt ist, kann das ein ganz schönes 'Gewusele' werden.

Bei Fragen ...

Grüße Holger

------------------
Holger Brischke
(defun - Lisp over night!
AutoLISP-Programmierung für AutoCAD
Da weiß man, wann man's hat!

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

Kelme
Mitglied



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

Beiträge: 33
Registriert: 16.03.2004

erstellt am: 06. Mai. 2004 12:32    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

Ich möchte die Attribute eines Blockes per VBA auslesen. Der Block ist aber bereits in eine andere Zeichnung eingefügt.

Wenn ich versuche die Attribute auszulesen, wie ich es mache, wenn ich die Blockzeichnung direkt geöffnet habe, findet er immer keine.

Das Ziel am Ende soll es sein, an Hand externer Daten eine Zeichnung zu erstellen, die aus lauter importierten Blöcken besteht. Danach soll zu dieser Zeichnung eine Stückliste erstellt werden. Dafür muß ich aber an die Attribute zu den Blöcken ran.


Ciao

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

Brischke
Ehrenmitglied V.I.P. h.c.
CAD on demand GmbH



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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 06. Mai. 2004 12:39    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 Kelme 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Kelme:
Ich möchte die Attribute eines Blockes per VBA auslesen.

VBA also, gut dass das jetzt auch mal gesagt wurde, ändert allerdings am Prinzip nichts.

Zitat:
Original erstellt von Kelme:
Wenn ich versuche die Attribute auszulesen, wie ich es mache, wenn ich die Blockzeichnung direkt geöffnet habe, findet er immer keine.

Was ist für dich eine Blockzeichnung?

Zitat:
Original erstellt von Kelme:
Das Ziel am Ende soll es sein, an Hand externer Daten eine Zeichnung zu erstellen, die aus lauter importierten Blöcken besteht. Danach soll zu dieser Zeichnung eine Stückliste erstellt werden. Dafür muß ich aber an die Attribute zu den Blöcken ran.


Das ist genau der Zustand, wofür ich in meinem vorherigen Posting das Prinzip beschrieben habe. In VBA heißen die Inserts allerdings dann BlockReference.

Wo ist jetzt noch das Problem .. bei der Programmierung selbst?

Grüße Holger

------------------
Holger Brischke
(defun - Lisp over night!
AutoLISP-Programmierung für AutoCAD
Da weiß man, wann man's hat!

[Diese Nachricht wurde von Brischke am 06. Mai. 2004 editiert.]

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

Kelme
Mitglied



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

Beiträge: 33
Registriert: 16.03.2004

erstellt am: 06. Mai. 2004 12:54    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

Zunächst einmal Entschuldigung dafür, das ich da noch einige AutoCadlücken aufweise.
Habe das Projekt übergeholfen bekommen, ohne mich je mit AutoCad beschäftigt zu haben.

Mit Blockzeichnung meinte ich jetzt die *.dwg, in der mein jeweiliges Element drin ist. (BSP: knopf.dwg besteht aus einem Knopf mit Attributen Teilenummer, Farbe etc.)Von diesem kann ich ja auch die Attribute mit VBA auslesen.
Über einfügen -> Block kann ich diese Zeichnung doch als Block ? in eine andere Zeichnung einfügen, oder? Und so wird aus vielen einzelnen mal eine große. (z.B. mehrere Knöpfe )
Und jetzt weiß ich nicht worin sich der Code prinzipiell unterscheiden muß, beim Auslesen aus der Zeichnung mit einem Element und der mit allen Elementen.

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

Brischke
Ehrenmitglied V.I.P. h.c.
CAD on demand GmbH



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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 06. Mai. 2004 13:07    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 Kelme 10 Unities + Antwort hilfreich

Hallo Kelme,

kein Problem, es ist nur schwierig zu helfen, wenn man (warum auch immer) nicht die konkreten Informationen hat.

Man muss ganz hart unterscheiden zwischen einem Blockdefinition und und einer Blockreferenz!
Innerhalb einer Blockdefinition gibt es nur Attributdefinitionen. Diese Attdefs werden, sobald dieser Block in der Zeichnung eingefügt wird, dann also eine Blockreferenz ist, zu Attributreferenzen.

Attributreferenzen sind somit die Elemente, welche du auslesen möchtest.
Theoretisch solltest du die Knopfzeichnung als Blockdefinition speichern, also so, dass die Attributdefinitionen und keine Attributdefinitionen vorhanden sind.
Dann kannst du diese auch in der VielKnöpfeZeichnung mit GetAttributes abfragen.
Wird das nun noch mehr verschachtel, also die VieleKnöpfeZeichnung in eine BüroMitVielenSchränkenZeichnung eingefügt, dann musst du, um die korrekten Werte ermitteln zu können, zunächst den Block VieleKnöpfeZeichnung durchlaufen und wenn du auf den Block Knopf stößt mit GetAttributes die Werte ermitteln. Um die Stückzahl zu erhalten ist dann die Anzahl der Blockreferenzen der VieleKnöpfeZeichnung in der BüroMitVielenSchränkenZeichnung zu ermitteln und diese mit der Anzahl der Knöpfe in der VieleKnöpfeZeichnung multiplizieren.

Soweit das Prinzip.

Grüße Holger

------------------
Holger Brischke
(defun - Lisp over night!
AutoLISP-Programmierung für AutoCAD
Da weiß man, wann man's hat!

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

Kelme
Mitglied



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

Beiträge: 33
Registriert: 16.03.2004

erstellt am: 06. Mai. 2004 13: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

Na das ist doch mal ein Ansatz.

Dank Dir!

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