PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

PLM之家PLMHome-国产软件践行者

[求助] 工程图模式下用UF_UI_select_with_single_dialog()选不中?

  [复制链接]

2016-12-12 12:22:04 4002 2

丿僦湜灬禧歡沵 发表于 2015-12-3 13:55:58 |阅读模式

丿僦湜灬禧歡沵 楼主

2015-12-3 13:55:58

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

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

x
UG二次开发问题:我在建模环境下用UF_UI_select_with_single_dialog()没问题,在工程图模式下用UF_UI_select_with_single_dialog()却选不中点线面,是什么原因??困挠了好多天,请大神帮忙解决一下,非常感谢。……
; @3 o$ R3 n9 p4 C& t, o        tag_t object,view;
. C$ z: p, Z  }8 v! w6 _& n" D        char cue[] = "select object ";& l) s( f( w2 X# k! f, H
        int scope = UF_UI_SEL_SCOPE_WORK_PART;//UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY,UF_UI_SEL_SCOPE_WORK_PART5 W# x+ U! H& d5 {0 s/ i
        char part_fspec [ MAX_FSPEC_SIZE+1 ];
$ `2 S$ T1 v  M) `5 u        int  response;3 J: u$ R# ~9 U0 K/ ]% F
        double cursor[3];  p* i8 T9 h1 B. H# }
        tag_t part_tag;
% O. w* B9 }  n' Y$ i4 N" y        CString infro;. ^: f0 l, V, Y% g7 ^9 m/ E" W1 K
2 q; o5 S2 S1 |7 D4 N. J2 g
        UF_UI_select_with_single_dialog(cue,"select the edge",scope, UF_UI_sel_edge, NULL, &response, &object, cursor, &view );1 d! p+ U3 O. V: w5 c1 S
        if (response == UF_UI_OBJECT_SELECTED ||0 F) ]7 s  l4 [" w$ d, A# E) s
                response == UF_UI_OBJECT_SELECTED_BY_NAME)
+ n4 I1 @+ m5 n  I3 s. I4 K        {+ D0 o& @% Y0 @; P4 A
                UF_DISP_set_highlight(object,0);' L+ d( a" E% Y* K
                UF_MODL_update();9 H" @  _, v. v- y( m& @* {% P
        }
