Page 98 - 6735
P. 98
Set swApp = Application.SldWorks
'відкрити креслення
Set swDraw = swApp.OpenDoc6(drawingPathName, 3, 0, "",
longstatus, longwarnings)
snames = swDraw.GetSheetNames 'назви листів креслення
For i = 0 To swDraw.GetSheetCount - 1 'для кожного листа
sname = snames(i) 'назва листа
swDraw.ActivateSheet sname 'активувати лист
Debug.Print sname
vs = swDraw.Sheet(sname).GetViews 'види листа
If TypeName(vs) <> "Empty" Then 'якщо є види
For Each v In vs 'для кожного виду
swDraw.ActivateView v.Name 'активувати вид
Debug.Print v.Name, v.GetReferencedModelName
'назва виду і його вихідної моделі
compName = ""
If TypeName(v.GetVisibleComponents) <> "Empty"
Then
For Each c In v.GetVisibleComponents 'для
кожного видимого компонента
compName = c.Name 'назва компонента
Next c
End If
pos = v.Position 'позиція виду
Set myView = v 'об'єкт виду (необхідно для
безпомилкової роботи функції GetOrientationName)
Debug.Print myView.GetOrientationName 'назва
орієнтації виду (*Front, *Left...)
Set dv = findView(sname, v.Name, data) 'знайти
вид у data
If Not dv Is Nothing Then 'якщо є
Debug.Print v.GetReferencedModelName,
dv.ReferenceModelPath
98