| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Attribut Layer ändern (6237 mal gelesen)
|
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 08:18 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe, ohne mich damit gut auszukennen, ein Schriftfeld mittels Attributen und Blöocken erstellen wollen. Jetzt nachdem ich über 200 Schriftfelder (m² und Nutzung) in der Zeichnung habe, habe ich festegestellt das mein Text auf dem falsche Layer liegt. Ergo: beim Ausblenden von den Flächengrenzen sind dann auch die Texte nicht mehr sichtbar. Kann man nachträglich die Layerzuweisung eines im Block enthalteneden Attributes ändern? Ich bin wie folgt vorgegangen: 1. Attribut definieren. 2. Rahmen zeichnen. 3. Aus dem Schriftfeld ein Block erzeugt. Ich habe anfangs alles auf den selben Layer erzeugt. Nun habe ich nachträglich im Blockeditor alles in eigenständige Layer unterteilt. Z.B. den Rahmen auf Layer Rahmen und die m² Angabe auf Layer qm. Trotzdem bleibt nach Änderung des Blockes der Text auf dem zuerst zugewiesenen Layer. Ich will jetzt nicht das Schriftfeld komplett neu erzeugen und alle 200 Einträge nochmal vergeben. Kennt ihr da eine Lösung. Danke
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 25. Mrz. 2010 08:19 <-- editieren / zitieren --> Unities abgeben: Nur für Rick vs. ACAD Map 3D 2010
|
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 08:24 <-- editieren / zitieren --> Unities abgeben:
_attsync kenne ich bislang noch nicht. ATTSYNC Block QM? (J/N) ? Welche Auswrikung hat dieser Befehl? Beim bestätigen werden die Texte gelöscht. [Diese Nachricht wurde von Rick vs. ACAD Map 3D 2010 am 25. Mrz. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 25. Mrz. 2010 08:27 <-- editieren / zitieren --> Unities abgeben: Nur für Rick vs. ACAD Map 3D 2010
|
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 08:30 <-- editieren / zitieren --> Unities abgeben:
Sie können auch ATTSYNC verwenden, um die Attributeigenschaften in Blockreferenzen zu aktualisieren, damit sie mit der Blockdefinition übereinstimmen, oder um eine Blockinstanz nach den Neudefinieren eines Blockattributs mithilfe vonBLOCK, -BLOCKoderBBEARB zu aktualisieren. OK ja die F1 Taste hatte geklemmt Wie bekomme ich nun meine gelöschten Werte wieder? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 25. Mrz. 2010 08:32 <-- editieren / zitieren --> Unities abgeben: Nur für Rick vs. ACAD Map 3D 2010
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 25. Mrz. 2010 08:37 <-- editieren / zitieren --> Unities abgeben: Nur für Rick vs. ACAD Map 3D 2010
Mal ne generelle Info: Attribute (ATTRIB) sind an Blockreferenzen gebundene Textobjekte, die nachträglich verändert werden können, ohne die Blockreferenz aufzulösen. Basis der Attribute sind die Attributdefinitionen (ATTDEF) im Blockcontainer. Das sind ebenfalls Textobjekte mit besonderen zusätzlichen Eigenschaften hinsichtlich ihrer Visualisierung. Für diese sind neben der Systemvariable ATTMODE die Eigenschaften KONSTANT und UN SICHTBAR verantwortlich. Eine Attributdefinition mit der Eigenschaft KONSTANT generiert bei der Blockeinfügung kein Attribut, sondern verhält sich wie ein Text im Block, reagiert aber auf die Einstellung von ATTMODE und die Eigenschaft UNSICHTBAR. Nicht-KONSTANTE Attributdefinitionen werden beim Einfügen einer Blockreferenz gar nicht visualisiert. Stattdessen werden Attributobjekte von den Attributdefinitionen abgeleitet und als Unterobjekte der Blockreferenz erzeugt. Auch hier hat die Einstellung von ATTMODE und die Eigenschaft UNSICHTBAR Einfluss darauf, ob das Attribut in der Zeichnung angezeigt wird oder nicht. Auch wenn die Attributdefinitionsobjekte im Blockcontainer dazu verwendet werden, die Attribute der Blockreferenz anzulegen, sind Attribut und Definition anschließend nicht mehr miteinander verbunden und Eigenschaften des Attributes können unabhängig ihrer Vorgaben verändert werden. Mit dem Autocad-Befehl ATTSYNC können die Attributeigenschaften jedoch wieder auf die Eigenschaften der Attributdefinition zurückgesetzt werden. Für die direkte Bearbeitung der Attribute stellt Autcad die Befehle _EATTEDIT und _BATTMAN zur Verfügung.
------------------ - 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 |
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 08:39 <-- editieren / zitieren --> Unities abgeben:
Nach dem ich _attsync ausgeführt habe und die Text gelöscht wurden, habe ich mir den Block über den Blockeditor geöffnet um die Attributdefinition zu überprüfen. Hier sind die Einstellungen unverändert. Das der Text auf einen anderen ausgeblendeten Layer verschoben wird trift hier nicht, da alle Layer eingeblendet sind. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 25. Mrz. 2010 08:42 <-- editieren / zitieren --> Unities abgeben: Nur für Rick vs. ACAD Map 3D 2010
|
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 08:56 <-- editieren / zitieren --> Unities abgeben:
|
Ex-Mitglied
|
erstellt am: 25. Mrz. 2010 09:18 <-- editieren / zitieren -->
Hi, selbst ausgetrickst. In der Blockdefinition zuvor hattest Du 2 Attribute mit der gleichen Bezeichnung '00E'. Das mag kein Automatismus und schon gar kein _ATTSYNC. Anders gelesen hast Du einen Block, indem - im Attribut '00E': der Wert '435 E' gespeichert ist und - im Attribut '00E': der Wert '500 EGW' gespeichert ist Jetzt siehst Du, dass die Eindeutigkeit der Werte schon beim Lesen schwer ist, noch schwerer ist es jetzt einen Automatismus drüberfahren zu lassen. Es muss ein Tool her, das Dir die Attributsbezeichnungen in den BlockReferenzen (Blockeinfügugen) umdreht, mit _ATTSYNC geht das nicht. Bin mir auch nicht sicher (probiers bitte und berichte), ob BATTMAN da hilft. - alfred - ------------------ www.hollaus.at [Diese Nachricht wurde von a.n. am 25. Mrz. 2010 editiert.] |
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 09:35 <-- editieren / zitieren --> Unities abgeben:
das gilt nur für den einen Block. Wenn ich den einen Block, bei dem dein beschriebens Problem auftritt, über BATTMAN öfnne, dann sind die Werte lt Beschreibung unterschiedlich. Einmal 00E und einmal +00E oder erkannt er das "+" nicht als Zeichen an? Das erklärt warum die Texte im Attributeditor rot dargestellt werden. Aber wie kann ich die nun die Layer der Texte neu zuweisen oder von den alten Layern trennen.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 09:44 <-- editieren / zitieren --> Unities abgeben:
ahh..ok, nach dem ich _attsync ausgeführt habe sind nun Bezeichnungen aktualisiert worden und somit ist die doppelte Definition auch raus. Problem aber ist das nach _attsync auch die Texte weg sind. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 25. Mrz. 2010 09:44 <-- editieren / zitieren --> Unities abgeben: Nur für Rick vs. ACAD Map 3D 2010
|
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 09:52 <-- editieren / zitieren --> Unities abgeben:
Ich verstehe das nicht warum werden nach dem _attsync nur die 00E und +00E gelöscht aber nicht die Bezeichnung der Fläche. Warum werden dann nicht alle Texte gelöscht? Das tritt ja bei beiden Blöcken gleichermaßen auf. Ich ahne schön böses, dass ich alle Werte manuell wieder eintippen muß Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 25. Mrz. 2010 09:57 <-- editieren / zitieren -->
Hi, >> Einmal 00E und einmal +00E oder erkannt er das "+" nicht als Zeichen an? Nee, das PLUS darin ist lediglich die Hervorhebung, dass es ein gleichnamiges Attribut gibt, das PLUS-Zeichen ist nicht Bestandteil der Attributsbezeichnung. >> warum werden nach dem _attsync nur die 00E und +00E
Weil sich das AutoCAD hier nicht mehr auskennt. Beispiel: Du bist Lehrer und hast 2 Schüler mit dem Namen SCHLUMPF, Du wertest die Schularbeit aus und bei jeder Schularbeit steht oben der Nachname des Schülers, einer schreibt eine 1, der andere eine 5 ==> welche Note schreibst Du jetzt in Deine Aufzeichnungen zu SCHLUMPF Georg und welche Note zu SCHLUMPF Walter? Und genau vor dem Problem steht auch AutoCAD. - alfred - ------------------ www.hollaus.at |
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 10:11 <-- editieren / zitieren --> Unities abgeben:
Ok jetzt habe ich das eine 00E gennant und das andere zusätzl_00E. Die Änderung wird aber erst nachdem _attsync für alle übernommen. Ich habe noch einen dritten Block bei dem konnte ich nachträglich alle Layer des Blockes neu zuweisen. Jetzt frage ich mal konkret. Die Beezichnung der Attribute, falls doppelt vergeben, hat was mit der Neuzuweisung der Attributlayer zutun. Also, solange die Attribute intern im Block einen Fehler haben können diese auch nicht auf einen anderen Layer verschoben werden. Das hat hat zur folge das man erst den Fehler beheben muss, ihn dann mit _attsync auf alle anderen überträgt wobei alle Werte flöten gehen, um dann alle Werte manuell nachtragen. Das mit der doppelten Bezeichnung ist aber bnur bei einem Block. Was ist mit dem anderen Blcok wo dieses Problem nicht besteht? Warum werden dort die Texte gelöscht? [Diese Nachricht wurde von Rick vs. ACAD Map 3D 2010 am 25. Mrz. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 25. Mrz. 2010 10:21 <-- editieren / zitieren -->
Hi, weil bald Wochenende ist: beiliegend ein kleines Makro: Vorgehensweise: das DVB-File vom Windows-Explorer per Drag&Drop in den Graphikbereich von AutoCAD ziehen und fallen lassen (damit wird das DVB-File geladen). Dann kannst Du in dem DVB-File Deine Vorgaben einstellen (Blockname, neue Attributsbezeichnung, Layer des Attributs, ...), dieses machst Du per Befehl VBAIDE, dann in der Projektübersicht ein Doppelklick auf 'ThisDrawing', das öffnet den Code und in diesem ganz oben darfst Du in diesen Zeilen ändern (aber mit Vorsicht!)
Code: Const BlockName As String = "Einzugsgebiet zusätzl. E" 'der Blockname, für den die Attribute umgedreht werden sollen Const AttName As String = "00E" 'die Attributsbezeichnung im Block Const AttIndex As Integer = 2 'das zweite Vorkommen dieses Attributs Const AttNewName As String = "00E2" 'der Name des Attributs, auf den es in der BlockReferenz geändert wird Const DestLayerName As String = "0" 'der Layer muss in der Zeichnung bestehen
Und sind die Änderungen abgeschlossen, wechselst Du wieder ins AutoCAD-Fenster: Befehl: _-VBARUN Makroname: AttRefNamesKorr Dieses korrigiert in allen Blockeinfügungen (mit obigen Voreinstellungen) das zweite Attibut mit der Bezeichnung '00E' auf die Bezeichnung '00E2' und ändert gleichzeitig den Layer dieser Attributreferenz auf '0' Um die Blockdefinition musst Du Dich aber selbst kümmern, dass für weitere Einfügungen das Attribut dann von vornherein richtig benannt ist. VORSICHT: dieses Tool ist nicht ausreichtend getestet, vorher sichern, nachher kontrollieren Für alle, die dieses Tool probieren/verwenden wollen nur nochmals als Hinweis: die Voreinstellungen beziehen sich auf obige Zeichnung, für die eigenen Zeichnungen sind entsprechend die Vorgabewerte anzupassen! - alfred - ------------------ www.hollaus.at |
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 10:28 <-- editieren / zitieren --> Unities abgeben:
oh danke ich werde es gleichmal testen und bereichten.. hier nochmal eine zeichnung mit den 2 nicht funktionierden Blöcken und einem Block der funktioniert. beide sind mit den selben Einstellungen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 25. Mrz. 2010 10:35 <-- editieren / zitieren -->
Hi, nur mal einer: Block ganz links: in der Einfügung hast Du ein Attribut namens '00', in der Definition gibt es kein Attribut mit dieser Bezeichnung, also verschwindet das aus der Einfügung, AutoCAD vermutet, dass das Attribut '00' aus der Blockdefinition gelöscht wurde, also wird es bei ATTSYNC aus den Blockeinfügungen entfernt ==> Text pfutsch. Obiges Tool richtig angewendet löst Du auch dieses Problem. - alfred - ------------------ www.hollaus.at |
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 10:53 <-- editieren / zitieren --> Unities abgeben:
so ich habe deinen Text genommen und ihn bearbeitet sieht dann so aus wie im angefügtem bild. ich will im Block "Einzugsgebiet zusätzl. E" das momentane Attribut "+00E" in "zusätzl_00E" ändern das Attribut soll dann auf den Layer "Schriftfeld_Einwohnerzahl". Soweit richtig? Habe das dann unter AttRefNamesKorr.dvb gespeichert und wollte wie beschrieben in Autocad unter _-vbarun das Makro AttRefNamesKorr öffnen. Hier kommt die Meldung konnte Makro nicht finden.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 25. Mrz. 2010 11:02 <-- editieren / zitieren -->
Hi, >> Hier kommt die Meldung konnte Makro nicht finden.hast Du den Screenshot nachbearbeitet und den Code weiß anmalen lassen? Sonst hätte ich keine Erklärung dafür, weder für den Fehler, noch wieso im Code-Screenshot nichts sonst zu sehen ist. Grundsätzlich: - Attributsbezeichnungen in Blockbuchstaben, Du bekommst sonst bei älteren AutoCAD-Versionen ein Problem mit EATTEXT - hüte Dich vor Sonderzeichen (Blocknamen, Attributsbezeichnungen, ...) Umlaute, scharfes s (ß), Leerschritte sollten da vermieden werden. - alfred - ------------------ www.hollaus.at |
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 11:08 <-- editieren / zitieren --> Unities abgeben:
nein ich dachte was da in rot steht ist lediglich die Beschreibung dessen was ich in die erste Spalte eintragen soll. Wenn ich deinen Text dort einfüge kommt selbe Meldung "Konnte Makro nicht finden" Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 25. Mrz. 2010 11:19 <-- editieren / zitieren -->
Hi, bitte von Anfang an lesen. Ich habe damit begonnen:
Vorgehensweise: das DVB-File vom Windows-Explorer per Drag&Drop in den Graphikbereich von AutoCAD ziehen und fallen lassen (damit wird das DVB-File geladen). Ohne diesem wird das Makro nicht geladen. Meine Auflistung der Einstellungsmöglichkeiten sollten Dir (und anderen) nur zeigen, was einstellbar ist. Dieser Teil ist aber schon im Makro enthalten (wenn Du es lädst). - alfred - ------------------ www.hollaus.at |
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 11:27 <-- editieren / zitieren --> Unities abgeben:
ja das hatte ich ebenfalls getan. ich habe jetzt auf das playzeichen gedrückt und mir ein makro erstellen lassen und das AttRefNamesKorr bennant nun erkennt er auch das makro. aber es hat sich bei der ausführung nix getan. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 25. Mrz. 2010 11:31 <-- editieren / zitieren -->
Hi, sorry, meine Beschreibungen mögen nicht gut genug sein , nur besser kann ich es leider nicht. Mit Deiner ersten Zeichnung und meinem Makro und der beschriebenen Vorgehensweise wurde das zweite Attribut '00E' umbenannt und auf einen anderen Layer gelegt. Sprich den beschriebenen Befehl _-VBARUN ... gestartet, dann einen Doppelklick auf den Block, um zur Attributsbearbeitung zu kommen und da sah ich, dass die Änderungen durchgeführt wurden. - alfred - ------------------ www.hollaus.at |
Rick vs. ACAD Map 3D 2010 Mitglied Bauleiter, Tiefbau
Beiträge: 396 Registriert: 21.09.2009 AutoCad 3d Map 2015 BBSoft 2015 Windows 7 i5 3330 3,2 GHz 8 GB RAM NVidia Quadro K600 2x26" LCD
|
erstellt am: 25. Mrz. 2010 11:45 <-- editieren / zitieren --> Unities abgeben:
|