提问人:liltequilaa 提问时间:9/26/2023 最后编辑:braXliltequilaa 更新时间:9/26/2023 访问量:93
是否可以从 GetSurfaces 函数获取 Brep 名称?(CATIA VBA)
Is it Possible to Get Brep Name from GetSurfaces function? (CATIA VBA)
问:
这是我在 Stack 上的第一篇文章,我想问一下是否可以从 get surfaces 函数中获取 BRep 名称。现在,我有
Set annoSurface = myDocument.Selection.Item(1).Value
surfaceCount = annoSurface.GetSurfacesCount
ReDim surfaceArray(surfaceCount - 1)
annoSurface.GetSurfaces surfaceArray
For j = 0 To surfaceCount - 1
surfaceNamePath = Split(surfaceArray(j), "/")
pathLen = UBound(surfaceNamePath) - LBound(surfaceNamePath)
If surfaceNamePath(1) <> "Annotation Set.1" Then
ReDim surName(pathLen - 2) As String
For i = 1 To pathLen - 1
surName(i - 1) = surfaceNamePath(i)
Next i
surfaceName = Replace(Join(surName, "/"), surName(pathLen - 2), "!" & surName(pathLen - 2))
Set surfaceRef = Product.CreateReferenceFromName(surfaceName)
myDocument.Selection.Add surfaceRef
End If
Next j
在此代码中,我能够从 CATIA 的 GetSurfaces API 中检索实例名称。从那里,我能够将名称重新排列为可搜索的图面名称。
例如:K0654-50-3567212-00/滑动活塞/操作/孔/制动杆孔/Groove.3/面->滑动活塞/操作/孔/制动杆孔/!凹槽.3
然后,我从新名称创建一个引用,并将其添加到选择中。但是当我添加到选择中时,它会突出显示多个表面。我只想强调 1.在此处输入图像描述 在此处输入图像描述
我实际上不确定从这里开始,我已经看到您可以使用 BRep 来具体说明要选择的表面边界,但我不确定如何仅从 GetSurfaces 函数中获取它。
答: 暂无答案
评论