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
   93   94   95   96   97   98   99   100   101   102   103