PLM之家PLMHome-工业软件与AI结合践行者

[二次开发源码] NX二次开发中,其他一些有用函数的使用大全

  [复制链接]

2017-3-2 13:15:39 5190 1

admin 发表于 2015-3-2 10:31:39 |阅读模式

admin 楼主

2015-3-2 10:31:39

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x

2 M+ R' Y9 z# r- J7,裁剪片体
9 ?5 d( }5 _+ Mtag_t  *trim_objects;
9 ^" n. k0 _# e7 A4 R8 c; C; Gtrim_objects =new tag_t[count];
9 e2 `0 r0 H) g/ ytrim_objects =bound_id;
- I0 A. s6 W' }, r+ S' e  z% I  Kvoidtrim_sheet()
, }9 ]; B' p& {# C6 U% Q# Z- U{# O, T7 z' ]/ g, X# k# Q) u: W, A
+ v( b9 k, g3 S/ v
      UF_MODL_vector_t projection_method ;
, m% k5 y3 N1 ~% i9 K      projection_method.reverse_vector=0;
! c) V& U( k, O( i0 ]8 {# W      projection_method.vector_type=UF_MODL_VECTOR_DIRECTION;
( k- r, ]$ O/ \9 M      UF_MODL_vector_defined_by_union_tdir1;
6 ]; I" ]4 ?$ S$ L: b1 m      UF_MODL_vector_direction_t dir2;
; R8 U+ W6 {6 v; _, w% e  B2 q      dir2.xyz [0]=dir[0];
- a7 ]& ?2 G3 |" H% d, O      dir2.xyz [1]=dir[1];
0 ]4 R/ h$ E$ D      dir2.xyz [2]=dir[2];6 ^! H/ W! s! t5 n: |# s  Z
      dir1.direction=dir2;) i; R$ S5 d2 ^4 ?$ a) x  t
5 [" F. j$ T# H
      projection_method.defined_by=dir1;/ r6 e4 _$ O8 r3 t; w
! Y" x6 P/ a* o9 ^" H
      double point_coords[3] ;' F' d( v! A3 J; K" k8 p# l

7 S2 W" {1 V1 @* j1 H      point_coords[0]=center[0];
; B6 x  T" @( r' i+ B1 p- Q( }      point_coords[1]=center[1];
0 S! h7 P% m" w# i& Z# p  m      point_coords[2]=center[2];
- g' d: i; n) b1 m9 U. ]
8 K% c" c+ |3 P      int gap_point_count ;
7 S! z( x  X7 W$ e3 K! B: y      double *gap_points;
7 t4 E, t% M8 f5 X" k9 w      tag_t feature_obj_eid;
1 e  O: w+ z& o0 J7 i% [1 L      UF_MODL_create_trimmed_sheet(sel_sheet,edge_count,trim_objects,&projection_method,
4 O- }3 Q" O* \7 M7 D/ b                                           0,1,point_coords,0.1,&gap_point_count,&gap_points,&feature_obj_eid);
* ^6 @% w: l" @+ D& j; s+ H  i
6 `; e  n" J! Z9 A}
9 L- [0 o8 p1 o; m6 X; w+ v8,offset偏移
& J  h. `( T4 M$ }6 V* A! I: m- `5 H
char   distance_str[] = {"10.0"};//偏移的距离
( {% u6 z4 d, D% D3 I
! [8 u/ m1 @2 z" N! @0 m1 @int  num_curves;6 u# P* @* U6 S3 d  {
tag_t *offset_curves;
; o' t. H5 @1 T2 K) ZUF_CURVE_offset_distance_data_t  offset_distance;" y0 @3 x; ]- H' x$ [% _) l) k
offset_distance.distance= distance_str;; D. w- D! V, k" R8 I. \$ c9 f
offset_distance.roUGh_type=1;7 _. ^  B0 X( F% u2 a6 i
UF_STRING_t   input_string;0 F1 ?6 c" _, a* \1 l
input_string.id=curve_id;//加入想要偏移的线' {- |; Z. @5 R5 L' u
input_string.num=1; //偏移矢量方向数量1 B+ c# \/ k7 R) r( Q' J6 i
input_string.string=&string_count;//偏移线的数量: Y* K7 S8 M$ V
intstring_dir=UF_MODL_CURVE_START_FROM_END;
: x0 t  d/ m! r! [. @7 kinput_string.dir=&string_dir;4 P" p+ H6 B, k% K& S' @! P
' d9 D! H$ P4 x/ ^+ f
UF_CURVE_offset_data_toffset_data;5 K) V+ E5 E- C5 y1 Q# w
$ G5 {$ u7 b. k/ g& Z& z
offset_data.offset_def.distance_type1= &offset_distance;
' H5 T' M$ i6 ]offset_data.input_curves= &input_string;/ a/ t" b* g- |+ s$ A! r. E
offset_data.approximation_tolerance= 0.01;# N9 X' Y8 Y- S! A# G# r7 Z
offset_data.string_tolerance=0.001;5 c! M2 q) h/ X6 i* d! m# \: V
offset_data.offset_def.distance_type1= &offset_distance;
' d, d, F3 k# A. j5 m" woffset_data.offset_type= UF_CURVE_OFFSET_DISTANCE_TANGENT;
# G0 `9 W; E4 r9 NUF_CALL(UF_CURVE_create_offset_curve(&offset_data,
: B! C# }% q, u1 v: n5 S4 f, I&num_curves,&offset_curves));
9 Q. E8 ]% U: J5 j- b9,创建平面
7 |) _1 b, e5 YUF_STRING_tgenerator;
; Q6 P  M7 n8 j2 \UF_STRING_p_tge = &generator;
! v8 d2 I. \9 d0 y; i6 {7 r' N4 D1 f! Z8 V* b0 d
UF_MODL_init_string_list(ge);
, i/ m3 A" J2 e  Y9 h; J1 hUF_MODL_create_string_list(1,12,ge);. q3 s. K) ]% I+ n

% [3 K( K* d9 b# J# bge->string[0]= 1;
9 n: Q7 T' r. M* i( b$ E5 J! v2 Mge->dir[0]= 1;//指定线从开始到结束) ]% \# c* p1 f% p
ge->id[0]= arc_id;//指定边界的id
' B7 V; |) o# k! F" w; M, P. Z1 Ydoubletol[3];
. W8 C+ s, ?6 Itol[0] =.001;//直线公差
/ y% A  n) g" h* z# i% Stol[1] = .5* (PI/180);//圆弧公差8 X: U" J. Q. x
tol[2] =.02;//不起作用- Q" S+ k# ]7 S# O. F' s
UF_CALL(UF_MODL_create_bplane(ge,tol,&bplane));
5 s: ^/ \  l( \# l! p. t  v10,选择4 T* w# r. W" _  H7 A
1),点选择$ x8 Y9 [) x7 ^
tag_t point_tag;7 W. t6 d8 G. ~' c9 u' c
double point[3];
* p. K, g" t3 c& B$ T       UF_UI_POINT_base_method_t  base_method=UF_UI_POINT_INFERRED ;  % d; z& j. m8 X- S& C# m
       intpoint_res;! U5 n# j" J/ S0 _8 |6 H8 O/ a
( ^' B6 q# e1 }
UF_CALL(UF_UI_point_construct("选择起点",&base_method,&point_tag,! N* y4 a3 y" z% G: X8 ]
point,&point_res));1 v$ h, k( |2 O: f* Q% R, E
if(point_res=UF_UI_OK&&NULL_TAG!=point_tag)) h8 J8 z* v# p- v5 r( l6 i* N
{
$ `2 p5 V( u' Z" b% Y0 j }
) Y& p$ o2 u+ G- ^- J2),向量选择% X  b: Y( K; W  L0 k" @8 G- k' o
     int  mode = UF_UI_INFERRED ;
9 m# V) [& A, Q/ y9 B7 K  ^     int  disp_flag = UF_UI_DISP_TEMP_VECTOR;
7 @" ?+ G2 F& w$ G! r( \/ Mdouble vec[3];2 u2 k) |) b1 c% _" \6 ~
double vec_pnt[3];  l, W! k( J0 j* C' ~' d
int res_vec = 0;
8 _4 q/ d* N/ g* H/ H9 I9 d- j     UF_initialize();  ( L" ~; d  x" q# [( e& h: `
     ifail=  UF_UI_specify_vector( "Choose aVector",&mode,disp_flag,+ n2 j: e: z8 P
           vec,vec_pnt,&res_vec);
* v, h5 [- i# M$ |. Q     if( ifail != 0 || res_vec!= UF_UI_OK )   0 k0 U4 `/ Q& \
     {     - \3 H2 M3 `8 I& I2 |% E( B
           UF_UI_ONT_refresh();
1 P& v6 ^' D3 B# d           printf("No vector selected \n" );
' W9 F. K6 y/ X" [5 ^     }- F. `9 ]& N: w8 T; ?
     else
& Y0 R5 F. F9 W     {
2 d6 K$ b0 l3 a' D2 k           printf("Vect base (%f, %f, %f), direction (%f, %f, %f) \n",
. v7 Y; Y; E: \; z$ ~3 i                 vec_pnt[0],vec_pnt[1], vec_pnt[2], vec[0], vec[1], vec[2] );
  p3 m- |- a7 v}
8 \$ o( e6 e8 Z4 a( p3 w3 a  Q4 u2 @4 G3),平面选择
7 j8 @* J" y$ U* p# ]. ~, D1 ]( Mtag_t plane_eid=NULL_TAG;$ }6 h3 h8 \# W6 @2 e1 Y& K3 _
double orientation[9] ={0,0,0,0,0,0,0,0,0};0 x& A- M/ C6 \
   double origin[3] = {0,0,0};
7 n  w2 C  U! y$ s   double pts[6] = {0,0,0,0,0,0};
3 ?9 B$ w* T; z   int i, error_code = 0;
$ C8 `, T/ O! o, G; }% G* l   int mode, display, response;+ q& q7 |/ \# q7 R
   mode = 1;                    
; D5 N* ?; K: d4 S8 \1 [display = 0;      2 g+ p, d8 }- }& x5 i# Q
UF_initialize();
; t9 s, ~5 R! N: ]( H/ m% t7 U   error_code = UF_UI_specify_plane(2 u/ j& j4 F" U/ ^
         "Select Plane", &mode, display,; H1 k5 o4 U# K( R& q% i  U& D
         &response, orientation, origin,&plane_eid);
. q2 S( E+ X- P$ ~" Q) @& l0 |- r+ ]- N9 j/ R, ~- y% Q9 V
   if ( !error_code && response != 1&& response != 2)
+ I- s9 Y6 ]- @# J   {
) v( ]% B( D' x- m1 G3 D" \                     for (i=0; i<3; i++)+ z% g- U* E" A9 X. r
               pts = origin + orientation;; h4 ]$ z2 m3 n+ j0 _
                     for (i=3; i<6; i++)( L3 s: L7 C( {
               pts = origin[i-3] + orientation;
+ N7 F% U) h( T  l6 i/ B         FTN(uf5374)(origin,pts,&pts[3],&plane_eid);4 y) Q1 t: r( X( h
   }# s) z6 \2 y0 M1 A) J& m
11,临时点,线
6 V9 [$ y4 E  f2 o7 E# {8 l7 G7 wvoid display_temporary_point_line (double point1[3], double point2[3])
% r7 a* s+ Z  ]. [4 }{( v( {+ [7 d- E. t# U+ c0 g# y
  UF_DISP_view_type_twhich_views = UF_DISP_USE_WORK_VIEW;
3 H/ y* C/ N, K8 l  UF_OBJ_disp_props_TColor;( ?  N  e7 B# |9 i* _
  color.layer= 201;
/ Z. H8 O& R' k# Z, i. M: v- A  color.color= 186;; D3 n1 T" I) r+ D& {4 P
  color.blank_status= UF_OBJ_NOT_BLANKED;/ I! n1 H" X- Q' j* \$ A
  color.line_width= UF_OBJ_WIDTH_NORMAL;. F  ?( V8 ~. r/ h2 Z
  color.font=0;4 N" o7 s0 [2 x' z1 X/ c6 Z
  color.highlight_status= FALSE;
: g6 i# @7 k+ d3 D; P  @; K% D6 h  UF_DISP_poly_marker_tmarker_type = UF_DISP_POINT;9 ~. L' }& x. F
+ `+ E, u) k9 n7 r9 P
UF_DISP_display_temporary_point ( NULL,which_views, point1, &color, marker_type);
: x1 X& A. z8 r2 tUF_DISP_display_temporary_point ( NULL,which_views, point2, &color, marker_type);
, P) m5 o4 z3 P) f) m) ^, [; aUF_DISP_display_temporary_line ( NULL,which_views, point1, point2, &color);) Y+ r& Z8 U9 G5 H5 [
}
6 y* B5 r/ P6 V& J; n. }12,WCS与绝对坐标转换
/ D1 R3 K* ?* I7 \9 L/ \5 n                        voidcycs_wcs(double point[])/ d( a: u& A, L9 v  X
{0 q7 M6 q0 z. i) o$ P
      tag_t  wcs_id,matrix_id;3 m' W0 L2 p, ]; j& M
      double matrix[ 9 ];
, G, L, J9 [! J% v- g2 n      //wcs_origin:工作坐标系原点,vec:工作坐标系轴向量,point_origin:点到原点的矢量
9 m% f1 g- c8 N* b      double wcs_origin [3],vec[3][3],point_origin[3];
  |! b% E$ T" ]1 }- n( J      //1,得到工作坐标系
$ E9 a( L/ H1 I. Z+ H      UF_CSYS_ask_wcs(&wcs_id);
' F+ B$ `" z5 Y  i  t      UF_CSYS_ask_csys_info(wcs_id,&matrix_id,wcs_origin);                    
4 o/ n, g% N  `* M) D' Y- t      UF_CSYS_ask_matrix_values(matrix_id,matrix);7 l  R4 E  X( S' ^
; ?; j9 ^, M8 M' P& B0 J; M
      //2,得到工作坐标系轴向量
1 n3 u9 ~- m- o: I4 d5 q' t      UF_MTX3_x_vec (matrix,vec[0]);* Y; M& v9 q5 t- }4 Q+ r! R2 T- K
      UF_MTX3_y_vec (matrix,vec[1]);& W5 e. z# E* w, G3 d8 f1 t
      UF_MTX3_z_vec (matrix,vec[2]);
3 l1 ~4 {, l6 F( K( H3 p! b- A! G3 L: z" @+ U& b. F' W" j2 c
      for(int i=0;i<3;i++)% i, d% Q3 P9 M. `/ [( m  Y- E
      {     # j/ G) v' \0 [/ u* v
            double tol;5 ?4 L5 y, _, j0 V% ~9 z1 ^6 m
//3,得到点到工作坐标系原点矢量
# x: m- E  l8 `5 y            UF_VEC3_unitize(vec,0.000001,&tol,vec);
. V4 c+ g. [8 ]/ P+ {$ x3 ?" b//4,得到点到工作坐标系原点矢量+ D7 C% m5 L- P& T9 x7 D
            point_origin=point-wcs_origin;
0 i* e3 W" S4 X* O      }
. ?8 R! m; f( b; J+ G      for(int j=0;j<3;j++)1 r/ d8 D% P' E( [0 p
      {! e$ h/ t$ ~% |/ j& A! f/ H1 {$ _5 a) f5 V
            UF_VEC3_dot(point_origin,vec[j],&point[j]);+ R) G8 _/ i0 U; F, F1 C
      }& H) \% l% o" e: E( S+ `7 j
}
) p7 t% e# H+ r: `, R9 N2 M9 y7 M13,三点求圆心
5 D0 Z; Z# z; J/ ^& u6 F#include<iostream.h> 4 R' W8 O; _' U0 u/ _, g( g
#include<math.h> 6 c& J9 J* B2 }& F4 G3 V
1 T/ {+ D1 I) Q- ~) O% q- {9 N3 @
int main()3 C7 l! N* P; u" H8 w2 Z
{
, i% `% j6 n( |4 |5 R* O9 |      int x1,y1,x3,y3;
: O! z/ e* s8 a5 E2 h* U      double a,b,c,d,e,f;4 W6 R6 l' r2 o# M# G
      doubler,k1,k2,x,y,x2,y2;
/ M( B- X7 V4 @" R' Y      cout<<"请输入x1,y1,x2,y2,x3,y3"<<endl;
* E) s# L, k4 A$ ]+ C; x      cin>>x1>>y1>>x2>>y2>>x3>>y3;
2 T. Q1 q0 m- Y6 V0 Z+ |% I2 j      if((y1==y2)&&(y2==y3)); v) i# l( J2 p4 X- f/ P. ~9 p
      {
" q5 h- }$ W) ~1 H3 z! `            cout<<"三点不构成圆!"<<endl;) d+ @- f+ x# O; `" |: o
            return 0;) H0 \" a1 U" i, m% |" X! X6 d# G
      }
# ^$ S* f: S  }* J      if((y1!=y2)&&(y2!=y3))! m# u1 N- ^+ v( b6 h* H
      {; K) L5 h! K& q% h3 X3 k6 r$ v
            k1=(x2-x1)/(y2-y1);- k* P5 h, ~5 s* n
            k2=(x3-x2)/(y3-y2);9 O8 t# h' |$ j# d( B: X' e
      }0 p# e; f$ C! N3 f5 n
      if(k1==k2)
& c* v8 M, f9 V, S, R) D: R! R      {% ~/ b" y6 c* w& o! _) q. e
            cout<<"三点不构成圆!"<<endl;  S* d7 }, W" I3 F5 Y- N6 g
            return 0;
