| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| CAD/CAM-Workshop in Suhl-Friedberg: SolidCAM + SOLIDWORKS |
Autor
|
Thema: Zahlenwert für Bildqualität per Makro eingeben (4036 mal gelesen)
|
Joshua63 Mitglied Maschinenbautechniker
Beiträge: 371 Registriert: 08.11.2006 W10 SP1 Intel i7 8700K Quatro P4000 32GB RAM SW 2021 SP4.1 SWX PDM Professional 2021
|
erstellt am: 10. Jun. 2015 17:56 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, es gab zu diesem Thema schon einige Anfragen, habe für meinen Fall aber nicht das richtige gefunden. Die meisten kennen das, wenn SWX wieder einmal die Bildqualität herunterschraubt und alle Bohrungen wie Sechsecke aussehen. Gibt es die Möglichkeit den mm-Wert für die Bildqualität mit einem Makro einzutragen? Der Wertebereich ist bei einer BG und einem Teil unterschiedlich, aber das steht erst mal hinten an. Grüßle :-)
------------------ Viele Wege führen zum Ziel .......... und ich will alle wissen ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Heiko Soehnholz Ehrenmitglied V.I.P. h.c. Dipl.-Ing. (FH) Maschinenbau
Beiträge: 5463 Registriert: 03.07.2002 SOLIDWORKS 2001 - 2024SP0.1 Elite AE Award 2023 SOLIDWORKS Premium, Simu, Flow, Plastics, Composer, MBD, Inspection, PDMP, Visualize, TopsWorks, DPS Tools, JobBox, MacroSheet, etc. Passungstabelle von Heinz WIN10x64 22H2 | HP ZBook 17 Fury G8
|
erstellt am: 10. Jun. 2015 22:28 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
|
Winni-two Mitglied Ing. Maschb.
Beiträge: 154 Registriert: 12.03.2010 SW 2021 SP5 Intel Xenon W2135 @3.7GHz Win 10 64 bit Graka: Nvidia Quadro P4000 32 GB Ram
|
erstellt am: 11. Jun. 2015 07:55 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
Hallo boolstatus = ModelDocExtension.SetUserPreferenceDouble(swUserPreferenceDoubleValue_e.swImageQualityShadedDeviation, swUserPreferenceOption_e.swDetailingNoOptionSpecified, 0.4645 / 1000) Gruss Winni Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Joshua63 Mitglied Maschinenbautechniker
Beiträge: 371 Registriert: 08.11.2006 W10 SP1 Intel i7 8700K Quatro P4000 32GB RAM SW 2021 SP4.1 SWX PDM Professional 2021
|
erstellt am: 11. Jun. 2015 09:43 <-- editieren / zitieren --> Unities abgeben:
Hi Heiko Die Bildqualität wird andauernd verändert. Je mehr ich mit großen Baugruppen arbeite, desto öfter passiert es. Ich möchte mir ein Makro basteln, das es mir ermöglicht zwischen 2 oder 3 Einstellungen zu wählen. Hi Winni-two
danke für die Zeile, werde es mal testen...... Gruß
------------------ Viele Wege führen zum Ziel .......... und ich will alle wissen ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
jörg.jwd Ehrenmitglied V.I.P. h.c. CAD-PDM Administrator
Beiträge: 3109 Registriert: 05.11.2003
|
erstellt am: 11. Jun. 2015 10:53 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
Hallo Heiko, ich nehme mal an dass er ab einer bestimmten Anzahl Komponenten auf Modus "große Baugruppe" umschaltet. Was ich bei meinen Usern ständig erlebe ist dass BG's mal reduziert mal vollständig gespeichert sind. Dann sieht es tatsächlich so aus als würde SWX an der Bildqualität "rumschrauben". ------------------ Grüße Jörg da ich weiß daß ich nichts weiß weiß ich immer noch mehr als die die nicht wissen daß sie nichts wissen (weiß nicht von wem) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Joshua63 Mitglied Maschinenbautechniker
Beiträge: 371 Registriert: 08.11.2006 W10 SP1 Intel i7 8700K Quatro P4000 32GB RAM SW 2021 SP4.1 SWX PDM Professional 2021
|
erstellt am: 11. Jun. 2015 11:27 <-- editieren / zitieren --> Unities abgeben:
Hi Winni...... ich habe das zwar hin bekommen, aber kannst du mir sagen ob es ein System gibt das den Bereich errechnet oder ermittelt ? Liegt der Wert den ich eingeben will außerhalb des Bereichs (mögliche Min-Max-Eingabe in den Optionen), dann wird nix eingetragen. Da du mir die Zeile gegeben hast, hoffe ich du bist etwas tiefer in der Marterie Gruß ------------------ Viele Wege führen zum Ziel .......... und ich will alle wissen ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Winni-two Mitglied Ing. Maschb.
Beiträge: 154 Registriert: 12.03.2010 SW 2021 SP5 Intel Xenon W2135 @3.7GHz Win 10 64 bit Graka: Nvidia Quadro P4000 32 GB Ram
|
erstellt am: 11. Jun. 2015 12:01 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
Option Explicit Dim swApp As Object Dim Part As Object Dim Value As Double Dim MinValue As Double Dim MaxValue As Double
Sub Main() Set swApp = Application.SldWorks Set Part = swApp.ActiveDoc Part.Extension.GetUserPreferenceDoubleValueRange swImageQualityShadedDeviation, Value, MinValue, MaxValue MsgBox "Momentaner Wert= " & Value & Chr(13) & "Min= " & MinValue & Chr(13) & "Max= " & MaxValue End Sub
Gruss Winne Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Joshua63 Mitglied Maschinenbautechniker
Beiträge: 371 Registriert: 08.11.2006 W10 SP1 Intel i7 8700K Quatro P4000 32GB RAM SW 2021 SP4.1 SWX PDM Professional 2021
|
erstellt am: 11. Jun. 2015 15:19 <-- editieren / zitieren --> Unities abgeben:
Hi Winne, vielen Dank...... Klappt alles fürs erste, bin aber noch am tüfteln da ich nicht unbedingt den Min-Wert oder Max-Wert brauche. Bei mir als Amateur wird das noch ne Weile dauern bis es so ist wie ich möchte..... ciao
------------------ Viele Wege führen zum Ziel .......... und ich will alle wissen ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Joshua63 Mitglied Maschinenbautechniker
Beiträge: 371 Registriert: 08.11.2006 W10 SP1 Intel i7 8700K Quatro P4000 32GB RAM SW 2021 SP4.1 SWX PDM Professional 2021
|
erstellt am: 22. Jun. 2015 17:58 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, da doch schon einige Klicks auf diesem Thema sind, stelle ich mal mein Makro als ZIP zur Verfügung. Es ist bestimmt nicht nach Lehrbuch geschrieben, eher aus verschiedenen Schnipseln zusammengeschustert Bei mir geht es gut. Zur Erklärung: 1. Ich lese die 3 Werte des Schiebers aus: Min, Max und Ist-Wert 2. Setze die beiden Optionen 3. errechne den Einfügewert (Min-Wert mit Multiplikator) 4. Füge den Wert ein 5. Neuaufbau (dauert bei großen BG ein wenig) Da man nicht unbedingt die beste Auflösung braucht, sonst wird die Sache sehr langsam, habe ich den Min-Wert mit einem Faktor 1,15 versehen. War bei allen Teilen und Baugruppen völlig ausreichend. Wer es besser oder schlechter haben will, nur den Multiplikator ändern. Der Einfügewert darf aber den Min-Wert nicht unterschreiten, sonst wird nix eingetragen ! Das Ganze ist sehr einfach gehalten. Viel Spaß damit..... PS: Vielen Dank an Winni-two, one seine Hilfe hätte ich erheblich länger gebraucht. ciao ------------------ Viele Wege führen zum Ziel .......... und ich will alle wissen ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
L.Schröter Mitglied Projektierung
Beiträge: 263 Registriert: 29.03.2007 Aus dem Stein der Weisen macht der Dumme Schotter. (Deutsches Sprichwort)
|
erstellt am: 25. Jan. 2017 10:49 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
ACHTUNG! Sie antworten auf einen Beitrag der älter als 1 Jahr ist! Moin zusammen, dieses Makro macht eigentlich genau das was ich schon länger gesucht habe. Es geht bei uns um das herunterschrauben der Bildqualität. Habe das jetzt an ein paar Baugruppen getestet und jetzt das Problem: Nachdem das durchgelaufen ist, habe ich bei manchen Baugruppen/Teilen plötzliche jede Menge rote und gelbe Ausrufezeichen im Featurebaum. Hautsächliche Skizzen die den Bezug verloren haben. Was läuft da falsch bzw. woran liegt das? Hat es ggf. was der Einfrierenleiste zu tun? Getestet wurde es in SWX2012 und SWX2014 So sieht das angepaßte Makro aus (minValue geändert auf 4): ' ******************************************** ' * Makro zum Ändern der bildschirmauflösung ' * made by Joshua63 12.06.2015 ' ******************************************** Option Explicit Dim swApp As Object Dim Part As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Dim ModelDocExtension As ModelDocExtension Dim b As Boolean Dim Value As Double ' Istwert Dim MinValue As Double ' Min-Wert Dim MaxValue As Double ' Max-wert Sub main() Set swApp = Application.SldWorks Set Part = swApp.ActiveDoc Set ModelDocExtension = Part.Extension Dim EWert 'Einfügewert
' Ist-Wert und Min/Max Werte auslesen Part.Extension.GetUserPreferenceDoubleValueRange swImageQualityShadedDeviation, Value, MinValue, MaxValue ' Ausgabe in einer Messagebox ' MsgBox "Momentaner Wert= " & Value & Chr(13) & "Min= " & MinValue & Chr(13) & "Max= " & MaxValue 'Optionen setzen Part.SetUserPreferenceToggle swImageQualityUseHighQualityEdgeSize, True Part.SetUserPreferenceToggle swImageQualitySaveTesselationWithPartDoc, True ' Prozentualen Einfügewert berechnen (Min-Wert = Faktor 1.15) EWert = MinValue * 4
' Wert einfügen boolstatus = ModelDocExtension.SetUserPreferenceDouble(swUserPreferenceDoubleValue_e.swImageQualityShadedDeviation, swUserPreferenceOption_e.swDetailingNoOptionSpecified, EWert)
b = Part.ForceRebuild3(False) Part.EditRebuild3 End Sub
------------------ MfG L. Schröter ----------------------------------------------------- [HP Z440] [E5-1630V3@3,7GHz] [16GB RAM DDR4] [256GB Z-Turbo SSD] [1TB HDD WD] [NVidia Quadro K2200 4GB] [24" HP ZR24w + 24" HP Z24i] Win7 64bit SolidWorks 2012x64 SP5.0 SolidWorks 2014x64 SP5.0 ----------------------------------------------------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Joshua63 Mitglied Maschinenbautechniker
Beiträge: 371 Registriert: 08.11.2006 W10 SP1 Intel i7 8700K Quatro P4000 32GB RAM SW 2021 SP4.1 SWX PDM Professional 2021
|
erstellt am: 25. Jan. 2017 13:17 <-- editieren / zitieren --> Unities abgeben:
Hi...... ich habe mal ein paar BG getestet: 2014, 2015, mit und ohne Einfrierleiste, einigen anderen Werten ect. Bei keiner gab es ein Problem, kann es mir also leider nicht erklären. Waren aber auch nur BG mit ca. 100 Teilen. Sorry das ich dir da nicht weiter helfen kann. Gruß ------------------ Viele Wege führen zum Ziel .......... und ich will alle wissen ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
L.Schröter Mitglied Projektierung
Beiträge: 263 Registriert: 29.03.2007 Aus dem Stein der Weisen macht der Dumme Schotter. (Deutsches Sprichwort)
|
erstellt am: 25. Jan. 2017 15:36 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
@Joshua63 Danke für die schnelle Rückmeldung. Kann mir auch nicht wirklich erklären womit das zusammenhängen soll. Es ist Merkwürdig. Dachte erst es wäre nur bei Referenzen (z.B. Bohrungen etc.) der Fall. Da würde ja ggf. ein unsauberer Aufbau oder Berechnungfehler auf Grund ungünstiger Konstruktion in Betracht kommen. Hatte aber gerade den Fehler auch bei einem Importteil. Da war ein Körper hin (gelbes Rufzeichen). Werd noch ein paar Versuche wagen.
------------------ MfG L. Schröter ----------------------------------------------------- [HP Z440] [E5-1630V3@3,7GHz] [16GB RAM DDR4] [256GB Z-Turbo SSD] [1TB HDD WD] [NVidia Quadro K2200 4GB] [24" HP ZR24w + 24" HP Z24i] Win7 64bit SolidWorks 2012x64 SP5.0 SolidWorks 2014x64 SP5.0 ----------------------------------------------------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Joshua63 Mitglied Maschinenbautechniker
Beiträge: 371 Registriert: 08.11.2006 W10 SP1 Intel i7 8700K Quatro P4000 32GB RAM SW 2021 SP4.1 SWX PDM Professional 2021
|
erstellt am: 25. Jan. 2017 15:45 <-- editieren / zitieren --> Unities abgeben:
Hi, kommentiere mal den Neuaufbau im Makro aus und mache ihn manuell. Vielleicht hilft das ja den Fehler zu finden. Der 2. Ansatz wäre, die Auflösung manuell zu ändern und dann den Neuaufbau machen. Ich ändere ja nix an den Teilen, nur einen Wert in den Systemoptionen... Gruß ------------------ Viele Wege führen zum Ziel .......... und ich will alle wissen ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
L.Schröter Mitglied Projektierung
Beiträge: 263 Registriert: 29.03.2007 Aus dem Stein der Weisen macht der Dumme Schotter. (Deutsches Sprichwort)
|
erstellt am: 02. Feb. 2017 10:31 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
Guten Morgen, habe zumindest bei einem Teil den Fehler gefunden. Da funktioniert ein Schnitt nicht, fällt aber erst bei Strg+Q auf. Nach längerem probieren liegt es daran dass das Importierte Teil noch Flächenfehler hatte. Jetzt weiß ich zumindest warum bei uns das laden von Baugruppen und Teilen so unendlich langsam ist. Die Vorlagen "schleppen" wir schon lange mit und da ist der Schieber für Bildqualität schon kurz vor dem roten Bereich Gibt es eine Möglichkeit das Makro über alle in der BG enhaltenen Teile + Baugruppen laufen zu lassen und den Wert der Bildqualität entsprechend zu ändern?
------------------ MfG L. Schröter ----------------------------------------------------- [HP Z440] [E5-1630V3@3,7GHz] [16GB RAM DDR4] [256GB Z-Turbo SSD] [1TB HDD WD] [NVidia Quadro K2200 4GB] [24" HP ZR24w + 24" HP Z24i] Win7 64bit SolidWorks 2012x64 SP5.0 SolidWorks 2014x64 SP5.0 ----------------------------------------------------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Joshua63 Mitglied Maschinenbautechniker
Beiträge: 371 Registriert: 08.11.2006 W10 SP1 Intel i7 8700K Quatro P4000 32GB RAM SW 2021 SP4.1 SWX PDM Professional 2021
|
erstellt am: 02. Feb. 2017 13:21 <-- editieren / zitieren --> Unities abgeben:
Hi .... Da es eine Systemeinstellung ist, müsste es für alle geöffneten Teile sein. Ich habe aber noch mal rein geschaut und diese Option gesehen: "Auf alle referenzierten Teildokumente anwenden " Füge mal diese ganze Zeile ins Makro bei der Position "Optionen setzen" ein: Part.SetUserPreferenceToggle swImageQualityApplyToAllReferencedPartDoc, True ' auf alle referenzierte Dokumente anwenden Damit werden dann alle 3 Optionen (siehe Bild) gesetzt. Vielleicht bringt das ja den gewünschten Effekt. Gruß ------------------ Viele Wege führen zum Ziel .......... und ich will alle wissen ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Pete85 Mitglied
Beiträge: 156 Registriert: 09.05.2016
|
erstellt am: 20. Jul. 2021 15:00 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
ACHTUNG! Sie antworten auf einen Beitrag der älter als 1 Jahr ist! Hallo zusammen, ich habe das hier mal ausgegraben und im SW2020 laufen lassen... leider funktioniert dieser bei mir nicht... gibt es da einen Grund? Ich habe mir den Regler zu einem 0-100% Regler umgebaut... so die Theorie... es will aber nicht. Code:
Option Explicit
Dim swApp As Object Dim Part As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Dim ModelDocExtension As ModelDocExtension Dim b As Boolean Dim Value As Double ' Istwert Dim MinValue As Double ' Min-Wert Dim MaxValue As Double ' Max-wert Sub main() Set swApp = Application.SldWorks Set Part = swApp.ActiveDoc Set ModelDocExtension = Part.Extension Dim EWert 'Einfügewert Dim Prozfactor As Double Dim Prozadd As Double
' Ist-Wert und Min/Max Werte auslesen Part.Extension.GetUserPreferenceDoubleValueRange swImageQualityShadedDeviation, Value, MinValue, MaxValue ' Ausgabe in einer Messagebox 'MsgBox "Momentaner Wert= " & Value & Chr(13) & "Min= " & MinValue & Chr(13) & "Max= " & MaxValue Debug.Print "Momentaner Wert= " & Value & Chr(13) & "Min= " & MinValue & Chr(13) & "Max= " & MaxValue Prozfactor = (MaxValue - MinValue) / 100 Prozadd = Prozfactor * 75
'Optionen setzen Part.SetUserPreferenceToggle swImageQualityUseHighQualityEdgeSize, True Part.SetUserPreferenceToggle swImageQualitySaveTesselationWithPartDoc, True
' Prozentualen Einfügewert berechnen (Min-Wert = Faktor 1.15) EWert = MinValue + Prozadd Debug.Print EWert
' Wert einfügen boolstatus = ModelDocExtension.SetUserPreferenceDouble(swUserPreferenceDoubleValue_e.swImageQualityShadedDeviation, swUserPreferenceOption_e.swDetailingNoOptionSpecified, EWert)
b = Part.ForceRebuild3(False) Part.EditRebuild3 End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Pete85 Mitglied
Beiträge: 156 Registriert: 09.05.2016
|
erstellt am: 21. Jul. 2021 07:45 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
ACHTUNG! Sie antworten auf einen Beitrag der älter als 1 Jahr ist! Moin Moin, also es passt wohl nun doch. Der Regler scheint aber nicht linear zu reagieren. Die genaue Formel für eine lineare Einstellung wird man wohl nicht bekommen.. Kennt jemand die Codezeile für die Einstellung der hohen Bildqualität? Danke und Gruß Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bk.sc Ehrenmitglied V.I.P. h.c. Konstrukteur Sondermaschinenbau
Beiträge: 2776 Registriert: 18.07.2012 -Solid Works 2019 SP5 -Pro Engineer WF 3
|
erstellt am: 21. Jul. 2021 13:16 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
Hallo Pete,
Zitat: Kennt jemand die Codezeile für die Einstellung der hohen Bildqualität?
was meinst du genau für eine Eisntellung? Such mal in der API-Hilfe nach "System Options and Document Properties" darüber kommt man eigentlich an alle Einstellungen ran, hier sind dann auch auch Bilder der Unterpunkte der System/Dokumeneinstellungen anhand derer man sich gut durchhangeln kann. Gruß Bernd
------------------ --- Man muß nicht alles wissen, man muß nur wissen wo es steht --- Staatlich anerkannte Deutschniete Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ralf Tide Moderator -
Beiträge: 4978 Registriert: 06.08.2001 Sehr seltsame Dinge passiern <Klaus Lage - Toy Story> .-)
|
erstellt am: 21. Jul. 2021 14:17 <-- editieren / zitieren --> Unities abgeben: Nur für Joshua63
|