Marvin Saeuberlich Geschrieben 3. September 2020 Teilen Geschrieben 3. September 2020 Hi zusammen. Möchte in meinen Projekten einige Klassen IMMER vom (versehentlichen) Druck ausschließen. Da VW keine "nicht drucken" oder "gesperrt" Funktion besitzt, habe ich mir mit einem Tag (NIEMALS DRUCKEN) geholfen und stelle die mit diesem Schlagwort versehenen Klassen kurz vorher auf unsichtbar. Jetzt die Frage: Lässt sich ein Script schreiben, welches das automatisiert? Also: suche alle Klassen mit dem bestimmten Tag, stelle diese unsichtbar - dann Drucken?! CADLIFE GmbH & Co. KG Vectorworks Partner Norddeutschland Klaus-Groth-Str. 25b, 20535 Hamburg home: https://www.cadlife.de Vectorworks Designer & Braceworks & Vision & Connectcad - Version: 2023 SP8 & 2024 29.0.4 (Update 4.1) MacBook Pro 16" 2021, M1 Max, 64 GB & MacBook Air 2020, M1, 8 GB - Sonoma 14.4.1 Lenovo Legion 7 Gen 6 / 16" (AMD Ryzen 9 5000 Series), 32 GB, 16 GB NVIDIA Geforce RTX 3080, Windows 11 Pro Link zu diesem Kommentar
Matteo Geschrieben 3. September 2020 Teilen Geschrieben 3. September 2020 ...könnte viell. auch über die Klassenbeschreibung gehen. Die lässt sich mit Vectorscript über "GetDescriptionText" abfragen... man stößt da aber recht schnell an Grenzen, sobald man aus Layouts druckt. Ansichtsbereiche lassen sich damit sicher nicht "durchdringen", um auch darin die "NIEMALS DRUCKEN"-Klassen abzustellen. Gesicherte Darstellungen sind da sicher auch ein sinnvolles Werkzeug... (nur ein paar Gedanken) MacBook Pro 16" - macOS 13 - Ventura - 2,3 GHz 8-Core Intel Core i9, 16GB RAM, AMD Radeon Pro 5500M 8 GB VRAM Vectorworks 2022 - SP6 Vectorworks 2023 - SP6 Link zu diesem Kommentar
herbieherb Geschrieben 3. September 2020 Teilen Geschrieben 3. September 2020 Wäre möglich. Einfach eine gesicherte Darstellung anlegen und per Script die Darstellung abrufen und den Druckbefehl auslösen. Man könnte auch per Script durch Ansichtsbereich-Sichtbarkeiten durchgehen, ich denke aber es geht um Hilfslinien auf den Layoutebenen? Ich spielte auch schon mit dem Gedanken ein solches Script zu schreiben, hab mich dann aber dagegen entschieden. Anhand der vergessenen Layouthilfslinien erkenne ich nämlich, wenn Mitarbeiter ihre Exporte/Drucke ablegen ohne dass sie selbst auch nur kurz drüberschauen. 1 Vectorworks 2024 - Architektur - Win 10 Link zu diesem Kommentar
Manuel Roth Geschrieben 3. September 2020 Teilen Geschrieben 3. September 2020 (bearbeitet) Ich bin nicht sicher, wie der Druckbefehl aufgerufen werden kann. Vielleicht kann @herbieherb, @Oliver Daus oder @Antonio Landsberger mir da kurz weiterhelfen. Ansonsten sollte es durchaus machbar sein. Bearbeitet 3. September 2020 von Manuel Roth Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar
herbieherb Geschrieben 3. September 2020 Teilen Geschrieben 3. September 2020 (bearbeitet) Das Python-Script wär ganz einfach: vs.VRestore('Name der gesicherten Darstellung') vs.PrintUsingPrintDialog() Sobald du mit Klassentags statt mit gesicherten Darstellungen arbeiten willst, wird das Script etwas komplizierter. Bearbeitet 3. September 2020 von herbieherb Vectorworks 2024 - Architektur - Win 10 Link zu diesem Kommentar
Manuel Roth Geschrieben 2. Oktober 2020 Teilen Geschrieben 2. Oktober 2020 Ich habe bei Desktopaufräumen ein Dokument gefunden, in dem ich ein Script für dieses Thema begonnen habe. Ich habe damals allerdings gestoppt, weil ich auf die schnelle keine Möglichkeit zur Unterscheidung von normalen Ansichtsbereichen und Schnitten gefunden habe. Hat jemand eine Idee, wie das bewerkstelligt werden könnte? Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar
hölzli Geschrieben 23. Oktober 2020 Teilen Geschrieben 23. Oktober 2020 Am 3.9.2020 um 15:22 schrieb herbieherb: Das Python-Script wär ganz einfach: vs.VRestore('Name der gesicherten Darstellung') vs.PrintUsingPrintDialog() Sobald du mit Klassentags statt mit gesicherten Darstellungen arbeiten willst, wird das Script etwas komplizierter. Wie würde denn ein solches Skript aussehen? Oder wo finde ich die benötigten Informationen? Über Appendix und Function Reference wurde ich nicht schlau - bin aber auch nicht wirklich erprobt in VectorScript/PythonScript. Ich denke, die Basis (Auswahl von Klassen mit Tags) könnte ich ganz ähnlich für meinen Wunsch bezüglich Konstruktionsebenen anwenden?. Vectorworks 2022 interiorcad | Windows11 Link zu diesem Kommentar
Manuel Roth Geschrieben 23. Oktober 2020 Teilen Geschrieben 23. Oktober 2020 Hier eine vereinfachte Version des Scripts. Es ginge eigentlich noch weiter (da es mit Schnitten und Renderings Rechenzeitprobleme geben wird), sollte im Grundsatz allerdings funktionieren. Wichtig ist einfach, dass im Druckdialog alle Ansichtsbereiche aktualisiert werden. #MRoth V1.0 #Ansichtsbereiche auf aktueller Ebene auflisten Vps = [] c = "((((ST=REGVIEWPORT)|(ST=SECTVIEWPORT)) & (L='" + vs.GetLName(vs.ActLayer()) + "')))" vs.ForEachObject(Vps.append, c) #Loop durch alle Klassen for i in range(1, vs.ClassNum() + 1): cl = vs.ClassList(i) #Tagliste erstellen b, s = vs.GetObjectTags(vs.GetObject(cl)) if s == None: tags = [] else: tags = list(s) #Wenn Tag vorhanden, dann ausblenden if "NIEMALS DRUCKEN" in tags: #Tag der Klassen, die nicht gedruckt werden sollen #Klasse ausblenden vs.HideClass(cl) #Klasse in allen Ansichtsbereichen ausblenden for Vp in Vps: vs.SetVPClassVisibility(Vp, cl, -1) #Darstellung aktualisieren vs.ReDrawAll() #Printdialog anzeigen vs.PrintUsingPrintDialog() 3 Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden