| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Füllfarbe des Bemaßungstextes bei Autocad 2006 (1837 mal gelesen)
|
Gigerota Mitglied
Beiträge: 561 Registriert: 17.01.2006 Windows 10 Pro AutoCAD LT 2019 Solidworks 2018
|
erstellt am: 26. Apr. 2006 12:52 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen! Hat jemand eine lisp-Routine, wo man die Füllfarbe des Bemaßungstextes schnell ändern kann ( auf "Nein" setzen)? Ich möchte nicht immer in den Bemaßungsstil reingehen. Wenn ich meine 2006er Zeichnung nach 2004 runterspeichere (Datenaustausch zum Kunden), und er druckt meine Zeichnung aus, so hat er immer schwarze Balken, weil ACAD2004 keine Füllfarbe kennt. Er kann sie somit auch nicht ausschalten. (Es gibt anscheinend keine Systemvariable dazu.... :-( doof) Gruß Petra Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Cimex Mitglied CAD-Trainer
Beiträge: 38 Registriert: 28.03.2006
|
erstellt am: 26. Apr. 2006 13:25 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
Hi! Vielleicht brauchst Du gar keine LISP-Routine dafür... Du könntest ja zuerst alle Bemassungen auswählen - und dann im EIGENSCHAFTEN-Fenster unter der Rubrik Text die Füllfarbe ausschalten!? (Sauberer wäre allerdings das globale Ändern des Bemaßungsstils allemal) Lg, Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Gigerota Mitglied
Beiträge: 561 Registriert: 17.01.2006 Windows 10 Pro AutoCAD LT 2019 Solidworks 2018
|
erstellt am: 26. Apr. 2006 13:29 <-- editieren / zitieren --> Unities abgeben:
Gut gemeinter Rat.... :-) 1000 Maße auf der Zeichnung...dann ist es natürlich schneller, im Stil Füllfarbe auf "Nein" zu setzen. Hätte - wie gesagt - gerne ein Tool. Mein Kollege kann VBA und lisp, wenn es nix fertiges gibt, wird er es programmieren. Petra Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
charlieBV Ehrenmitglied V.I.P. h.c. Bauzeichnerin
Beiträge: 9317 Registriert: 28.08.2003
|
erstellt am: 26. Apr. 2006 13:31 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
Hi, man kann die Bemaßungen auch mit der Schnellauswahl wählen, man muss nicht 1000 einzeln angeben... ------------------ Gruß Yvonne ADT-Help-Site "Natürlicher Verstand kann fast jeden Grad von Bildung ersetzen, aber keine Bildung den natürlichen Verstand." (Arthur Schopenhauer) 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: 26. Apr. 2006 13:32 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
Zitat: Original erstellt von Gigerota:
Hätte - wie gesagt - gerne ein Tool. Mein Kollege kann VBA und lisp, wenn es nix fertiges gibt, wird er es programmieren.
Postest du es dann ? ------------------ - 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 |
Gigerota Mitglied
Beiträge: 561 Registriert: 17.01.2006 Windows 10 Pro AutoCAD LT 2019 Solidworks 2018
|
erstellt am: 26. Apr. 2006 14:22 <-- editieren / zitieren --> Unities abgeben:
@ Yvonne: Klar, Schnellauswahl geht auch Es geht mir um 1 click. Alles andere ist eben etwas aufwendiger. :-) Ist trotzdem keine Mühe, da gebe ich dir recht. @ Thomas: Klar poste ich es dann ! :-) Danke, Petra 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: 26. Apr. 2006 15:34 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
na falls es nicht klappt ... anbei wieder mal ne "Machbarkeitsstudie".. sollte auch derjenige mit 2004 starten können, der die "schwarzen balken hat" ------------------ - 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 |
Cimex Mitglied CAD-Trainer
Beiträge: 38 Registriert: 28.03.2006
|
erstellt am: 26. Apr. 2006 23:41 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
Nach einigen (vergeblichen) Versuchen mit LISP hab ich eine Lösung in VBA gefunden. Is ein wenig "dirty", aber vielleicht erfüllt es den Zweck: Code: Sub RemoveDimTextMask() Dim MyBlock As AcadBlock Dim MyEnt As AcadEntity Dim MyMText As AcadMText For Each MyBlock In ThisDrawing.Blocks If InStr(1, MyBlock.Name, "*D") <> 0 Then For Each MyEnt In MyBlock If MyEnt.ObjectName = "AcDbMText" Then Set MyMText = MyEnt MyMText.BackgroundFill = False End If Next MyEnt End If Next MyBlock ThisDrawing.Regen acAllViewports End Sub
Es mögen die Steine fliegen! Jedenfalls hab ich es gepostet - und es macht folgendes: - Bei jedem in der Zeichnung enthaltenen Bemassungsblock (Name "*Dnnn") erfolgt ein Zugriff auf das enthaltene MText-Objekt. - Bei diesem wird die Eigenschaft "BackgroundFill" ausgeschaltet. - Die in der Zeichnung referenzierten Bemaßungen übernehmen diese Änderung. Das Ergebnis ist dann etwas kryptisch: In den Eigenschaften der geänderten Bemaßungen erscheint immer noch die alte Einstellung der Textfüllung (is aber eigentlich egal, IMHO) Müßte eigentlich funktionieren - bitte um Rückmeldung! Liebe Grüße, Peter 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: 27. Apr. 2006 08:13 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
@Peter .. den Mtext des Bemaßungsblockes zu ändern, war auch mein erster Ansatz .. allerdings hab ich mir den über die Bemaßung geholt.. da hab ich aber bei jeder Bemaßungsaktualisierung das Problem wieder (da da der Mtexte neu erzeugt wird). Der andere Ansatz liegt in der entsprechenden Manipulation der Xdatas, in denen die Hintergrundmaske der Bemaßung direkt abgelegt ist... P.S. was funktioniert denn nicht an meinigem Tool ? also bei mir läufts in 2006 und 2004, während deins in 2004 sicher den Dienst verweigert, weil die Property BackgroundFill so noch nicht implementiert ist. Sehe gerade, das die Xdatas nur dran hängen, wenn man den Hintergrund über die Eigenschaften zugewiesen hat ... :hmm ...
ich hab das obigen Tool nun noch mal nach den neuen Erkenntnissen erweitert. sollte jetzt die einstellungen im Bemaßungsstil und den Bemaßungen vornehmen Daraus ergibt sich im Umkehrschluß wieder mal, das man auch bereits im 2004'er (getestet MEch2004DX) ACAD Bemaßungstexte freistellen könnte, das adesk das wohl bloß nicht dokumentiert hat. ------------------ - 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 |
Cimex Mitglied CAD-Trainer
Beiträge: 38 Registriert: 28.03.2006
|
erstellt am: 27. Apr. 2006 10:19 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
@CADmium: Ich weiß nicht, was an Deinem Tool nicht klappte - jedenfalls tat es bei mir gar nix, außer zu regenerieren. Das geänderte jedoch funktioniert PRÄCHTIG!!! (Kompliment) (Schad, dass es ein VLX is - würd gern wissen, wie Du's gemacht hast ) Und Du hast vollkommen recht: Mein Tool läßt sich nur in R2006 anwenden. Auch wenn ich es nicht selbst brauche - und (leider) ohne zu wissen, WIE es funktioniert, ist mir diese Lösung 10 U's wert (sind unterwegs). Liebe Grüße, Peter 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: 27. Apr. 2006 10:32 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
zur Funktion : der Trick liegt in der Manipulation der Xdata des Bemaßungsobjektes und der Bemaßungsstile ..aber auch ich hab hieraus mal wieder was lernen können und mir meine Bemaßungstile durch den Rücken angepasst, so das ich jetzt auch freigestellte Bemaßungstexte in meinem 2004'er hab. ------------------ - 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 |
Gigerota Mitglied
Beiträge: 561 Registriert: 17.01.2006 Windows 10 Pro AutoCAD LT 2019 Solidworks 2018
|
erstellt am: 27. Apr. 2006 11:58 <-- editieren / zitieren --> Unities abgeben:
@ CADmium: Danke für deine lisp-Routine. Leider funktioniert es nicht bei Mechanical2006. Der globale Skalierfaktor wird geändert.... :-(( Die Füllfarbe steht zwar nun auf "Nein" - klasse! aber ich will den Faktor nicht verlieren... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Gigerota Mitglied
Beiträge: 561 Registriert: 17.01.2006 Windows 10 Pro AutoCAD LT 2019 Solidworks 2018
|
erstellt am: 27. Apr. 2006 12:18 <-- editieren / zitieren --> Unities abgeben:
@ Peter: Hallo, ich habe den VBA-Code laufen lassen, leider überhaupt kein Ergebnis bei mir. Die Füllfarbe ist immer noch vorhanden. Nicht nur in den Eigenschaften, sondern tatsächlich. Bei dir funktioniert es? ....PS. ich arbeite mit Mechaincal2006 (= AM-Powerbemaßung!) LG Petra [Diese Nachricht wurde von Gigerota am 27. Apr. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Cimex Mitglied CAD-Trainer
Beiträge: 38 Registriert: 28.03.2006
|
erstellt am: 27. Apr. 2006 12:39 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
Jaja, bei mir funktionierts! Vielleicht liegts am Mechanical, das kann ich nicht nachvollziehen. Ich hab nur nacktes AutoCAD - kein Geld für Bekleidung... Außerdem bin ich sicher, dass Thomas noch eine Lösung für den Globalen Skalierfaktor zusammenLISPelt. (den Quellcode rückt er ja leider nicht raus *flüster*) Aber Du könntest mir eine Deiner Zeichnungen posten - dann könnt ichs bei mir probieren. Würd mich interessieren. LG, Peter 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: 27. Apr. 2006 13:28 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
Zitat: Original erstellt von Gigerota: @ CADmium: Danke für deine lisp-Routine. Leider funktioniert es nicht bei Mechanical2006. Der globale Skalierfaktor wird geändert.... :-(( Die Füllfarbe steht zwar nun auf "Nein" - klasse! aber ich will den Faktor nicht verlieren...
Das mit den anderen Eigenschaften ist so, wenn man den Bemaßungsstil neu zuweist .. kann man zwar auch umgehen, aber für mich ist das Problem gelöst. Wie weit ist denn dein Kollege? ------------------ - 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 |
Gigerota Mitglied
Beiträge: 561 Registriert: 17.01.2006 Windows 10 Pro AutoCAD LT 2019 Solidworks 2018
|
erstellt am: 27. Apr. 2006 14:26 <-- editieren / zitieren --> Unities abgeben:
|
Cimex Mitglied CAD-Trainer
Beiträge: 38 Registriert: 28.03.2006
|
erstellt am: 27. Apr. 2006 23:41 <-- editieren / zitieren --> Unities abgeben: Nur für Gigerota
Hätt nie gedacht, dass mich das Thema so beschäftigt! Jedenfalls bin ich dem Ruf des Leitwolfs (CADmium ) gefolgt und hab das Ganze auf Basis XData-Manipulation nochmals neu codiert. Die Prozedur RemoveDimTextMask macht jetzt folgendes: 1) Die Funktion RemoveTextMaskFromDimStyles entfernt die Textfüllungen aus allen Bemaßungsstilen. Dadurch aktualisieren sich alle Bemaßungen, welche ihre Textmaske vom Bemaßungsstil beziehen. 2) Die Funktion RemoveTextMaskFromDimensions schließlich macht dasselbe mit allen jenen Bemaßungen, die von ihrem Stil abweichen (dh. Maske nachträglich zugewiesen) Da nur jene Xdata aus Stilen bzw. Bemaßungen entfernt werden, welche für die Textfüllungen zuständig sind, bleiben alle sonstigen Parameter, wie z.b. ein nachträglich zugewiesener Globaler Skalierfaktor erhalten. Hope it works... @Petra: Habs mit Deiner Zeichnung getestet - funktioniert. @Thomas: Danke fürs Spurenlegen - hab was dazugelernt. Liebe Grüße, Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |