Dim oAssDoc As AssemblyDocument
oAssDoc = ThisApplication.ActiveDocument
wfBoolean = InputRadioBox("Включить рабочие элементы Да/Нет", "Да", "Нет", False, "iLogic")
For Each oWorkPlane In oAssDoc.ComponentDefinition.WorkPlanes
oWorkPlane.Visible = wfBoolean
Next
Деталь:Dim oDoc As PartDocument
oDoc = ThisDoc.Document
wfBoolean = InputRadioBox("Включить рабочие элементы Да/Нет", "Да", "Нет", False, "iLogic")
For Each oWorkPlane In oDoc.ComponentDefinition.WorkPlanes
oWorkPlane.Visible = wfBoolean
Next
Как указать на компонент сборки понятно:ThisApplication.CommandManager.Pick(SelectionFilterEnum.kAssemblyOccurrenceFilter, "Укажите компонент")
Какая функция отвечает за компоненты сборки? ComponentOccurrence?
Вариант 2.Огромное спасибо, Владимир. Вы просто кладезь знаний. Этот вариант то, что надо.
Код - vb.net: [Выделить]
Private Sub ToggleWorkPlaneVisibility_2()
Dim oObj As Object
Set oObj = ThisApplication.CommandManager.Pick( _
SelectionFilterEnum.kAssemblyLeafOccurrenceFilter, "Укажите компонент")
Dim oOcc As ComponentOccurrence
Set oOcc = oObj
'Фильтр kAssemblyLeafOccurrenceFilter допускает
'выделение только деталей, но не подсборок
Dim oDef As PartComponentDefinition
Set oDef = oOcc.Definition
Dim oWPlanes As WorkPlanes
Set oWPlanes = oDef.WorkPlanes
Dim wp As WorkPlane
For Each wp In oWPlanes
'найдем прокси-плоскость wpProxy для плоскости wp
Dim wpProxy As WorkPlaneProxy
Set wpProxy = Nothing
Call oOcc.CreateGeometryProxy(wp, wpProxy)
wpProxy.Visible = Not wpProxy.Visible
Next
Beep
End Sub 'ToggleWorkPlaneVisibility_2
В данном примере процедура изменения видимости игнорируетНе понял, а почему нужно делать игнорирование? Мне наоборот без игнорирования надо.
не только конструкционные плоскости, что следует делать всегда,
но и главные плоскости системы координат (это опция).
Мне единственно не понятно: почему исторически так сложилось, что нельзя в сборке отобразить плоскости координат для параметрических моделей и сборок?Как я понимаю, речь идет о iPart? Просто мысли вслух... В сборках отображаются исполнения iPart на базе производных компонентов, редактирование которых напрямую наглухо закрыто, даже через API... Может здесь причина?