|
本帖最后由 aaa21 于 2010-1-25 11:36 编辑
. d" Y9 q5 W, D7 v1 e8 m9 c/ N; y( ?9 {( W* J
大家好,我想请教一下关于ug二次开发编程中删除实体的问题,需要通过遍历实体来记录下实体的标志符,然后删除。现在的情况是可以删除,但是如果我在一个部件.prt文件(不是装配体文件)中建两个实体模型,想要删除其中的一个,也只存储了要删除实体的标识符,结果两个都给删除了,请问这是怎么回事?
+ k T8 |. G0 `3 y' {下面是我的部分代码,请看一下:
! _2 d" B! e, ^# G& N4 Vint *statuses; L7 ^. t7 S! _' }% n; S) u
tag_t feature = NULL_TAG;
% v/ Z% p! _; V% Y8 O* u+ q" Ctag_t object_id[100];$ y) w. g: w7 X" x! x" t
int Del_Num=0;
7 l; u$ k1 _' w H$ Y% `1 b3 c//遍历实体7 N0 R" Y4 u4 p) B- m2 T
UF_MODL_ask_object(70,0,&feature);
$ A1 e( H9 f: q) awhile(feature !=NULL_TAG)
7 z" y1 N, B2 t{ 0 w, }, E, w' U9 g8 _+ [% t. u6 T
。。。。' Z3 N7 ~+ u% e' B7 s% J8 I f" v7 x- ~
if(F_result > 0 )
1 L5 ^, T) o5 ` {
& m8 _# a; D& p _: P0 e //将实体的tag记录到数组中
1 X! P1 ^1 |% K) w' Y object_id[Del_Num] = feature;; D. c8 }( ^# S/ _5 G
Del_Num++;
& T. j. H$ \% m' q }
7 q& N5 q! {' j1 i% R# {3 T5 D // else AfxMessageBox("保留");. z( g/ c ]0 z4 t3 z
: H- w) t" v( x5 l$ ?) X" L UF_MODL_ask_object(70,0,&feature);
" @1 `2 N8 f, K: {}) _5 E( E5 G- n6 I4 U7 j. k
//删除实体4 e3 Z1 F0 g1 |# |% e+ O
UF_OBJ_delete_array_of_objects(Del_Num,object_id,&statuses); |
|