Make All Assembly Components Visible Example (VB)

王朝c#·作者佚名  2006-12-17
窄屏简体版  字體: |||超大  

solidworks的api帮助还是很全面的,里面有好多见简单而有效的程序,成天在api帮助里泡着,现在做程序的速度是越来越快。好像当年成天在excel中录制宏看代码的感觉。下面的程序是api帮助里的,它用来显示装配体的所有零部件。我给我的同事们用,他们觉得不错 :)。程序使用了一个简单的递归方法遍历了装配体。

Make All Assembly Components Visible Example (VB)This example shows how to make all assembly components visible.

'---------------------------------------

'

' Preconditions: An assembly document is open.

'

' Postconditions: Any hidden assembly components are made visible.

'

'---------------------------------------

Option Explicit

Public Enum swComponentVisibilityState_e

}}--swComponentHidden = 0

}}--swComponentVisible = 1

End Enum

Sub TraverseComponent _

( _

}}--swComp As SldWorks.Component2, _

}}--nLevel As Long _

)

}}--Dim vChildCompArr }}-- }}--As Variant

}}--Dim vChildComp }}-- }}--As Variant

}}--Dim swChildComp }}-- }}--As SldWorks.Component2

}}--Dim swCompConfig }}-- }}--As SldWorks.Configuration

}}--Dim sPadStr }}-- }}--As String

}}--Dim i }}-- }}--As Long

}}--

}}--For i = 0 To nLevel - 1

}}--sPadStr = sPadStr + ' }}-- }}--'

}}--Next i

}}--

}}--vChildCompArr = swComp.GetChildren

}}--For Each vChildComp In vChildCompArr

}}--Set swChildComp = vChildComp

}}--

}}--Debug.Print sPadStr & swChildComp.Name2 & ' <' & swChildComp.ReferencedConfiguration & '>'

}}--

}}--If swComponentHidden = swChildComp.Visible Then

}}--swChildComp.Visible = swComponentVisible

}}--End If

}}--

}}--TraverseComponent swChildComp, nLevel + 1

}}--Next

End Sub

Sub main()

}}--Dim swApp }}-- }}--As SldWorks.SldWorks

}}--Dim swModel }}-- }}--As SldWorks.ModelDoc2

}}--Dim swAssy }}-- }}--As SldWorks.AssemblyDoc

}}--Dim swConf }}-- }}--As SldWorks.Configuration

}}--Dim swRootComp }}-- }}--As SldWorks.Component2

}}--Dim bRet }}-- }}--As Boolean

Set swApp = Application.SldWorks

}}--Set swModel = swApp.ActiveDoc

}}--Set swConf = swModel.GetActiveConfiguration

}}--Set swRootComp = swConf.GetRootComponent}}--}}--

}}--Debug.Print 'File = ' & swModel.GetPathName

TraverseComponent swRootComp, 1

End Sub

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航