递归方式获得装配下指定节点下的所有子组件Component
比如你要获得组件所有的装配节点,可以从根节点进行遍历,如果你只想获得你指定节点下面的子组件,传入的第一个参数就传入你指定的节点Component即可。
例:获得根节点下的所有子组件(及装配全部子组件,用NXOpen方式)
//获得根节点 Assemblies::Component *rootComponent = theSession->Parts()->Display()->ComponentAssembly()->RootComponent(); vector<Assemblies::Component *> pComponents; GetAppointComponents(rootComponent , pComponents); //获得根节点下所有组件 //-------以下为递归函数------ //获得指定节点下的所有组件函数(采用递归方式) void GetAppointComponents(Assemblies::Component *component, vector<Assemblies::Component *>& pComponents) {此处内容已隐藏,评论后刷新即可查看!for(int i=0; i<childComponent.size(); i++) { pComponents.push_back(childComponent); GetAppointComponents( childComponent, pComponents); } }
转载请注明出处: 芝麻开花
本文的链接地址: http://www.vmould.cn/?post=33
您可能对以下文章感兴趣
发表评论 取消回复