| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Sichtbar/Unsichtbar feststellen (1220 / mal gelesen)
|
Andreas Kraus Mitglied Elektrotechniker
Beiträge: 1356 Registriert: 11.01.2006 WIN 10 ACAD 2022
|
erstellt am: 28. Okt. 2016 09:32 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, in der angehängten Datei ist ein Block mit Attributen. Dieser ist nicht mehr sichtbar wenn ich ANNOALLVISIBLE auf 0 stelle. Das soll im Plan aus dem der Block stammt am Ende auch so sein, weil Texte übereinanderliegen und nicht mehr lesbar sind. Sind seeehhr viele solcher Blöcke. Aus vielen anderen Gründen werden in diesem Plan die Beschriftungseigenschaften ALLER Objekte entfernt. Damit verliert dieser Block natürlich die Eigenschaft "unsichtbar" zu sein, und die Texte liegen wieder übereinander. Wie kann ich den feststellen ob dieser Block sichbar/unsichtbar ist ? GC 66 ist es nicht und Visible ist es auch nicht. Dann könnte ich das Ding unsichtbar machen oder sogar löschen. ------------------ Geht nicht, gibts nicht Gruß Andreas http://kraus-cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1734 Registriert: 11.10.2004 Window 10 ACAD 2021 CIVIL 2021 BricsCAD V14-V22 Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz 16.0GB RAM NVIDIA GeForce GTX 1050<P>
|
erstellt am: 28. Okt. 2016 09:42 <-- editieren / zitieren --> Unities abgeben: Nur für Andreas Kraus
|
Andreas Kraus Mitglied Elektrotechniker
Beiträge: 1356 Registriert: 11.01.2006 WIN 10 ACAD 2022
|
erstellt am: 28. Okt. 2016 09:58 <-- editieren / zitieren --> Unities abgeben:
Hallo Jörn, da hab ich schon nachgeschaut aber visible ist es nicht. Wenn ich ANNOALLVISIBLE auf 0 stelle ist der Block zwar nicht mehr sichtbar aber an GC 66 und auch an visible ändert sicht nichts. Deshalb muss es was anderes sein... aber was ??? ------------------ Geht nicht, gibts nicht Gruß Andreas http://kraus-cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 Alles
|
erstellt am: 28. Okt. 2016 10:03 <-- editieren / zitieren --> Unities abgeben: Nur für Andreas Kraus
Na entweder unterstützt das Objekt den aktuellen Maßstab, oder nicht. Also Maßstab des aktuellen Ansichtsfensters vergleichen mit den unterstützten Maßstäben des Objektes. PS: Ich warte schon seit dem 25. Augus, spätestens seit dem 6.Oktober auf diese Fragen ------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas Kraus Mitglied Elektrotechniker
Beiträge: 1356 Registriert: 11.01.2006 WIN 10 ACAD 2022
|
erstellt am: 28. Okt. 2016 10:17 <-- editieren / zitieren --> Unities abgeben:
Oh ... die Frage wurde erwartet Kannst du mir auch sagen wo, in des Eingeweiden von ACAD, die unterstützten Maßstäbe eines Objekts zu finden sind ? Das ist doch sicher irgend so ein Dictionary zu dem ich mich durchhangeln muss. Edit: zwei Schreibfehler . Das Wochenende naht, ich bin am Runterfahren . ------------------ Geht nicht, gibts nicht Gruß Andreas http://kraus-cad.de [Diese Nachricht wurde von Andreas Kraus am 28. Okt. 2016 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1734 Registriert: 11.10.2004 Window 10 ACAD 2021 CIVIL 2021 BricsCAD V14-V22 Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz 16.0GB RAM NVIDIA GeForce GTX 1050<P>
|
erstellt am: 28. Okt. 2016 10:20 <-- editieren / zitieren --> Unities abgeben: Nur für Andreas Kraus
Hallo Andreas, vielleicht liege ich jetzt völlig falsch, aber die Beschriftungseigenschaften sind in der Blockdefinition per Xdaten "AcadAnnotative" gespeichert. Mit folgendem Codefragment kann man die Beschriftung ein oder ausschalten, vielleicht kannst Du die ja umbauen und damit was anfangen:
Code:
;;;(JBf_Beschriftung:BlockDef "f3_Flaeche_100" 0) ;;;Flag 0 = Beschriftung aus, 1 = Beschriftung ein (defun JBf_Beschriftung:BlockDef (name flag / ) (regapp "AcadAnnotative") (entmod (append (entget (cdr (assoc 330 (entget (tblobjname "block" name))))) (list(list -3 (list "AcadAnnotative" '(1000 . "AnnotativeData") '(1002 . "{") (cons 1070 flag) (cons 1070 flag) '(1002 . "}") ) ) ) ) ) (princ))
------------------ viele Grüße Jörn http://www.bosse-engineering.com Liniensignaturen Youtube Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 Alles
|
erstellt am: 28. Okt. 2016 10:36 <-- editieren / zitieren --> Unities abgeben: Nur für Andreas Kraus
Es geht um die zugewiesenen Maßstäbe der Referenzen, die haben nichts mit der Blockdef zutun. - Und um herauszufinden welchen Maßstäben das Objekt zugeordnet ist, wird das Dictionary "ACDB_ANNOTATIONSCALES" durchsucht. Heute keine Silbertabletlösungen, die gibt es aber genug im Netz und wären nur Wiederholung, "ACDB_ANNOTATIONSCALES" lautet das Stichwort/Suchbegriff. ------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas Kraus Mitglied Elektrotechniker
Beiträge: 1356 Registriert: 11.01.2006 WIN 10 ACAD 2022
|
erstellt am: 28. Okt. 2016 10:38 <-- editieren / zitieren --> Unities abgeben:
Ich möchte gar nicht die Beschriftungseigenschaften ändern, jedenfalls an dieser Stelle noch nicht. Zuerst muss ich feststellen ob ein Objekt aktuell sichtbar ist oder nicht, damit am Ende aller Änderungen das Objekt immer noch sichtbar ist oder eben nicht. Ich hab grade das Problem dass nicht sichtbare Objekte, wenn ich die Beschriftungseigenschaften entferne, sichtbar werden. Das will ich aber nicht. Die Frage ist: wie stelle ich VORHER fest was nicht sichtbar ist, um entsprechend zu reagieren ? ------------------ Geht nicht, gibts nicht Gruß Andreas http://kraus-cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 Alles
|
erstellt am: 28. Okt. 2016 11:13 <-- editieren / zitieren --> Unities abgeben: Nur für Andreas Kraus
neben gefrorenen Layern und den genannten Punkten gibt es die Beschriftungsfunktionalität. Wenn nicht alle gleichzeitig dargestellt werden (AnnoAll..) kommt es also darauf an ob das Objekt den aktuellen Maßstab unterstützt oder nicht. Hat das Objekt nur den Maßstab 1:1 und es ist 1:50 aktuell, wird es also nicht angezeigt. Die Info hängt aber nicht am Objekt, sondern im genannten Dictionary.
------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas Kraus Mitglied Elektrotechniker
Beiträge: 1356 Registriert: 11.01.2006 WIN 10 ACAD 2022
|
erstellt am: 28. Okt. 2016 12:16 <-- editieren / zitieren --> Unities abgeben:
Zitat: neben gefrorenen Layern und den genannten Punkten gibt es die Beschriftungsfunktionalität.
weis ich Zitat: Wenn nicht alle gleichzeitig dargestellt werden (AnnoAll..) kommt es also darauf an ob das Objekt den aktuellen Maßstab unterstützt oder nicht.
weis ich auch Zitat: Hat das Objekt nur den Maßstab 1:1 und es ist 1:50 aktuell, wird es also nicht angezeigt.
das ist der Plan Zitat: Die Info hängt aber nicht am Objekt, sondern im genannten Dictionary.
Das hab ich mir gedacht. Und wie und wo genau muss ich da nachschauen ??? Ich hab mal mit GC 360 angefangen, da bekomme ich ein Dictionary. (da hab ich mich noch gefreut) Da stand aber nix brauchbares drin. Also GC360 aus diesem Dict genommen und weitergemacht. Noch ein Dictionary (freu) Da drin hab ich (3 . "ACDB_ANNOTATIONSCALES") gefunden und mit GC350 ein Objekt dahinter. Schon wieder ein Dictionary (freu) Da steht sowas: (3 . "*A1") (350 . <Objektname: 28d355dc370> ) Aha, ein (0 . "ACDB_BLKREFOBJECTCONTEXTDATA_CLASS"). Noch nie gesehen. Egal. (freu) Dort ist das hier zu finden: (100 . "AcDbAnnotScaleObjectContextData") (340 . <Objektname: 28d355ce250> ) Und dann endlich in diesem Objekt : (300 . "1:100") Die Antwort hat deshalb so lange gebraucht, weil ich mich erst mal fertig freuen musste Ich frag mich zwar was die Menschheit zu so einer Verschachtelung treibt, aber eigentlich will ichs gar nicht wissen. Wenns jemandem hilft, der Weg ist gefunden. Aber bitte von Kindern und offenem Feuer fernhalten. So - und jetzt mach ich Mittag. Mahlzeit
------------------ Geht nicht, gibts nicht Gruß Andreas http://kraus-cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas Kraus Mitglied Elektrotechniker
Beiträge: 1356 Registriert: 11.01.2006 WIN 10 ACAD 2022
|
erstellt am: 28. Okt. 2016 14:26 <-- editieren / zitieren --> Unities abgeben:
Hab grade nochmal alles durchgelesen und einen Beitrag von cadffm bemerkt den ich, weil ich selbst grade am schreiben war, gar nicht gesehen hab. HUCH - da stand ja schon die Antwort und ich quäl mir hier einen ab. Naja, was dabei gelernt Aber fürs schneller Antworten als ichs gefunden hab, sollst du mit U's überschüttet werden. ------------------ Geht nicht, gibts nicht Gruß Andreas http://kraus-cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |