W ramach projektu mam do zrobienia dość długie makro (stworzenie kilku ujęć + szkice) do powtarzania w pętli. Wszystko działa, ale powoli, bardzo powoli. Na każdym etapie obliczeń (restart mojej pętli) usuwam poprzednią konstrukcję, aby odciążyć model. Ponadto za każdym razem, gdy tworzę plan lub szkic, chowam go (Part.BlankRefGeom lub Part.BlankSketch). Ale oto mój problem: program jest zawsze powolny (częściowo ze względu na fakt, że SW stworzył plan lub szkic, a potem dopiero po masce, więc etap budowy nadal pojawia się na krótki czas i spala zasób), czy masz technikę, aby całkowicie ukryć konstrukcję (poproś SW, aby jej nie wyświetlał)?
Tak, to działa, ale z zachowaniem kilku zasad, które można zobaczyć tutaj w rozdziale "Uwagi", biorąc pod uwagę, że "ISldWorks::UserControl" jest domyślnie równe True, gdy Solidworks nie jest uruchamiany przez twój program.
Tak więc, aby Solidworks był niewidoczny, jeśli nie jest uruchamiany przez program, w Solidworks nie może być otwarty żaden dokument i należy umieścić "swApp.UserControl = False" przed wierszem "swApp.Visible = False".
Bądź ostrożny, jeśli zamkniesz swój program z Solidworks niewidocznym, pozostanie on otwarty, ale w trybie niewidocznym, więc musisz pamiętać, aby albo go zobaczyć, albo zamknąć przed zamknięciem programu.