FTA Catia R24 关联前视图 (VBA)
FTA Catia R24 Associative Front view (VBA)
有谁知道如何使用 VBA 在 FTA 中创建关联前视图。我有基于 3D 几何体创建前视图的简短宏,但此视图是孤立的,我必须手动将其更改为关联。
我想要的是由宏创建的关联视图。执行强力复制宏是第一步。
下面是我的代码。
Sub CATMain()
Dim partDocument1 As PartDocument
Set partDocument1 = CATIA.ActiveDocument
Dim part1 As PART
Set part1 = partDocument1.PART
'--------------------------------------------------
'Create Annotation Set
Dim annotationSet1 As AnnotationSet
Set annotationSet1 = part1.AnnotationSets.Add("ISO")
'Debug.Print annotationSet1.Name
Dim theViewFactory As TPSViewFactory
Set theViewFactory = annotationSet1.TPSViewFactory
'--------------------------------------------------
'Create reference plane from selection
Dim ViewPlane As Reference
Set Selection = partDocument1.Selection
Selection.Clear
Selection.Search ("name='Plane.6',all") 'Search plane by name
Set ViewPlane = Selection.Item(1).Value 'Set plane from selection
Selection.Clear
'--------------------------------------------------
'Create Front View
Dim theView As TPSView
Set theView = theViewFactory.CreateView(ViewPlane, 0)
theView.Name = "FrontView"
'--------------------------------------------------
'Create dimension
part1.Update
End Sub
就我对 Catia API 的了解而言,无法使用 API.
关联 view
此外,使用 Win32 从句柄执行点击 buttons/comboboxes 将不起作用,因为要将视图关联到 plane/surface,您需要使用 Catia User 在所需位置执行点击界面。
API 上的 TPSView
对象可能是有史以来最糟糕的对象之一,它没有任何 属性。此外,TPSViewFactory
和 TPSViews
没有任何有用的方法来管理视图。
所以,简短的回答是不,你不能那样做。
有谁知道如何使用 VBA 在 FTA 中创建关联前视图。我有基于 3D 几何体创建前视图的简短宏,但此视图是孤立的,我必须手动将其更改为关联。 我想要的是由宏创建的关联视图。执行强力复制宏是第一步。
下面是我的代码。
Sub CATMain()
Dim partDocument1 As PartDocument
Set partDocument1 = CATIA.ActiveDocument
Dim part1 As PART
Set part1 = partDocument1.PART
'--------------------------------------------------
'Create Annotation Set
Dim annotationSet1 As AnnotationSet
Set annotationSet1 = part1.AnnotationSets.Add("ISO")
'Debug.Print annotationSet1.Name
Dim theViewFactory As TPSViewFactory
Set theViewFactory = annotationSet1.TPSViewFactory
'--------------------------------------------------
'Create reference plane from selection
Dim ViewPlane As Reference
Set Selection = partDocument1.Selection
Selection.Clear
Selection.Search ("name='Plane.6',all") 'Search plane by name
Set ViewPlane = Selection.Item(1).Value 'Set plane from selection
Selection.Clear
'--------------------------------------------------
'Create Front View
Dim theView As TPSView
Set theView = theViewFactory.CreateView(ViewPlane, 0)
theView.Name = "FrontView"
'--------------------------------------------------
'Create dimension
part1.Update
End Sub
就我对 Catia API 的了解而言,无法使用 API.
关联view
此外,使用 Win32 从句柄执行点击 buttons/comboboxes 将不起作用,因为要将视图关联到 plane/surface,您需要使用 Catia User 在所需位置执行点击界面。
API 上的 TPSView
对象可能是有史以来最糟糕的对象之一,它没有任何 属性。此外,TPSViewFactory
和 TPSViews
没有任何有用的方法来管理视图。
所以,简短的回答是不,你不能那样做。