- N, b9 T1 [1 o. f! N" X2 X# Y      }
! {$ d1 u6 t5 Z4 i6 ~, |      a=2*(x2-x1);$ k& M( ^: S# Z- D  Y
      b=2*(y2-y1);
# {! i0 o, p& e      c=x2*x2+y2*y2-x1*x1-y1*y1;
) e' [4 c1 _1 Z( @      d=2*(x3-x2);" a8 X9 [1 [% I; z1 |9 y
      e=2*(y3-y2);
0 E  j2 y) s# C  C; t$ l$ ~      f=x3*x3+y3*y3-x2*x2-y2*y2;
3 f: [- i+ Y" J2 n1 V. B; D      x=(b*f-e*c)/(b*d-e*a);7 S% `: Y4 I/ S7 n1 p$ n
      y=(d*c-a*f)/(b*d-e*a);
$ n9 a, Q) O' |. \& u+ A$ u      cout<<"圆心为("<<x<<","<<y<<")"<<endl;' L  u0 ~  R6 q9 x+ p
      r=sqrt((x-x1)*(x-x1)+(y-y1)*(y-y1));
% z8 V6 L* T* `& y- J+ Q+ ?      cout<<"半径为"<<r<<endl;
( x2 _3 Y' O. D      return 0;# T4 J. G8 d* ~% E; `6 t
}
5 |- |8 R* k# ~14,查找圆心
# T! J5 ]; b: w* W0 n            UF_EVAL_p_tevaluator ;
$ e( G) S3 M$ N7 g9 M5 I            UF_EVAL_arc_t arc;% j6 J  X* i; r/ e$ c& X1 m
            UF_EVAL_initialize(obj_tag,&evaluator);