# \" i& v$ t  }( R  o0 z5 Lstatic int UF_UI_sel_edge(UF_UI_selection_p_t select, void * user_data)0 I, z/ x1 o% i* K
{  ; l( A2 u+ Y% i  n4 ~$ r
        UF_UI_mask_t  mask_triples[] = {UF_solid_type, UF_all_subtype, UF_UI_SEL_FEATURE_ANY_EDGE};
7 ?. [/ w8 @+ e% j$ R        if (UF_CALL(UF_UI_set_sel_mask(select,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,1,mask_triples))==0)- j- R  }. w2 B7 J" S
        {
' ^7 ^! s* ^+ S& W7 z                return (UF_UI_SEL_SUCCESS);7 Z/ O$ j) l( P. E1 ^# l6 a
        }) v2 R5 g# D! [- ]
        else0 m! q( d% r0 G3 y
        {9 w( B9 E* }9 s1 ~
                return (UF_UI_SEL_FAILURE);
" Z& q% C0 |& M4 H. P  }" W        }
  Q* J3 [. A" Y7 K. r}
8 i' d# Q' @2 W5 m8 {
3 a1 P$ S! R/ d& L% I  Q8 q7 b
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复2

丿僦湜灬禧歡沵 发表于 2015-12-3 14:36:31

丿僦湜灬禧歡沵 沙发

2015-12-3 14:36:31

难道我过滤错了?没人回答?……。自己顶下啊
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

15757753770 发表于 2016-12-12 12:22:04

15757753770 板凳

2016-12-12 12:22:04

int viewview=1;* M, G5 Z# Q, d1 O9 d: G
UF_UI_ask_cursor_view(&viewview);//获得你选择的视图范围类型0 = Any view,1 = Work view
/ e$ |4 M! r  _5 Q
: j. H% l( C/ w; b2 S! f0 h4 g2 C- S5 c1 @% }
UF_UI_set_cursor_view(0);//可以选择“图纸上视图”里的对象+ ~- W# ^" y. t
UF_UI_set_cursor_view(1);//可以选择“工作视图”里的对象
: W- S/ p. s% L: V' S: o( E& x6 j
4 \5 d. `; T" r% b7 T0 q8 M————————————————————————————————————————. t/ V0 X7 D+ q. P3 P
列子选择视图里的直线边缘8 Y& r; E: M1 z: {6 Q- W
- A( {1 U* k& x: ^! G
#include <uf_drf.h>
5 M& a5 j! }7 w#include <uf_obj.h>7 ]5 b' X! a9 M" u
#include <uf_curve.h>
4 E* Q7 @0 k' Y4 s. u9 q: s, I#include <uf_csys.h>
2 |* q5 a; U4 ?$ p0 e' M6 a#include <uf_modl.h>
5 ~  M: T! `  z# C, b8 m* ^8 z/ z# {3 v$ j

( u' n0 j/ Q& U4 V* K* s$ E//设置选择的实体类型
5 m) W- l' Y' Qstatic int init_proc( UF_UI_selection_p_t select, void *user_data )
" x$ U3 z7 j& h& i) j{
; b  c9 O7 K5 g  int  errorCode   = 0;5 Q3 U% I7 d) u1 O( L6 O
* }6 @: W( G# {: [) ^# T
  int  num_triples = 1; //选择类型数量
% I* {  [; M2 g. ]1 x  UF_UI_mask_t mask_triples[] = {UF_solid_type,UF_solid_edge_subtype,2};//选择类型' R8 a, {; n2 ?2 G, w
0 R; j& y6 q5 s" a
/*
* c- s$ A! |" c+ J' n. FUF_UI_SEL_MASK_ENABLE_ALL 所有面具类型, o  \' L6 G+ S$ d; e
UF_UI_SEL_MASK_ENABLE_SPECIFIC  面具使特定的
5 v) d3 W5 w. U0 kUF_UI_SEL_MASK_DISABLE_SPECIFIC 面具禁用特定
6 H  u. w: S. u8 f5 s- N5 oUF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC 面具清晰和启用特定
6 m/ c8 r; c3 Z+ a. c$ Y" hUF_UI_SEL_MASK_ALL_AND_DISABLE_SPECIFIC 面具和禁用特定
2 y, T: y  Y# k6 f4 T*/
3 ^- M7 }% W# g! u* terrorCode = UF_UI_set_sel_mask(select, 3 i: w( L4 q0 l7 I7 Q
                                UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,
" g0 Y5 w) C0 Q( Z2 p4 q, F! i                                                           num_triples, mask_triples);
: N7 m* V2 @- j3 @4 W, Uif( errorCode == 0)
4 _; b4 a# _. b' c  N{, }3 y- x+ A8 P, X. }! v
return UF_UI_SEL_SUCCESS;
) K  a5 y% F4 m: ?* k- C% h" O}! ?. Z5 o* r: Z, h- K, K7 [) c
else
. `& l+ h5 `5 @0 R7 [- H/ Q  O{
* c' ^6 w" M& d* d* C6 u return UF_UI_SEL_FAILURE;
. C+ B4 w4 b1 ?}4 L4 Y4 _7 K8 ?: p. s
}* ^. U. A% R+ L, @

# ~% i/ A! R3 J, v3 P  `0 }' P# h9 t. i: e) }; V7 s# k

2 y2 q; I9 W0 E5 I, P! _/ Y" C- E  /* TODO: Add your application code here */
) ~& U; n* m) m+ h8 F$ k3 X, W. j7 v; f( _7 _" \. K5 T
  char *message="梅雷提示!请选择视图边缘。";& B% E% E: g+ K( s4 @1 X: \
  char *title="梅雷-QQ1821117007";9 h$ K& Z+ |( i5 w- V7 a
  int  scope=UF_UI_SEL_SCOPE_WORK_PART;//选取范围2 r$ h3 k8 b, S" i* U( W" D# [" V
  /*
) Q8 z6 X+ u9 C& J" N/ t   scope=UF_UI_SEL_SCOPE_NO_CHANGE;         //选取范围没有变化
9 L$ Z! U, m4 I   scope=UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY;   //选取范围在组装
# t  H  R5 j' V" h) R' r   scope=UF_UI_SEL_SCOPE_WORK_PART;         //选取范围是工作部分6 `/ G) H6 D6 l- ~
   scope=UF_UI_SEL_SCOPE_WORK_PART_AND_OCC; //选取范围是工作部分和OCC
* ^; b2 M9 q5 Z5 _; t2 V4 ~" H, b  */
' x! A' L. Y3 t- ^! wint  response;$ i. I5 a. `2 G# l+ h  M' ]& B
tag_t object_tag;
/ m- S% N5 F- Y! f( tdouble  cursor[3]={0.0};( P' M/ J8 H% D& s+ }
tag_t view=NULL_TAG;/ I. d1 Z* U0 {: F9 O5 n

3 P4 K+ t$ L6 ]9 a* w2 kUF_UI_lock_ug_access (UF_UI_FROM_CUSTOM);加锁3 Y2 X! S* V- U5 ^8 ?9 K+ C" h
UF_UI_set_cursor_view(0);//0 = Any view,1 = Work view (0可以选择“图纸上视图”里的对象)
3 N& k& B, O& D( t+ F* KUF_UI_select_with_single_dialog(message,title,scope,init_proc,NULL,&response,&object_tag,cursor,&view);  //选择框】+ `- y7 a5 J5 {. i8 J1 P  W
UF_UI_set_cursor_view(1);//0 = Any view,1 = Work view (0可以选择“图纸上视图”里的对象)
; X+ V& n$ ?8 f# C" rUF_DISP_set_highlight(object_tag,0); //1高亮显示 0不高亮显示
8 C$ W4 W& d6 c: [+ j7 EUF_UI_unlock_ug_access (UF_UI_FROM_CUSTOM);//解锁2 ]; Z4 |' x* ~' ]  |8 z6 s
" _* W1 `( e- Q0 [

# c, _, [# ~- hif (response==UF_UI_OBJECT_SELECTED) 8 j2 w9 o' z* N% w2 q' n  K+ w' n
{
: J" C. m/ r1 G" D" v" G  char view_name[132]="";
" L" p- C2 ]: A  UF_OBJ_ask_name(view, view_name); //获得视图名称
/ s( N! l2 X& Z$ b* k* `  uc1601(view_name,1);2 {3 F& {" ^- X, \; h/ k4 z% m
}
6 \6 N9 ?8 e9 p
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了