iCAx开思工具箱
标题:
怎样读取UG的装配树中,所选装配的文件名
[打印本页]
作者:
zjs
时间:
2010-4-16 21:20
标题:
怎样读取UG的装配树中,所选装配的文件名
怎样读取UG的装配树中,所选装配的文件名.。 open c 和 grip都行。我常做CAM, 这个不熟。
谢谢
(, 下载次数: 1)
上传
点击文件名下载附件
下载积分: 贡献 -2
作者:
zjs
时间:
2010-4-18 12:48
出手指点一下,可能实现吗?有时候最困难的就是方向
作者:
zjs
时间:
2010-4-19 00:47
今天搞出来了,做个总结。
1. UG的装配树不能按程序一样理解,而要将它考虑为obj
2. 选择了装配树也就是obj后,再找它的装配文件
作者:
pzytony
时间:
2010-4-22 08:57
《UG应用开发教程与实例精解》有全套代码
作者:
hunglau
时间:
2010-5-21 20:20
UF_SETUP_ask_geom_root( tSetup, &tGeometryRoot);
UF_NCGROUP_ask_member_list(tGeometryRoot,&nGeomCount,&tGeomList);
for (i=0; i<nGeomCount; i++)
{
UF_OBJ_ask_name(tGeomList[i],chGeomName);
sGeomName=chGeomName;
if (sGeomName.CompareNoCase("MCS_MILL") == 0)
return tGeomList[i];
}
把上面的for循环换成UF_UI_ONT_ask_selected_nodes( &object_count, &objects ):就可以实现了
作者:
zjs
时间:
2010-5-23 01:54
5 楼的兄台,搞了个CAM 模块程序来说装配问, 高手啊!
作者:
boxi2279
时间:
2010-5-23 06:56
你可以直接查询高亮显示的物件获取出tag再查出名字
作者:
hunglau
时间:
2010-5-23 20:37
不好意思,复制的时候选错地方了。
tPrtroot=UF_ASSEM_ask_root_part_occ(tEdm_Disprt);
count=UF_ASSEM_ask_part_occ_children(tPrtroot,&child_components);
if (count > 0)
{
for (i=0; i<count; i++)
{
nStatus=0;
tInstance=UF_ASSEM_ask_inst_of_part_occ(child_components[i]);
UF_ASSEM_ask_part_name_of_child(tInstance,chName);
if(ask_part_is_ELE_part(chName))
{
for (k=0; k<Ele_list.size(); k++)
{
if (Ele_list[k] == chName)
{
nStatus=1;
break;
}
}
if (nStatus != 1)
Ele_list.push_back(chName);
}
作者:
hunglau
时间:
2010-5-23 20:39
chName里面就是放的组件的名字
至于如果是查找选择的组件的名字的话,直接把选择的Tag传给child_components[i]); 来查询就可以了
tInstance=UF_ASSEM_ask_inst_of_part_occ(child_components[i]);
UF_ASSEM_ask_part_name_of_child(tInstance,chName);
作者:
HCJ2008
时间:
2010-9-22 07:39
顶一下,对我有用
作者:
SWORDINHAND
时间:
2012-5-16 23:57
顶一下,对我有用
欢迎光临 iCAx开思工具箱 (https://t.icax.org/)
Powered by Discuz! X3.3