| | ![](https://ww3.cad.de/php/image.php?resolution=width:20050) | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | | ![](https://ww3.cad.de/php/image.php?resolution=width:16196) | PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: dynamischer Block (913 / mal gelesen)
|
otm Mitglied Bauingenieur
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für otm](/foren/ubb/pmimages/gbu.gif) Beiträge: 184 Registriert: 26.08.2009 MS Win 10 AutoCAD Civil 3D 2023.2.1 Update VBA Enabler 2019 MS Access Database Enginge X64 MSO 365 (64bit)
|
erstellt am: 15. Mrz. 2022 18:28 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
Hallo Forum, ich habe ein VBA-Makro geschrieben, das mir meine Blockbibliothek säubert. Dabei werden alle DWGs geöffnet und unter anderem unbenannte Blöcke in benannte umgewandelt und diese dann über bereinigen beseitigt. Kann es sein, dass dynamische Blöcke mit unbenannten Blöcken arbeiten und die Dynamik verloren geht, wenn man so vorgeht? Oder, wo werden diese dynamischen Eigenschaften gespreichert? Und, wie kann man nach dem Öffnen der DWG abfragen, ob es sich um einen dynamischen Block handelt? ------------------ Grüße aus München Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
![](/foren/avatars/KlaK.gif)
![Schreiben Sie einen Gästebucheintrag für KlaK](/foren/ubb/pmimages/gbu.gif) Beiträge: 2789 Registriert: 02.05.2006 AutoCAD LandDesktop R2 bis 2004 Civil 3D 2005 - 2022 Plateia, Canalis Visual Basic
|
erstellt am: 17. Mrz. 2022 17:46 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
Hallo Christian, So etwas ähnliches hatten wir schon mal ... Ja, referenzierte dynamische Blöcke werden unbenannte Blöcke. Testen kannst Du das über: If BlockReference.IsDynamicBlock = True den Ausgangsnamen des Blocks bekommst Du dann über BlockReference.EffectiveName Kannst Du denn überhaupt einen dynamischen Block als reine Zeichnung speichern? Ich arbeite nicht mit dynamischen Blöcken aber nachdem die Parametereinträge tabellenartig sind kann ich mir das nicht vorstellen. Für Attribute gibt es Darstellungselemente aber für Aktionen? Grüße Klaus Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
otm Mitglied Bauingenieur
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für otm](/foren/ubb/pmimages/gbu.gif) Beiträge: 184 Registriert: 26.08.2009 MS Win 10 AutoCAD Civil 3D 2023.2.1 Update VBA Enabler 2019 MS Access Database Enginge X64 MSO 365 (64bit)
|
erstellt am: 18. Mrz. 2022 23:31 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
Hallo Klaus, danke für die Hinweise. Wir speichern einen dynamischen Block in einer Zeichnung, fügen die Zeichnung als Block ein und sprengen sie. Damit kann ich den dynamischen Block wie eine Zeichnung als Block einfügen und habe nach dem Einfügen und dem Sprengen wieder den dynamischen Block in meiner aktuellen Zeichnung und kann ihn dann dynamisch verändern. Ich vermute, dass sich die DWG mit dem dynamischen Block in der Blockbibliothek verändert, wenn ich automatisiert mit einem Säuberungsprogramm in dem CAD-Wiesels 'benennUBL' Programm enthalten ist, drüber gehe. Deshalb muss ich vorher testen, ob es ein dynBlock ist und dann nicht mit benennUBL drübergehen. Mal sehen, wie das funktioniert. Dir aber nochmal danke für die Hilfe, das passt erst mal. ------------------ Grüße aus München Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rexxitall Mitglied Dipl. -Ing. Bau
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für rexxitall](/foren/ubb/pmimages/gbu.gif) Beiträge: 270 Registriert: 07.06.2013 Various: systems, Operating systems, cad systems, cad versions, programming languages.
|
erstellt am: 22. Mrz. 2022 23:32 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
Autocad setzt dynamische Block Instanzen als "*U" Blockreferenzen in die Zeichnung. Als Kopie mit allem was dazu gehört. Man kann die Parameter dieser Blöcke ja auslesen. Was bei statischen Blöcken nicht ginge. Wenn du die Blöcke speichern willst must du wenn die Blockdatenbank bemühen.Thisdrawing.blocks.item(... Die Blöcke haben übrigens auch die Eigenschaft "isdynamicBlock" Gehst du nur oberflächlich über die Zeichnung mittels der Blockreferenzen erwischt du Blöcke nicht die nicht in der Zeichnung abgelegt wurden aber vorhanden sind. Und irgend ein 0815 Tool mag die Unterschiede gar nicht kennen und schreibt dann die erste Kopie raus die es findet. Wenn es nichts von dynamischen Parametern weis und mit Thisdrawing.copyobjects nur mit den Eigenschaften arbeitet die es kennt, war es das denn für die dynamic. Entweder die Blocknamen ermitteln (*U,*d etc kannst du getrost ignorieren) und mit thisdrawing.sendcommand "Wblock" auf die Platte schreiben oder eine (für jeden Block) Zeichnung auf der Platte anlegen und dort ohne Rücksicht auf Verluste alles mit copyObject rein kopieren. Die Parameter bleiben so intakt und der Block dynamisch. Spannend wird es in jedem Fall bei verschachtelten Blöcken. Ich bin ja eher ein Fan davon den Blöcken gleich gescheite Namen zu geben. Block Namen in der Block Datenbank ändern und danach ein _REGEN per sendcommand. Sonst hast du jede Menge Blockfragmente und musst dir erst mal überlegen was für ein geniales Konstruktionselement dieses nun schon wieder war... ------------------ Wer es nicht versucht, hat schon verlorn ![](/foren/ubb/biggrin.gif) Und bei 3 Typos gibts den vierten gratis ! <<< not for sale ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
![](/foren/avatars/cadffm.gif)
![Schreiben Sie einen Gästebucheintrag für cadffm](/foren/ubb/pmimages/gbu.gif) Beiträge: 22171 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 23. Mrz. 2022 10:20 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
Hi Christian, darf ich mal "nachfragen"? >>"Dabei werden alle DWGs geöffnet und unter anderem unbenannte Blöcke in benannte umgewandelt" Warum? Unbenannte sollten dich nicht interessieren!? (Tabellen, alte Schraffuren, Bemaßungen, Anordnungen.. bis zu dynamischen Blockvarianten) >>"und diese dann über bereinigen beseitigt." Unbenannte Blöcke sollten automatisch bereinigt werden, geschieht dies nicht, so gibt es IMHO eine "Verknüpfung" die dies verhindert. Klappt das bereinigen vorher nicht, nach umbenennen über das Tool aber schon(also den neuen benannten Block bereinigen), oder bereinigst du dann die Unbenannten? >>"Wir speichern einen dynamischen Block in einer Zeichnung, fügen die Zeichnung als Block ein und sprengen sie. Damit kann ich den dynamischen Block wie eine Zeichnung als Block einfügen und habe nach dem Einfügen und dem Sprengen wieder den dynamischen Block in meiner aktuellen Zeichnung und kann ihn dann dynamisch verändern."
"Wie" fügst du denn die DWG ein dass dieser Weg gewählt wird? Die Blockdefinition ordentlich als DWG gespeichert und über den AutoCAD-Befehl -Einfüge importieren würde ha auch funktionieren. >>"Ich vermute, dass sich die DWG mit dem dynamischen Block in der Blockbibliothek verändert," Was für eine Blovkbibliothek? Erkläre bitte mal was du damit meinst.
>>"wenn ich automatisiert mit einem Säuberungsprogramm in dem CAD-Wiesels 'benennUBL' Programm enthalten ist, drüber gehe." Es ist keine Säuberungsroutine integriert auch wird der User nicht darauf hingewiesen was er damit alles zerstört/zerstören kann. >>"Deshalb muss ich vorher testen, ob es ein dynBlock ist und dann nicht mit benennUBL drübergehen." Was ist mit Tabellen? Anordnungen? Schraffuren? Bemaßungen? usw. oder sprichst du explizit nur von *U Blöcken? Geschrieben hast du allgemein von "unbenannten", also nehme ich * alle an?
Aber eigentlich ist es egal, denn die Kürzel sind nicht geschützt und daher kann auch ein *U Block eine dynamische Ableitung darstellen, ODER sonstiges.. von einer anderen Applikation. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
otm Mitglied Bauingenieur
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für otm](/foren/ubb/pmimages/gbu.gif) Beiträge: 184 Registriert: 26.08.2009 MS Win 10 AutoCAD Civil 3D 2023.2.1 Update VBA Enabler 2019 MS Access Database Enginge X64 MSO 365 (64bit)
|
erstellt am: 10. Apr. 2022 09:09 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
Hi cadffm, das waren jetzt 'ne Menge Fragen. Also: ich habe ein Verzeichnis in dem ich alle meine Blöcke als einzelne (kleine oder größere) DWGs ablege. Das ist meine 'Blockbibliothek'. Irgendwann einmal habe ich zwei unbenannte Blöcke (*U0, *U1) eingeschleppt, die in jede Datei beim Einfügen des betroffenen Blocks weiterverbreitet werden. Die Blöcke sehen aus wie eine Nadel für eine Pinwand. Sie sind auch nach dem Ausführen von BenennUBL händisch einzufügen, aber nicht zu bereinigen. Nehme ich eine neue saubere Zeichnung, ohne diese zwei und füge alle Objekte des Blocks über 'Mit Originalkoordinaten kopieren' ein, sind sie nicht mehr da. Sie sind also nicht notwendig. Mein Anliegen ist diese und anderen überflüssige Daten aus allen DWGs meiner Blockbibliothek zu entfernen. Dabei habe ich die Dynamic bei den dynamischen Blöcken verloren. Und ich weiß nicht wie ich das geschafft habe. Deshalb die Frage, ob die Dynamic etwas mit unbenannten Blöcken zu tun hat. Der Dynamische Block ist als DWG abgespeichert und die DWG wird mittels VBA eingefügt und gesprengt. Zitat:
Es ist keine Säuberungsroutine integriert
ich habe nicht gesagt, dass eine Säuberungsroutine integriert ist. Ich habe eine Säuberungsroutine für meine Blockbibliothek geschrieben und darin das Programm BenennUBL integriert, mit dem ich unbenannte Blöcke benenne und dann zu bereinigen versuche. Zitat:
Was ist mit Tabellen? Anordnungen? Schraffuren? Bemaßungen? usw. oder sprichst du explizit nur von *U Blöcken? Geschrieben hast du allgemein von "unbenannten", also nehme ich * alle an?
Ja * alle. Ich möchte alles was mir später Datenmüll produziert aus den Blöcken bereinigen bzw., wenn das nicht automatisch geht, finden und händisch entfernen. Dazu habe ich mir eine DWG erstellt in der es nur noch 'Standard'-Stile gibt. Mit 'Datei neu, metrisch' bekomme ich das nicht. Dort gibt es bei mir z.B. keine Schrift 'Standard', dafür 'Annotative', .... Den Tabellenstil Legend bekomme ich da leider nicht raus aus der DWG. Vielleicht weißt, Du wie das geht? Deiner Frage entnehme ich aber, dass Tabellen, Schraffuren etc. auch unbenannte Blöcke benutzen. Ist das so?
------------------ Grüße aus München Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
![](/foren/avatars/KlaK.gif)
![Schreiben Sie einen Gästebucheintrag für KlaK](/foren/ubb/pmimages/gbu.gif) Beiträge: 2789 Registriert: 02.05.2006 AutoCAD LandDesktop R2 bis 2004 Civil 3D 2005 - 2022 Plateia, Canalis Visual Basic
|
erstellt am: 10. Apr. 2022 11:26 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
Hallo Christian, Zitat: Irgendwann einmal habe ich zwei unbenannte Blöcke (*U0, *U1) eingeschleppt, die in jede Datei beim Einfügen des betroffenen Blocks weiterverbreitet werden. Die Blöcke sehen aus wie eine Nadel für eine Pinwand. Sie sind auch nach dem Ausführen von BenennUBL händisch einzufügen, aber nicht zu bereinigen.
Kannst Du mal die Blockzeichnung hochladen? Grüße Klaus Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rexxitall Mitglied Dipl. -Ing. Bau
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für rexxitall](/foren/ubb/pmimages/gbu.gif) Beiträge: 270 Registriert: 07.06.2013 Various: systems, Operating systems, cad systems, cad versions, programming languages.
|
erstellt am: 11. Apr. 2022 20:55 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
Schieb mal die Zeichnung und deine Bereinigungsroutine hoch. Das scheint mir ein 20 Zeiler zu sein ![](/foren/ubb/smile.gif) ------------------ Wer es nicht versucht, hat schon verlorn ![](/foren/ubb/biggrin.gif) Und bei 3 Typos gibts den vierten gratis ! <<< not for sale ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
![](/foren/avatars/cadffm.gif)
![Schreiben Sie einen Gästebucheintrag für cadffm](/foren/ubb/pmimages/gbu.gif) Beiträge: 22171 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 12. Apr. 2022 00:21 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
Huch, das ist schon länger her. Erst Urlaub und seit dem Krank :-/ Zitat: Original erstellt von otm: Nehme ich eine neue saubere Zeichnung.. Gebe uns die Originale und wir schauen nach "wo es hängt" Pinwand-Nadel kommt mir auch irgendwie bekannt vor.Der Dynamische Block ist als DWG abgespeichert und die DWG wird mittels VBA eingefügt und gesprengt. Offensichtlich liegt der Block also nicht "als DWG" vor, sondern du hast eine DWG mit einer Blockreferenz im Modellbereich gespeichert. Hier wäre die Frage ob das ganz bewußt gemacht wurde (Warum?) oder ob man hier das mit den Blöcken und DWG noch mal erklären sollte!? Beides kann sinnvoll sein. Dabei habe ich die Dynamic bei den dynamischen Blöcken verloren. Und ich weiß nicht wie ich das geschafft habe. Dein ursprünglicher (benannter) Block ist noch intakt, nur deine dynamische Ableitung nicht, die hast du zerstört. Hattest du also eine Blockreferenz welche zuvor schon mal "dynamisch verändert" wurde, dann referenzierte diese einen anonymen Block (*Unnn). Mit benennubl hast du hast du die Verbindung zum urprünglichen (benannten) Block zerstört und hast nunmehr einen "dummen"(statischen) Block mit "dummen" Namen, nutzlos wie sonstwas erschaffen. EINFÜGE <dein Blockname> -> wird aber weiterhin ordentliche Blockreferenzen erzeugen, den dieser Block wurde ja nicht geändert von dir.
Deshalb die Frage, ob die Dynamic etwas mit unbenannten Blöcken zu tun hat. Nun, dein ursprünglicher Block und die Blockreferenzen welche noch NICHT dynamisch verändert wurde, die haben damit nichts zutun. Sobald du aber anfängst an einer Blockreferenz die dynamischen Parameter zu verändern erstellt AutoCAD eine Kopie von deinem Block (der Name so eines Block ist *Unnn) und die Blockreferenz welche du bearbeitest verweist dann auf diesen "anonymen/unbenannten" Block. Dir als Benutzer wird weiterhin der Name des ursprünglichen Blockes angezeigt, was aber technisch nicht stimmt. Ja * alle. Dann "zerstörst" du noch mehr, bei den meisten ist das jedoch nicht schlimm da die Blockdefinition, wenn nötig, neu erzeugt&benannt wird vom System Mit 'Datei neu, metrisch' bekomme ich das nicht. Dort gibt es bei mir z.B. keine Schrift 'Standard', dafür 'Annotative', .... "Standard" wäre ja auch die schlechteste Wahl, das hat aber mit dem Wort "Standard" nichts zutun, bei meiner Aussage beziehe ich mich auf alle vordefinierten Objekte - egal ob das Standard, ISO-25 oder Annotative benannt ist. Aber das ist ein andere Thema. Den Tabellenstil Legend bekomme ich da leider nicht raus aus der DWG. Vielleicht weißt, Du wie das geht? Ich habe deine DWG nicht.() Deiner Frage entnehme ich aber, dass Tabellen, Schraffuren etc. auch unbenannte Blöcke benutzen. Ist das so? Ja so ist das. Anm: Wobei es auf Schraffuren nur zutrifft wenn man von ganz alten Dateiformaten spricht, also im Normalfall haben Schraffuren heute nichts mit Blöcken zutun. Sofern man von AutoDESK und Dateiformaten der letzten zwei Jahrzehnte spricht. (Ansonsten ist es nur ein Block mit vielen Linien - keine Schraffur, wenn auch optisch identisch, Blockname *Xnnn)
Also: Hat es einen Grund warum du nicht wirklich deine Blöcke als DWG speicherst die man dann einfach "als Block" einfügen kann, sondern Blockreferenzen im Modellbereich -> Im Grunde entspricht dein Vorgene genau dem "Copy&Paste" Vorgang. [Mir sind wohl einige mögliche sinnvolle Gründe bekannt, es ist die Frage ob bei dir einer davon vorliegt?]
Also, einfach mal eine deiner DWG (in denen auch die Pinnwandnadel drinhängt) hier anhängen und wir müssen nicht mehr raten, dafür bekommst du dann maßgeschneiderte Antworten. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
otm Mitglied Bauingenieur
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für otm](/foren/ubb/pmimages/gbu.gif) Beiträge: 184 Registriert: 26.08.2009 MS Win 10 AutoCAD Civil 3D 2023.2.1 Update VBA Enabler 2019 MS Access Database Enginge X64 MSO 365 (64bit)
|
erstellt am: 12. Apr. 2022 12:58 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
@cadffm nur die dynamischen Blöcke speichere ich so verschachtelt. Wenn das einfacher geht, bin ich um einen Hinweis dankbar. Im Anhang mal ein einfacher Block, bei dem die Blöcke *U0 und *U1 drin sind. Mit BenennUBL werden sie als zu bereinigen angezeigt. Schließt man die Datei und öffnet sie wieder, sind die *U0, *U1 wieder nicht zu bereinigen. Bislang kopiere ich die Objekte, füge sie in eine saubere Zeichnung ein und weg sind die Blöcke.
------------------ Grüße aus München Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rexxitall Mitglied Dipl. -Ing. Bau
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für rexxitall](/foren/ubb/pmimages/gbu.gif) Beiträge: 270 Registriert: 07.06.2013 Various: systems, Operating systems, cad systems, cad versions, programming languages.
|
erstellt am: 12. Apr. 2022 13:20 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
Husch wech sans Sub delu1u0() Dim ENTITY As AcadEntity Dim BLOCK As AcadBlock Dim BLOCKREF As AcadBlockReference Dim B2 As AcadBlock Dim ENT As AcadEntity For Each BLOCK In ThisDrawing.BLOCKS Debug.Print BLOCK.name Select Case BLOCK.name Case "*U0", "*U1" For Each ENTITY In BLOCK ENTITY.DELETE Next End Select Next On Error Resume Next Set BLOCK = ThisDrawing.BLOCKS.ITEM("*U0") BLOCK.DELETE Set BLOCK = ThisDrawing.BLOCKS.ITEM("*U1") BLOCK.DELETE ThisDrawing.SendCommand "_regen" & vbLf ThisDrawing.PURGEALL End Sub ------------------ Wer es nicht versucht, hat schon verlorn ![](/foren/ubb/biggrin.gif) Und bei 3 Typos gibts den vierten gratis ! <<< not for sale ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
![](/foren/avatars/cadffm.gif)
![Schreiben Sie einen Gästebucheintrag für cadffm](/foren/ubb/pmimages/gbu.gif) Beiträge: 22171 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 12. Apr. 2022 13:33 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
Hi, >>"nur die dynamischen Blöcke speichere ich so verschachtelt." >>"Wenn das einfacher geht, bin ich um einen Hinweis dankbar." Es gibt eigentlich keinen Unterschied/Grund bei dynamsichen Blöcken anders vorzugehen wie man es mit statischen macht!? Entweder man zeichnet seine Blockgeometrie im Modellbereich (bei Aktionsparametern zwingend im BEDIT), oder man erstellt seine Blöcke ganz normla in einer DWG und nutzt dann Befehl WBLOCK um die Blockdefinition als DWG rauszuschreiben. Anm: Es gibt Tools, oder man macht sich diese selbst, um alle Blöcke einer DWG als DWG abzuspeichern, genau wie auch viele DWG alle auf einmal in einer Datei einzufügen. >>"Im Anhang mal ein einfacher Block, bei dem die Blöcke *U0 und *U1 drin sind." Super, danke Ja genau, die PinnwandNadel hatte ich schon mal am Monitor :-) Stichwort AECC_TREE_NODE https://knowledge.autodesk.com/de/support/autocad/troubleshooting/caas/sfdcarticles/sfdcarticles/DEU/DXFIN-works-in-AutoCAD-2015-but-not-in-AutoCAD-2016.html
Im DXF-Format könnte man direkt bereinigen, im DWG -Format müßte ich nachsehen (hoffe aber es macht ein andere / kein Lust) Wenn es bei den blöcken aber ohnhin nicht um AEC/CIVIL3D Daten geht, dann könntest du auch gleich richtig aufräumen und den Befehl -EXPORTTOAUTOCAD benutzen um eine neue Datei zu schreiben. Da werden dann auch deine ungenutzen Applikationseinträge gelöscht (die du noch nicht bereinigt hast) usw. Nur als Hinweis: Befehl: -BEREINIG RegAppl * -BEREINIG alle * - - -
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
![](/foren/avatars/cadffm.gif)
![Schreiben Sie einen Gästebucheintrag für cadffm](/foren/ubb/pmimages/gbu.gif) Beiträge: 22171 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 12. Apr. 2022 13:39 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
|
otm Mitglied Bauingenieur
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für otm](/foren/ubb/pmimages/gbu.gif) Beiträge: 184 Registriert: 26.08.2009 MS Win 10 AutoCAD Civil 3D 2023.2.1 Update VBA Enabler 2019 MS Access Database Enginge X64 MSO 365 (64bit)
|
erstellt am: 12. Apr. 2022 15:04 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
|
rexxitall Mitglied Dipl. -Ing. Bau
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für rexxitall](/foren/ubb/pmimages/gbu.gif) Beiträge: 270 Registriert: 07.06.2013 Various: systems, Operating systems, cad systems, cad versions, programming languages.
|
erstellt am: 12. Apr. 2022 17:21 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
Ja wäre in der Tat so wenn man das SELECT statement nicht geflissentlich übersehen hätte. (Als auch die Zwei Statements wo ich explizit U0 und U1 selektiert habe) Ging ja auch mehr darum zu zeigen wie man die prinzipiell los wird. Aber hey, hier darf ja eh nur der Forenonkel Lösungen bringen. Ansonsten sind ja sämtliche Ansätze prinzipiell abzulehnen ![](/foren/ubb/biggrin.gif) Und denn war es auch noch so simpel. Herjeh wie konnt ich nur ... ------------------ Wer es nicht versucht, hat schon verlorn ![](/foren/ubb/biggrin.gif) Und bei 3 Typos gibts den vierten gratis ! <<< not for sale ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
![](/foren/avatars/cadffm.gif)
![Schreiben Sie einen Gästebucheintrag für cadffm](/foren/ubb/pmimages/gbu.gif) Beiträge: 22171 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 12. Apr. 2022 20:47 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für otm
@rexxitall >>"- Ging ja auch mehr darum zu zeigen wie man die prinzipiell los wird." Genau richtig so im Programmier-Board ![](http://ww3.cad.de/foren/ubb/icons/icon14.gif) Das dir all das bekannt ist - für mich ohnehin außer Frage ![](/foren/ubb/smile.gif) Eigentlich war der Post mehr für den TO, ich wollte die Aufmerksamkeit etwas mehr auf das Wissen drumherum lenken und auch darauf das dies eben kein "sorglos"-fertiger Code ist. *U0 und *U1 wie auch alle anderen *Unnnn sind anonyme Blöcke hinten denen sich alles mögliche verbergen kann, auch gewünschte "wichtige" Sachen -> wie zB der Block um den es Ihm in der DWG eigentlich geht und der unerwünschte PIN könnte in der nächsten Datei ebenso gut *U123 heißen und damit nicht verschwinden. - Aber hey, JA ja, das habe ich mir hart verdient über die Jahre und ich bereue gepostet zu haben // hätte ich mir wirklich sparen sollen, aber nu isses zu spät
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
![](https://ww4.cad.de/books/view.php?what=zone:12591&n=s12591BB) |