|
本帖最后由 aaa21 于 2010-1-25 11:36 编辑 1 k2 b- j8 d: l# e
$ T. `0 O: Z1 K- t- o2 e大家好,我想请教一下关于ug二次开发编程中删除实体的问题,需要通过遍历实体来记录下实体的标志符,然后删除。现在的情况是可以删除,但是如果我在一个部件.prt文件(不是装配体文件)中建两个实体模型,想要删除其中的一个,也只存储了要删除实体的标识符,结果两个都给删除了,请问这是怎么回事?! a7 _* L7 v0 B
下面是我的部分代码,请看一下:
, D) d( ~; Y) _ B9 ~' h Q2 eint *statuses;
( l$ @* `# C7 D* y3 Ytag_t feature = NULL_TAG;- ~ L8 J5 r$ ^! U
tag_t object_id[100];
, \7 u, r( z" A; v+ Z3 Eint Del_Num=0;
9 }1 V5 Z( E- F' F* a//遍历实体
; ~4 t5 ^6 }' K2 lUF_MODL_ask_object(70,0,&feature);
- L+ z5 V9 v O; `+ ~) S) v( |while(feature !=NULL_TAG)
0 o4 h, p7 C t" W{
0 B/ a2 o Y3 z5 x& [" d) W' R 。。。。. k, j& G% H# u" S ]2 ~
if(F_result > 0 ) / V0 i" g! k3 e1 W* z5 A3 U
{
& x; j6 f4 z+ A7 }( _ T5 B //将实体的tag记录到数组中 ' o i/ u" x7 T D4 a* Z
object_id[Del_Num] = feature;! }* j5 `; m3 ~- H' c* n
Del_Num++;
9 c0 D: V2 C' O }6 g0 u1 a5 i, S
// else AfxMessageBox("保留");" K8 s0 |5 z6 \, \+ }4 r
, E! R0 Z+ @/ \& B0 Y
UF_MODL_ask_object(70,0,&feature);
W% j& W9 a+ J3 V( v}/ d( u; s# y% t
//删除实体9 x3 {2 n1 W7 {6 f0 o' }, z/ K! _
UF_OBJ_delete_array_of_objects(Del_Num,object_id,&statuses); |
|