6 D6 z7 [2 R3 m' \8 A            UF_EVAL_ask_arc(evaluator,&arc);
( W0 `8 q8 H- q# K" a/ w+ a            UF_VEC3_copy(arc.center,point);           
$ ^) D3 a& j! ~: l$ l& Q5 \+ p15, message_box. m4 v0 t' g* ~; Y( u% o; p, w7 S
void message_box(int *res_mes)
( g8 L: Q, }) K  r' b# ~# `2 o7 O{
7 {( J/ y7 l' B: ~) u      UF_UI_message_buttons_sbuttons;
+ |" A9 g4 y" J/ z      buttons.button1=TRUE;. A1 h0 r0 L- v6 k9 m% M. f
      buttons.button2=FALSE;7 ]2 s, C/ N; E6 A% P
      buttons.button3=TRUE;
( W' Z. U/ }3 p. ^" u. {3 j0 @& }! I6 J! g4 n  G# j
      buttons.label1="OK";8 @/ x% u, f$ i! g. l% @3 E  o
      buttons.label3="CANEL";
; F5 Q  U. A9 }9 m/ P  P( Z, T! A) S4 o, e6 V# M0 @
      buttons.response1=UF_UI_OK;; q7 Q) _0 R' X6 \
      buttons.response3=UF_UI_CANCEL;
& i, K0 i7 ]' {8 {. @, x. w9 T2 k) W" t7 k; K
      char *string_msg;
3 U" W( W1 f1 a  U) r1 G      char*material_msg="ALL selcted objects will be removed";7 m+ j3 K" ^( j, G/ p- x
      string_msg =material_msg;
( u4 m1 U1 _" i  ^
# m" `* B; k4 V; P      UF_CALL(UF_UI_message_dialog("",
' |& |- U' M/ c# J, X7 O3 K' z1 B            UF_UI_MESSAGE_WARNING,
2 j1 O  P5 j; W) A! v: e  R) [          &material_msg,
6 b" a+ \1 K. C. C* O8 z: V            1,
6 ]/ n% `, ?: P            TRUE,
; T) X2 R; T& X, L) ]# M            &buttons,
& Z/ I' h* v: X3 m             res_mes ));% F; ^# x  J; c7 l% N
}' r( T  a" F0 s' m5 i/ Y
16,选择过滤
" ?* s. l* ?( V5 s6 Tstatic int init_add_face( UF_UI_selection_p_t select, void *client_data)
  W% P& |, c2 R{
/ U* D) R0 A+ h      int nums = 1;
  I! J, V2 D: F( v+ n" P* g9 N      UF_UI_mask_t masks[] ={
" I+ Z, |9 e5 G  C8 M% `, f            UF_solid_type, 0,UF_UI_SEL_FEATURE_ANY_FACE};
: e! ]! r$ w# i, v8 J/ U0 _1 _* i5 E4 L+ V, X7 V( k0 m: ~4 k) `7 b
            if(
$ O# I; l! H0 f. a                  (UF_UI_set_sel_mask(select,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,nums,masks)==0)
+ j0 Z- ?0 \& A7 \6 x3 i2 G                  &&(UF_UI_set_sel_procs(select,filter_proc_circle,NULL,client_data)==0)
2 {6 n: b3 ]" ]9 O0 f! T                  )
7 {, j2 y$ H: s5 ~( ^) {. d            {
; Y& p9 e  L# _( Y5 p                  return(UF_UI_SEL_SUCCESS);
% P4 i& N5 q7 R% Z4 `/ U- j: `            }
: ~$ l4 a" q% B/ y& P- |* z            else
6 F  u# W  T# p/ U2 F4 |: M6 N! t' f6 a            {     
" O% c( D3 K* `( }% K' y                  return(UF_UI_SEL_FAILURE);
/ c4 Z3 L$ P  g# A& [            }5 I. v) M3 W" W9 D4 f
}7 ~  E% o. e7 r% e
int find_tag(
+ V8 L3 C8 H2 g+ Q& u8 ~                    void * client_data,//用以传输过滤资料
' I2 Z4 @2 D4 {( g                   tag_t object//现在鼠标所选物体ID
) K9 |2 z0 c& ^% R" A/ j                   )
5 D1 Y5 B3 [. G! m4 r, T& {{
) r5 C( {' l- m3 M0 D9 l      user_data *obj;
) F8 |% A( E7 ]! G6 R! Y1 \      obj=(user_data*)client_data;
# y% V9 v' ]) k. H' O: X  `2 W2 L7 z3 b      int find_face=true;//接受3 I. ?( k2 S! Q
      char *string1;
7 r2 r* j. ^% b      string1=newchar[133];" }' e+ i  m0 A5 l
      string1=UF_TAG_ask_handle_of_tag(object);
$ v$ }: S* w( Y2 L3 G% y* w6 r4 r. _      for(int i=0;i<过滤的数目;i++)
6 Z3 `- h  J2 L# c      {
) D; q' a; x' F, x" n4 {. J
3 m) H. `$ W3 ?! w8 c' c4 q/ K4 n8 [            char *string2;
$ u7 v( \# r9 }" h            string2=newchar[133];  _* _1 ^; t5 F6 b; g/ {
            string2=UF_TAG_ask_handle_of_tag(物体ID);
' b% ]4 m$ m( w6 `5 Q            if(strcmp(string1,string2)==0)
4 X# h7 z: y& Y  z8 Y6 M            {
" F( M* o' ~& S: m/ x                  find_face=FALSE;//不接受
- r; U0 w6 a' r1 i6 E7 W
1 O2 H8 A2 `  j/ n0 K            }5 E2 ~+ Q# M. d) l. \$ N9 X
            delete []string2;
( t1 M) A7 x' E( p/ \8 X( y  B$ X      }
% R8 E5 R. l% g1 y8 ~      delete []string1;! `- }; V$ b8 o1 \; I% X8 i
      return find_face;
4 i" |) e% r% L' j& e% u}
& `/ A) R7 @1 H6 X! K5 a  X1 a& `8 u& q$ W3 d) K' ~+ f% f
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复1

寂夜孤星待天明 发表于 2017-3-2 13:15:39

寂夜孤星待天明 沙发

2017-3-2 13:15:39

z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了