| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Blöcke: Basispunkt ändern, optische Referenzposition frieren (4653 mal gelesen)
|
Mann Mitglied Graphische Dienstleistungen
Beiträge: 64 Registriert: 16.05.2014 AutoCAD 2010 & LT 2015 Nemetschek Allplan 2008 C4D 10.5 Adobe CC
|
erstellt am: 09. Mrz. 2015 14:46 <-- editieren / zitieren --> Unities abgeben:
Tach Leute. Problem: Ich bekomme ständig Zeichnungen zum Bereinigen, in denen massenhaft Symbole als Blöcke angelegt sind, deren Einfügepunkte irgendwo wüst in der Gegend herumliegen, völlig bezugslos zum Block. Irgendein Hirni hat sich gesagt: Nach mir die Sintflut. Dafür habe ich mir meine eigene Symboldatenbank erstellt, aus der ich über DC die Definitionen übertragen könnte.... Wie kann ich jetzt meine Blockdefinitionen einfach nur ersetzen, ohne dass sich die Position der bereits in der Zeichnung befindlichen Referenzen ändert? Kann man den Referenzen irgendwie mitteilen, dass sich zwar der Einfügepunkt ändert, sie aber zumindest optisch da bleiben sollen, wo sie jetzt sind? Beispiel und Behelfslösung Problem ist hoffentlich klar: Ich habe im Grundriss ein Symbol für eine Tür - mit Basispunkt jenseits der Zeichnung im nirgendwo. Wenn ich jetzt den Block mit meiner Version und Nullpunkt im Mittelpunkt "neu definiere", hopsen alle angezeigten Symbole um die Vektordifferenz davon. Die wieder zurückzudüddeln ist Arbeit ohne Ende. Momentan behelfe ich mir, dass ich die alten Blöcke explodiere, den "Schrott" auf einen extra Layer plaziere, sperre und dann mit "OFANG aus" meine neuen Symbole auf die alten plaziere, die dann am Ende gelöscht werden. Baaaahhhhhhhh!
Ich find über Suche bei Google oder hier nix, mir fehlen die klaren Worte, die mich zum Ergebnis führen! Any ideas?
------------------ Ein Gott ist der Mensch, wenn er träumt, ein Bettler, wenn er nachdenkt. (aus Hölderlins Hyperion) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bbernd Mitglied Technischer Zeichner / Zimmerermeister
Beiträge: 1467 Registriert: 20.02.2009 AutoCAD 2021 Gimp 2.10 Windows10 64bit 64 GB Arbeitsspeicher NVIDIA RTX A4000
|
erstellt am: 09. Mrz. 2015 15:02 <-- editieren / zitieren --> Unities abgeben: Nur für Mann
|
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 09. Mrz. 2015 15:07 <-- editieren / zitieren --> Unities abgeben: Nur für Mann
hmm, das ist natürlich nicht schön und leider auch nicht "einfach" zu lösen. Es gibt Programme mit denen man den Einfügepunkt an bestehenden Blöcken ändern kann und die Blockreferenzen ensprechend verschoben werden. Deine Blöcke können ja aber auch "anders gedreht" sein, dahilft ein verschieben alleine nicht weiter. (altes Symbol nach Süden ausgerichtet, neues Symbol nach Osten - hoffe es ist klar was ich meine. Abgesehen von der Menge an Blöcken in der Datei kommt ja noch mal der Multiplikator X-Dateien hinzu, spätestens hier ist mit "Programmschnipsel im I-Net gefunden" Schluß. Damit es irgendwie passabel machbar wäre, so benötigt man doch ein gutes, darauf ausgerichtetes Programm. Abfrage Alter Block, Neuer Block. Alter Basispunkt, Neuer Basispunkt. Alte Drehung, Neue Drehung. und ob in Millimeter, Meter etc. kommt noch on-Top wegen der Skalierung. Eine eierlegende Wollmilchsau wird man dazu nicht finden. Ein (fertiges) Programm welches bestmöglich darauf zugeschnitten ist auch nicht. Nähkästchen: Eine Programmvariante die ich für soetwas nutze erstellt auch eine "altDWG", legt diese als XREF in den Hintergrund, dann erfolgt der Blocktausch, nun kann man Abweichungen vorher/nachher feststellen(manuell). Wenn es immer wieder gleiche Blöcke sind (von gleicher Quelle), dann kann man auch eine "Übersetzungsliste" erstellen, alterBlockname.NeuerBlockname - entsprechend Verschiebe-Daten, Rotierung, Skalierung. Und zu guter Letzt: Attributdaten - Das ist dann noch mal ein Thema für sich. Im Rahmen der Forumhilfe kommt mir da leider keine bessere Antwort in den Sinn. ------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Entsorger01 Moderator Techniker
Beiträge: 3263 Registriert: 07.07.2006 ACAD 2021 Acrobat Prof. Creative Suite WIN10
|
erstellt am: 09. Mrz. 2015 15:09 <-- editieren / zitieren --> Unities abgeben: Nur für Mann
|
hotdiscomix Mitglied
Beiträge: 118 Registriert: 31.07.2010 AutoCAD 2021; Map 3D 2021
|
erstellt am: 09. Mrz. 2015 15:22 <-- editieren / zitieren --> Unities abgeben: Nur für Mann
|
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 09. Mrz. 2015 15:38 <-- editieren / zitieren --> Unities abgeben: Nur für Mann
@hotdiscomix Stelle dir einen Block vor der ein Verkehrschild darstellt, der neue Block hat "als Rohr" eine Linie vom Basispunkt "nach oben" (von 0,0 nach 0,3) und am Ende das Verkehrszeichen, der alte Block wurde jedoch anders erstellt, die Linie welche das Rohr symbolisiert geht von 0,0 nach 3,0. Tauscht man nun die Blöcke, so müßten alle Blockreferenzen die Drehung (alteDrehung - 90°) erhalten. So war das gemeint. Natürlich gibt es auch für diesen Schritt wieder Helferlein, auch für die Skalierung falls nötig. Nur kein AllInOne (was mir jetzt aus dem Forum dazu einfallen würde). ------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bbernd Mitglied Technischer Zeichner / Zimmerermeister
Beiträge: 1467 Registriert: 20.02.2009 AutoCAD 2021 Gimp 2.10 Windows10 64bit 64 GB Arbeitsspeicher NVIDIA RTX A4000
|
erstellt am: 09. Mrz. 2015 15:48 <-- editieren / zitieren --> Unities abgeben: Nur für Mann
|
hotdiscomix Mitglied
Beiträge: 118 Registriert: 31.07.2010 AutoCAD 2021; Map 3D 2021
|
erstellt am: 09. Mrz. 2015 16:21 <-- editieren / zitieren --> Unities abgeben: Nur für Mann
@cadffm Jetzt habe ich meinen Fehler erkannt. Ich hatte zunächst nicht verstanden das die Blöcke ausgetauscht werden. Ich muss auch öfters Pläne nachbearbeiten bei denen Blöcke "seltsame" Koordinaten haben, meistens liegt der Block-Basispunkt bei irgendwelchen geografischen Koordinaten, da der Block in einer Zeichnung erstellt wurde, aber der Basispunkt nicht speziell ausgewählt wurde. Ich nutze aber den alten Block weiter und setze mit dem Tool, nur den Block-Basispunkt (meist das Zentrum) auf 0,0. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADJojo Mitglied Techn.Zeichner/Konstrukteur im Ladenbau
Beiträge: 604 Registriert: 16.04.2010 Inventor 2022 / Windows 10 Pro Intel Xeon CPU E5-1620 v4 3,5 GHz / 32 GB RAM
|
erstellt am: 10. Mrz. 2015 17:45 <-- editieren / zitieren --> Unities abgeben: Nur für Mann
Als Workaround: Im Blockeditor: - Linie zeichnen vom Basispunkt bis 0,0 und diese Vektor-Linie in die Zwischenablage kopieren - Die Geometrie mit dem gewünschten Basispunkt auf 0,0 verschieben und so speichern Im Modellbereich: - Vektor-Linie aus der Zwischenablage einfügen - Einen der geänderten Blöcke markieren, "Ähnliche auswählen" - Schieben und als Vektor die eingefügte Vektor-Linie zu Hilfe nehmen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mann Mitglied Graphische Dienstleistungen
Beiträge: 64 Registriert: 16.05.2014 AutoCAD 2010 & LT 2015 Nemetschek Allplan 2008 C4D 10.5 Adobe CC
|
erstellt am: 11. Mrz. 2015 11:51 <-- editieren / zitieren --> Unities abgeben:
Danke euch allen für die Hinweise. Es wäre übrigens sehr hilfreich, wenn die verschiedenen lisp-Vorschläge auch genau kommentiert würden. Was können die? Wie stellt ihr euch einen Workflow damit vor? Sonst fummel ich die Lisps da rein und weiß gar nicht, was die machen. Geschweige denn, ob die zu meinem Problem passen! CADmium hats gleich zu Anfang trefflich auf den Punkt gebracht. Allerdings sind meine Anforderungen wohl etwas simpler, vielleicht gibt es deswegen doch eine Lösung? Eine Besonderheit, die dir vielleicht hilft, mir zu helfen, ist: Die Blockinhalte ändern sich nie. Auch die blockinterne Skalierung ist normalerweise gleich. Es geht allein um den Basispunkt. Das Problem mit den Referenz-Drehungen kann auftreten, aber sollte durch den in der neuen Definiton im Mittelpunkt gesetzten Basispunkt kaum eine Rolle spielen, da leicht ersichtlich und leicht per Eigenschaftenpalette zu lösen. Die Drehung (wie auch Skalierung) kann man dann easy anpassen. Ist übrigens auch ein wichtiges Ziel bei der Basispunkt-Versetz-Aktion, da nicht selten Darstellungen derselben Modell-Pläne mit mehreren verschiedenen Papier-Ausrichtungen anzufertigen sind. Dabei müssen die Symbole natürlich ohne zu hopsen immer in normal "lesbare" Ausrichtung zurückgedreht werden. Mit Attributen arbeite ich zZt nicht. Jedenfalls nicht bewusst. Der Tipp mit dem XREF ist gut, da werd ich sicher mal mit experimentieren, falls ich keinen Workaround hinkriege. Da die Symbole im Papierbereich liegen sollen (gnaaaaaaaah!), reicht oft schon ein explodieren und in den Modellbereich schieben...
Also. Das einzige, was wirklich was brächte, wäre die Möglichkeit, die jeweiligen Blockinhalte RELATIV zu allen anderen Zeichnungsinhalten zu frieren, dann die Basispunkte zu ändern. Optimal wäre die automatische Findung des Mittelpunktes (üblicherweise der Schwerpunkt). Oder ganz anders angepackt: Automatisch den Schwerpunkt der Blockelemente bestimmen und den Blockeinfügepunkt automatisch neu setzen (bei gefrorener relativer Position). Das ist übrigens auch so ein Problem, das ich bisher nur mit Workaround hinfummele: Schwerpunkt einer Auswahl fangen (bzw. automatisch den summarischen Mittelpunkt/Schwerpunkt multipler Elemente für "Kopieren mit Basispunkt" auswählen) - gibt es da eine Funktion?
------------------ Ein Gott ist der Mensch, wenn er träumt, ein Bettler, wenn er nachdenkt. (aus Hölderlins Hyperion) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 11. Mrz. 2015 12:22 <-- editieren / zitieren --> Unities abgeben: Nur für Mann
CADmium hat hier überhaupt nichts geschrieben, daher nehme ich an das meine Zusammenfassung gemeint ist? ""Es wäre übrigens sehr hilfreich, wenn die verschiedenen lisp-Vorschläge auch genau kommentiert würden. Was können die? Wie stellt ihr euch einen Workflow damit vor? Sonst fummel ich die Lisps da rein und weiß gar nicht, was die machen. Geschweige denn, ob die zu meinem Problem passen!" Ist ein Haufen an Zeit und Nerven die da drin stecken, gell? Des wegen mache ich sowas nur für mich oder gegen Bezahlung, dennoch möchte ich anderen helfen und Beispiel zeigen etc. Damit man deinem Wunsch nachkommen kann muß man aber nicht nur (teilweise) Unmengen schreiben, nein man muß die Programme auch soweit im Detail kennen bzw. um sie zu kennen genau testen. Und an der Stelle sage ich dann "sorry", das ist dann doch eher die Arbeit von dem der das Problem hat - "Die Blockinhalte ändern sich nie. Auch die blockinterne Skalierung ist normalerweise gleich. Es geht allein um den Basispunkt." Dann nehme doch eine der Lösungen von oben.. eingehende Datei, Basispunkte anpassen, dann Blöcke austauschen. (mir ist gerade nicht bekannt wie weit du schon bist bei der Frage WIE tauscht man Blöcke/Blockreferenzen ?)" Das Problem mit den Referenz-Drehungen kann auftreten, aber sollte durch den in der neuen Definiton im Mittelpunkt gesetzten Basispunkt kaum eine Rolle spielen," Wenn die Ausrichtung deiner Blöcke keine Rolle spielt, dann ja (an der Ausrichtung andere Blöcke hängen vielleicht auch mal 100.000 Euro ) "da leicht ersichtlich und leicht per Eigenschaftenpalette zu lösen. Die Drehung (wie auch Skalierung) kann man dann easy anpassen. " Nein, das kann man damit nicht "einfach" berücksichtigen, man muß auf Zusatzprogramme zurückgreifen (Funktion "Drehen und Skalieren Basispunkt") Die eigenschaftenpalette akzeptiert keine anpassung verschiedener Werte über einen "Faktor". Aber durch deine Antwort wird klar das du diese Fälle einfach wenig hast, gut für dich. "Ist übrigens auch ein wichtiges Ziel bei der Basispunkt-Versetz-Aktion, da nicht selten Darstellungen derselben Modell-Pläne mit mehreren verschiedenen Papier-Ausrichtungen anzufertigen sind. Dabei müssen die Symbole natürlich ohne zu hopsen immer in normal "lesbare" Ausrichtung zurückgedreht werden." DAS ist die "Beschriftung"s Funktionalität in Acad, Beschriftungen (Blockrefernezen Texte etc. können "am Layout ausrichten" definiert werden. (gehört nicht ganz zu diesem Thema hier)
"Der Tipp mit dem XREF ist gut, da werd ich sicher mal mit experimentieren, falls ich keinen Workaround hinkriege. Da die Symbole im Papierbereich liegen sollen (gnaaaaaaaah!), reicht oft schon ein explodieren und in den Modellbereich schieben..." Alle vorhandenen Infos zusammen hören sich jetzt so an, dass ich nicht weiter nachfrage - Das Thema Beschriftung ist damit aber durch. (ist das Firmenintern so, oder kommt die Vorgabe von einem Auftraggeber ?)
"Also. Das einzige, was wirklich was brächte, wäre die Möglichkeit, die jeweiligen Blockinhalte RELATIV zu allen anderen Zeichnungsinhalten zu frieren, dann die Basispunkte zu ändern. Optimal wäre die automatische Findung des Mittelpunktes (üblicherweise der Schwerpunkt). Oder ganz anders angepackt: Automatisch den Schwerpunkt der Blockelemente bestimmen und den Blockeinfügepunkt automatisch neu setzen (bei gefrorener relativer Position). " So in der Art würde man ein Programm erstellen, dabei kann man dann noch "sinniger" vorgehen und verschiedene "Regeln" berücksichtigen. Dein "(bei gefrorener relativer Position)" habe ich aber nicht verstanden, den Blockbasispunkt von vorhandenen Blöcken kanns tdu ja nun mit Hilfe der oben verlinkten Lösungen neu setzen oder das die Position der Geometrie verspringt. Der Knackpunkt kommt dann wenn du die Blöcke gegen deine austauschst (wenn du den Weg gehst vorher die Basispunkte der Alt-Blöcke anzupassen). "das ist übrigens auch so ein Problem, das ich bisher nur mit Workaround hinfummele: Schwerpunkt einer Auswahl fangen (bzw. automatisch den summarischen Mittelpunkt/Schwerpunkt multipler Elemente für "Kopieren mit Basispunkt" auswählen) - gibt es da eine Funktion?" Keine Ahnung was du damit meinst, beschreibe HABEN - ZIEL/SOLL noch einmal bitte Ich hoffe das hat gerade nicht mit der Aufgabe zutun? Wenn ich es beim Wort nehme: Als Programmlösung mit Sicherheit, eine Acad-Funktion gibt es aber nicht. ------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|