iCAx开思网

标题: 二次开发中如何得到非同目录的零件路径 [打印本页]

作者: sunmz_wjxy    时间: 2009-8-26 13:56
标题: 二次开发中如何得到非同目录的零件路径
装配文件和零件图纸不在同一目录下,用UF_ASSEM_ask_component_data函数只得到零件图纸的名,而没有路径,请问有别的方法可以得到吗?
作者: zale_lzj    时间: 2009-8-26 19:30
用UF_PART_ask_part_name应该可以得到全路径,不过这里必须使用原型部件Tag
作者: sunmz_wjxy    时间: 2009-8-27 09:05
请问什么是原型部件Tag
我用UF_PART_ask_part_name得到的是空
作者: sunmz_wjxy    时间: 2009-8-27 10:12
zale_lzj 发表于 2009-8-26 19:30
用UF_PART_ask_part_name应该可以得到全路径,不过这里必须使用原型部件Tag


我打开的是装配件图纸,通过UF_ASSEM_ask_part_occ_children获得子零件的Tag,然后用UF_ASSEM_ask_component_data得到子零件的名称,如果子零件和装配件在同一目录下,则可以得到子零件的全路径名,否则只能得到名称而没有路径。
在这种情况下如何得到非同一目录的子零件全路径名,因为没有全路径没办法打开子零件。
作者: zale_lzj    时间: 2009-8-28 17:58
UF_ASSEM_ask_part_occ_children获得子零件的Tag,这里获得的是事件OCC类型,然后使用UF_ASSEM_ask_prototype_of_occ获取原型(Pro)类型Tag,再使用这个Tag来调用UF_PART_ask_part_name
作者: sunmz_wjxy    时间: 2009-9-4 11:35
zale_lzj 发表于 2009-8-28 17:58
UF_ASSEM_ask_part_occ_children获得子零件的Tag,这里获得的是事件OCC类型,然后使用UF_ASSEM_ask_prototype_of_occ获取原型(Pro)类型Tag,再使用这个Tag来调用UF_PART_ask_part_name

非常感谢你的回答,不过我用UF_ASSEM_ask_prototype_of_occ获取原型(Pro)类型Tag得到的值是NULL_TAG
作者: zale_lzj    时间: 2009-9-17 18:30
sunmz_wjxy 发表于 2009-9-4 11:35

非常感谢你的回答,不过我用UF_ASSEM_ask_prototype_of_occ获取原型(Pro)类型Tag得到的值是NULL_TAG


这个要看具体情况了,这个函数的使用说明上有:
当原型类型部件未加载时会返回NULL_TAG
当原型类型对象未加载时会返回NULL_TAG

你可以首先使用UF_ASSEM_set_work_occurrence使得加载完全

本帖最后由 zale_lzj 于 2009-9-17 18:31 编辑
作者: f001    时间: 2009-10-4 12:17
可以获得当前打开部件的路径 ,
路径在下面的参数里面
char    part_fspec[MAX_FSPEC_SIZE+1];




欢迎光临 iCAx开思网 (https://www.icax.org/) Powered by Discuz! X3.3