|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
- void CMainDlg::OnMesh() * M4 g/ l5 y/ b2 I
- {
- t- T. H) }, F: r. C4 I2 [# K - // TODO: Add your control notification handler code here1 T) e% a! o9 y+ o6 \, }8 l x
- char cue[] = "please select a face of body";5 u) k- N) H2 R- b# s0 K% ]
- char title[] = "select face";. L& X; m7 G4 B0 q6 @& S: W; w3 u
- int response1;
z3 ?, [: V4 N1 z% \ - tag_t view,temp,temp1,point;' U9 e% ?6 d2 v/ O: o! y0 }( H
- double cursor[3],matrix[9];
( J. p" D O) i7 { - int ret=0;
) v6 x6 ~6 ? `3 {$ _* @; f( F; t( u - ; i3 _& ~# D. X, D
- //UF_UI_specify_screen_position()函数的初始化参数6 Q. G) R, t4 y/ ?/ D3 H, t( J
- char message[] ="please specify a position";
2 t9 F) [3 Q7 w - int response2;
6 p% T- i9 Z5 z5 I3 o - * Z, K/ G! B" z* y
- UF_SF_UGs_2d_mesh_parms_t mesh_parms;- m, V* k& l' q/ W5 L& N ]
- int num_geoms;//几何体数量( {/ P" `1 V5 J8 i, H
- tag_t geoms_p;//几何体1 |3 J+ b0 O3 u/ ^* _! N* c
- tag_t mesh_tag=NULL_TAG;9 A/ f8 X. H( J9 d
- tag_t scenario=NULL_TAG;. _( @# p) ^- Q: E+ R& O3 s
- tag_t display_part_tag;; `7 Q* B7 q; C9 l* D
- tag_t proto;, {# U% \& \! L
- //最小化当前对话框
/ P: E. v1 Z1 i+ k H# ` - ShowWindow(SW_HIDE);
1 c0 |' J6 b! w. `; u3 l - int num_bodys=1;
4 J5 Y0 h% E# ^2 U; l% J8 l( `3 v - tag_t body_tags=NULL_TAG;0 h8 @$ `- Z, T5 I# \) [, l+ D1 Y: R
- int num_desc_lines=1;
, E1 T9 S* e7 h - const char *description="";
) ?5 a) g/ d1 y- u - tag_t new_fem_tag;
9 Q6 ?& ~; S6 o1 F+ M - display_part_tag=UF_PART_ask_display_part();
* O* |' h9 L2 \: Z& q" t - tag_t work_tag=UF_ASSEM_ask_work_part();
+ H j w; N1 C! S5 f - B: r& c& I9 J9 P( _5 T
- //mesh_parms.format_mesh=UF_SF_UGS_MESHER_tri3;
% z" S- h$ }* N" U2 k* } - mesh_parms.format_mesh=UF_SF_UGS_MESHER_quad4;
. @" m1 N8 o$ S1 N# Z h - mesh_parms.element_size=1.0;
& H* e: q) k0 z, R+ s$ _ - /* mesh_parms.element_size=dDefaultElementSize; */ 4 J% o1 e3 E+ z8 J! d: f
- mesh_parms.edge_maTCh_tolerance=0.508;
% Q% h- C$ [' i2 W P - mesh_parms.format_mesh=true;
: X( U3 V0 s) W - mesh_parms.attempt_quad_mapping=true;9 Q" x2 p. X1 }
- mesh_parms.split_poor_quads=true;# A- n+ x1 j3 [" f
- mesh_parms.maximum_quad_warp=5;; p7 q) v- E+ L1 a) p
- mesh_parms.midnode_option=UF_SF_UGS_MESHER_mixed_midnodes;//
' |5 y7 V5 v+ F# `2 ?7 j - mesh_parms.maximum_midnode_jacobian=5;
; i7 v* s% n- w/ W) X. j - mesh_parms.minimum_face_angle=20;
5 w- v0 o" A2 M- n - mesh_parms.surf_mesh_size_variation=50;
3 n; Q8 [# m; V9 @' y- O - num_geoms=1;0 N3 b, n2 W; O# I% O
- geoms_p=NULL_TAG;' g7 b3 o2 k- D% t, y0 V, E
- 5 K/ o$ p" y' [
# ^$ u: |) Z3 }9 V8 q- - j6 Q/ u& N! l9 Q# l
- ) W9 v( T+ j' h
- //把控制权交给UG7 k8 ^6 y7 u! J! g7 p4 b+ [
- ret = UF_UI_lock_ug_access(UF_UI_FROM_CUSTOM);. x" m1 O: D% ]- U9 d2 F% H
- if (ret != UF_UI_LOCK_SET); b# V( w2 t; a8 s9 V* ?
- {
4 V% {, u; |: S$ P! l& T. } - UF_UI_set_status("Could not lock Unigraphics");9 d# q. ~' b" O8 l* D
- return;" o, g" C+ v) |: n5 x' v
- }
R1 [- k X1 ~, U1 l3 ` - ret = UF_UI_select_with_single_dialog(cue,title,* ~2 \6 M6 r+ M; _* O: [% ?
- UF_UI_SEL_SCOPE_NO_CHANGE, init_proc, NULL,
" Z$ E+ ^# z& k8 y - &response1, &surf, cursor, &view);//调用面选择对话框# m$ B6 R) p: a- }& ]' b$ b
- 6 `8 E& z2 [1 U; B0 o7 i. l3 F3 T& r
- % s( W) j0 I6 N% v' N
- UF_UI_unlock_ug_access (UF_UI_FROM_CUSTOM);5 ]: j! l% ?6 I3 W M
+ a/ j& f# {; i4 K4 S, [' d- int count=0;+ M6 O# }$ e- h8 d0 O- I
- ) D8 }: u' q; n2 F# d
- //UF_SF_open_scenario("Scenario_1.sim",display_part_tag);
9 u6 I0 p5 U) q - if(!ret)! i1 A1 C% P9 [$ T* u% |1 U
- {
. h# ]6 Q8 D3 T% g4 Y( @# u. X - if (response1 == UF_UI_OBJECT_SELECTED ||3 e: a0 z# u, m
- response1 == UF_UI_OBJECT_SELECTED_BY_NAME)
5 s4 ?4 d. c$ H _! C - {- p" k) L7 \, C& E0 @
- num_geoms=1; _& r, [( e4 M; [
- int error=UF_SF_create_ugs_2d_mesh(&mesh_parms, num_geoms, &surf, &mesh_tag);
: y s: k, Y3 W1 _/ I6 Z - if(error!=0)
' }+ v% N8 m4 Y. w% g; w - AfxMessageBox("划分网格不成功");
. _* F' a A& v5 J8 ]5 u/ `! b% [ - if(mesh_tag==NULL_TAG) AfxMessageBox("未生成mesh_tag");% K5 P+ h N9 c- G. W
- }
+ G8 q! `7 [) _ - * X- ~1 |8 x2 G) O7 J, m7 ]
- 9 T/ Z, _& i# F+ w0 P; s+ V- f
-
1 l2 G8 g6 F4 ~) n/ a- `$ Q4 G3 J - } 7 l! O! {' w1 @! q' W" w
- //UF_free(geoms_p);0 f% J. T+ k$ |7 s( s
- UF_DISP_set_highlight(surf,0);UF_SF_display_mesh (mesh_tag);
/ h# @! k- W- a( i/ l - ShowWindow(SW_NORMAL);. w! }* W V7 r
- }
复制代码 这段函数 在ug高级仿真环境下, 对*.fem文件选中面之后,无法对面进行2D网格划分,UF_CALL提示对象不正确,
3 U0 t) g3 K0 ]特此前来求教错在哪里了
. J5 {" ^$ D: S |
|