Jaka jest linia, którą należy napisać, aby znaleźć się w polu widzenia?

Chciałbym utworzyć makro, które zapisuje zdjęcie każdego widoku otwartego złożenia, ale kiedy zapisuję makro, zmiana widoku nie zapisuje, jaka jest linia, którą należy wpisać, aby to osiągnąć?

Witam

Oto lista widoków:

Dim swApp As Object
Dim Part As Object

Sub main()

Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc

' Part.ShowNamedView2 "Normal à", 0   'Normal à un plan ou une face sélectionné(e)
Part.ShowNamedView2 "Face", 1
' Part.ShowNamedView2 "Dos", 2
' Part.ShowNamedView2 "Gauche", 3
' Part.ShowNamedView2 "Droite", 4
' Part.ShowNamedView2 "Dessus", 5
' Part.ShowNamedView2 "Dessous", 6
' Part.ShowNamedView2 "Isométrique", 7
' Part.ShowNamedView2 "Trimétrique", 8
' Part.ShowNamedView2 "Dimétrique", 9

' Part.ShowNamedView2 "Vue perso 1", -1
' Part.ShowNamedView2 "Vue perso 2", -1

Part.ViewZoomtofit2   'Ajuste le cadrage de la pièce ou l'assemblage à la vue

End Sub

 

W przypadku standardowych widoków nazwa widoku w cudzysłowie jest czysto orientacyjna, można ją zastąpić "" lub "blabla" nadal działa, tylko liczba określa widok, który ma być wyświetlany.

Z drugiej strony w przypadku widoków niestandardowych liczba wynosi zawsze -1 i tylko nazwa w cudzysłowie (odpowiadająca oczywiście nazwie nadanej widokowi podczas jego tworzenia) definiuje widok, który ma być wyświetlany.

4 polubienia

Witam, Oto makro, które zrobiłem, dlaczego nie działa?

' ******************************************************************************
' C:\Users\domon\AppData\Local\Temp\swx19096\Macro1.swb - makro nagrane 08/11/22 przez domon
' ******************************************************************************
Dim swApp As Object

Przyciemnij część jako obiekt
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

Ustaw swApp = Application.SldWorks

Ustaw część = swApp.ActiveDoc
Przyciemnij myModelView jako obiekt
Ustaw myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
' Part.ShowNamedView2 "Twarz", 1
' Part.ViewZoomtofit2

' Zapisz jako
longstatus = Part.SaveAs3("E:\Pulpit\Przechwytywanie\face.JPG widok", 0, 2)
Koniec subwoofera
 


makro0004.swp
1 polubienie

Witam

Ponieważ zostawiłeś wiersze ShowNamedView2 i ViewZoomtoFit2 w komentarzach... Apostrofy znajdujące się na początku wierszy muszą zostać usunięte.

PS: Zacząłem pisać zaawansowane makro do obsługi masowego zapisywania obrazów ramek, dla wielu dokumentów, wielu widoków, widoków parametryzowanych i nie tylko. Prapremiera:

3 polubienia

Fajny projekt @Sylk, jeśli możesz się tym z nami później podzielić, byłbym ciekawy, aby to zobaczyć!

2 polubienia

Oczywiście , że @sbadenis, taka jest moja intencja i cel.

1 polubienie