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 3985 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()却选不中点线面,是什么原因??困挠了好多天,请大神帮忙解决一下,非常感谢。……  n. K+ `; K$ B( |& z
        tag_t object,view;6 U! f9 r4 ?4 |0 F
        char cue[] = "select object ";; {) A! ~& Q, _8 G1 @2 x
        int scope = UF_UI_SEL_SCOPE_WORK_PART;//UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY,UF_UI_SEL_SCOPE_WORK_PART
9 }! ^9 q' `3 k) \        char part_fspec [ MAX_FSPEC_SIZE+1 ];
9 `. H9 y" A1 i0 \' H$ W4 @        int  response;6 a) Z# o' r* Y8 L% V( Z* e
        double cursor[3];
. o9 r+ H+ H; R1 Y        tag_t part_tag;6 a; s) g4 r" R
        CString infro;
9 ]  t# x8 |% g0 p7 f" ?8 F5 y
5 E8 M2 T0 [. X3 t4 l( c        UF_UI_select_with_single_dialog(cue,"select the edge",scope, UF_UI_sel_edge, NULL, &response, &object, cursor, &view );
8 [$ c! R" d+ G9 b        if (response == UF_UI_OBJECT_SELECTED ||6 `2 e0 S7 F2 ~2 y' d
                response == UF_UI_OBJECT_SELECTED_BY_NAME)) ?7 }1 d, ]" U9 H5 J( z
        {+ a: q& l  z5 S: _  W& B( x5 C
                UF_DISP_set_highlight(object,0);
) G; p( P9 v( O6 t" f0 G+ f                UF_MODL_update();" e8 d3 u/ P9 S5 I$ j: B
        }1 T; _+ p3 R5 u- O( j
static int UF_UI_sel_edge(UF_UI_selection_p_t select, void * user_data)$ C/ \2 B1 m, ?' y2 [/ x3 G
{  ' M! K7 l: d* |) v) N/ D7 S
        UF_UI_mask_t  mask_triples[] = {UF_solid_type, UF_all_subtype, UF_UI_SEL_FEATURE_ANY_EDGE};$ V8 q: z8 D0 h! r# @
        if (UF_CALL(UF_UI_set_sel_mask(select,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,1,mask_triples))==0)# a( _3 ?/ x% {- L
        {& @! s7 x8 S! f& R8 ^, }
                return (UF_UI_SEL_SUCCESS);
' D6 k7 B) L6 L+ S' _! W; m        }
6 i9 U% d% `9 M) U9 [& N( T+ a        else
5 }6 A  z' K. s+ t4 A  r        {
9 _9 Q9 ~2 X2 _                return (UF_UI_SEL_FAILURE);  E& R5 _3 H( g: X
        }
+ O! t" T( P6 |}2 @# d; P* N; @* _
! q! q  M# d9 t: Q/ j7 _. o
上海点团信息科技有限公司,承接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;
8 R/ y4 `! q" _% z5 \, _8 g+ Z* d/ \UF_UI_ask_cursor_view(&viewview);//获得你选择的视图范围类型0 = Any view,1 = Work view
% b! d2 k. ^: M
- G9 u, A7 H& g0 U
+ x# U- x+ i5 g; t& {' O# sUF_UI_set_cursor_view(0);//可以选择“图纸上视图”里的对象
, A, D5 E) e0 v, qUF_UI_set_cursor_view(1);//可以选择“工作视图”里的对象
, T( N0 C8 Z$ C8 W
/ d0 i$ ]5 f! h5 j/ m' c1 N————————————————————————————————————————
7 k6 q- O' v( _( G/ r列子选择视图里的直线边缘2 E/ @# w: ?) s4 c3 v
; J. O2 l' Y1 F& v& F2 D+ z
#include <uf_drf.h>
; e7 s0 }) X1 F9 d' u3 [#include <uf_obj.h>
6 y& {2 [7 d' M: D- g( O* d#include <uf_curve.h>
7 v' F" i2 B8 G1 ?7 r#include <uf_csys.h># L/ }- o& X9 n' D* u
#include <uf_modl.h>
$ {2 u; K+ j. M& I
6 `( h- |9 |8 A) s& P
; c3 U4 S4 @: L) N0 y# x6 S//设置选择的实体类型8 L' H! m7 L. I; ]
static int init_proc( UF_UI_selection_p_t select, void *user_data )& W6 A$ h4 p: w0 b0 J9 S: P) W5 `
{9 ^* C6 e6 u& ~+ F, {
  int  errorCode   = 0;2 ~' {6 M& l% Q4 U
# I8 z+ |) }: j$ _" z+ s0 F
  int  num_triples = 1; //选择类型数量
6 P6 V3 R8 a4 Z  |( w6 `5 l$ a8 a  UF_UI_mask_t mask_triples[] = {UF_solid_type,UF_solid_edge_subtype,2};//选择类型
' x; L: z& w3 E! f, U! }+ T, q0 R% e% M! W0 r. }
/*
9 \. Y4 J7 H) M8 ^5 NUF_UI_SEL_MASK_ENABLE_ALL 所有面具类型! m6 t" v# [  S! P3 Z
UF_UI_SEL_MASK_ENABLE_SPECIFIC  面具使特定的
" {/ ~% z" n5 ZUF_UI_SEL_MASK_DISABLE_SPECIFIC 面具禁用特定" f8 C$ m: |% J( q: y! C
UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC 面具清晰和启用特定# z' @$ P& ]; b8 l+ Y( J  B' {
UF_UI_SEL_MASK_ALL_AND_DISABLE_SPECIFIC 面具和禁用特定3 ]' [: \& B  Z, e
*/
6 P; ^% c. N" P. UerrorCode = UF_UI_set_sel_mask(select,
; r, l- ^5 h1 ^- M8 ]( \" `: ?6 f                                UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,
* p( t. T4 _, o( ?, ~/ t( y% l! J                                                           num_triples, mask_triples);* X, V$ r9 h6 P& T  P# J
if( errorCode == 0)
; _4 H  p* S" @+ F$ D  z" {{
% A/ G5 U; g/ e! C3 a2 u' treturn UF_UI_SEL_SUCCESS;
5 h; C2 o! p4 f8 r}
5 ]) e7 u2 I- D' c1 ] else8 k- z  k! C& q" V2 l6 |
{
6 D, e9 T, ^" }9 e. I return UF_UI_SEL_FAILURE;
" n2 ^# t# @# U5 Q; c}
6 k8 S( _, S* w6 l6 w5 Y6 o4 V}
1 m; \! R1 k6 d' g' U% A" Z1 g
5 {. O4 ^% E* _
% v$ f( |6 \# [0 h$ |; J6 O3 m+ f& y1 u1 @2 _. B- p% c+ ^4 s6 H5 `' p( Z
  /* TODO: Add your application code here */
. T9 R' `( E( Q
+ P7 R  J# M" E$ Q! E$ \3 Y$ f  char *message="梅雷提示!请选择视图边缘。";
; L( l4 C& p  O# t  char *title="梅雷-QQ1821117007";, Q7 ~0 W0 [3 ]$ N: K+ n  O
  int  scope=UF_UI_SEL_SCOPE_WORK_PART;//选取范围
! ~0 l+ h+ a* L  /*: P+ X. P  y( w
   scope=UF_UI_SEL_SCOPE_NO_CHANGE;         //选取范围没有变化7 m9 n6 C5 r: q0 [- k; h
   scope=UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY;   //选取范围在组装( \! C, K: ?8 A: p' p6 K
   scope=UF_UI_SEL_SCOPE_WORK_PART;         //选取范围是工作部分/ a# v* [5 n( [; `
   scope=UF_UI_SEL_SCOPE_WORK_PART_AND_OCC; //选取范围是工作部分和OCC& Z" ^9 _! d+ p2 d8 n
  */6 U7 n: w, c0 r; ^8 `( i
int  response;
9 ^  D# _3 Y6 x2 |7 ~8 _tag_t object_tag;7 {# q$ X4 c) q/ D) \: `1 w
double  cursor[3]={0.0};4 w9 R# h! z2 j  o8 p' t; n  f; J* q
tag_t view=NULL_TAG;
! o1 c2 g& E3 d6 L) V+ L! W+ n" R% [- H, i# o4 k
UF_UI_lock_ug_access (UF_UI_FROM_CUSTOM);加锁3 _  X/ h' B" k1 m4 v% U' U
UF_UI_set_cursor_view(0);//0 = Any view,1 = Work view (0可以选择“图纸上视图”里的对象)
5 H/ v$ h0 {6 n2 H  ZUF_UI_select_with_single_dialog(message,title,scope,init_proc,NULL,&response,&object_tag,cursor,&view);  //选择框】: ~; R5 x; D: T+ p  ~
UF_UI_set_cursor_view(1);//0 = Any view,1 = Work view (0可以选择“图纸上视图”里的对象)3 F3 w0 U7 V. X2 A* C& T' `
UF_DISP_set_highlight(object_tag,0); //1高亮显示 0不高亮显示
7 ]' r9 X$ y1 V& n  c7 mUF_UI_unlock_ug_access (UF_UI_FROM_CUSTOM);//解锁
" _+ w: d7 [: M3 v$ ~
% B1 P7 v: h' `/ v! r; t! @$ g* J
3 d8 j" m) G/ h* ]$ k# S- \if (response==UF_UI_OBJECT_SELECTED) 0 i( G3 y% ?2 Z* P1 |5 A* Y
{
7 M" ]* H: U! `# _) d/ b  char view_name[132]="";
* `2 q: ?" R6 q  UF_OBJ_ask_name(view, view_name); //获得视图名称  E/ A" Q, T+ d8 `. u# `- Z* [5 U
  uc1601(view_name,1);; s& Z! v1 y/ O% c) I2 ^& l; L
}
/ _0 k7 v: Y4 G% U1 y. M" t
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了