PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

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

[交作业] 选择体绘制包裹体

  [复制链接]

2022-12-21 19:55:33 4509 4

简简单单 发表于 2014-12-9 09:57:42 |阅读模式

简简单单 楼主

2014-12-9 09:57:42

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

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

x
/*********************************************************/
& [( N+ B% N* f0 k2 K#include <stdio.h>
! ?' H% x) N  x0 n5 E#include <stdlib.h>, }' w, k; S+ R! K7 A
#include <uf.h>, i# w: n2 I9 m/ C% n1 I
#include <uf_attr.h>
$ \1 ]- b2 Z0 {  L2 K& T4 x( m" V#include <uf_cfi.h>
7 \+ L# Y0 O( k% A. k#include <uf_curve.h>  H  u; O6 @! u- P
#include <uf_ui.h>
4 ], k  c9 c  b9 s#include <uf_modl.h>
8 R$ g& a7 C; [# _- x* ~* P  k#include <uf_disp.h>
1 q8 z5 B5 k6 ~  O. \#include <uf_obj.h>) ]3 p, i; N- U0 C3 U
#include <uf_csys.h>2 m- ?% P3 h/ E/ q1 t

$ S( P9 t* y  J$ C
8 X4 W4 y3 S  ?9 C/************* unload alloc mem *************************/
5 o% R1 f) K% L7 r( Z0 D/* UF_UNLOAD_SEL_DIALOG  _UG_TERMINATE  _IMMEDIATELY  */5 `' n6 |8 h4 \' ]9 S

2 f6 a3 w" B& B- t, `$ Ustatic int init_proc(UF_UI_selection_p_t select,void* user_data)+ E1 h, R5 F; X. f. Q
{
- ^& i% Q& Y4 U. J( m! h        int num_triples = 1;   //只选择一种类型
0 \  d* C$ i" ^  I        UF_UI_mask_t mask_triples[] = {UF_solid_type,0,0,};
$ N) p6 D; f- P/ P9 p        if((UF_UI_set_sel_mask(select,
" M+ H, N1 \; z7 T8 z                UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,9 I$ U6 ^9 }3 e: x
                num_triples, mask_triples)) == 0)
1 ^* ~& g0 ~% s        {0 X* L8 V% @$ F) U+ B' k& _. v
                return (UF_UI_SEL_SUCCESS);
" J) G0 X0 G: y- Y) Q$ P        }5 u$ e" P! \4 J! k# P7 M
        else0 \* _- R' \) p9 o: L' X  G
        {8 D0 d' [+ @# ^, M( v$ G0 N% t# |' j1 P
                return (UF_UI_SEL_FAILURE);' O" ^/ s1 q* Y# l, o) d" K) L
        }
  O: n5 w" ?# I" w, p6 j# V}
4 P+ Q3 v6 O. a6 s( _+ o& K! z1 M) M3 |, {# g1 W; f

1 r) Q: Y  F0 w) U5 d+ Sextern void ufusr( char *param, int *reTCod, int param_len ) 0 b* C6 @# L$ H5 K( u) f
{5 b2 P0 ~2 W) y  }
        UF_initialize();
9 ~1 H  ^( R4 [) _- S2 R. a6 W1 o$ U3 D' U  J' r/ ?1 ]5 Z
          l1 p- ^6 D: a8 H6 y* j. `
        char cue[] = "简简单单:请选择单个体";
4 t) S( o, n$ I! G. f3 b& H5 D        char title[] = "简简单单:请选择单个体";
- _) `& q; M, y0 L8 J8 W3 G        int response=0;
% Z2 ~) j) L& Q- M( l        tag_t object;
, X9 m- L$ r% L( F1 \5 x        int count=0;
  z/ W/ x" }- h/ v- @6 d        double cursor[3];9 o# x- L6 g% ]1 J2 F. X; b/ @9 T
        tag_t view;
- W* n7 b: R1 b" N( D        int i=0;
* r: b$ b6 M+ L8 @" p' |+ |; B1 a        double pt[3]={0,0,0};9 O% w; P! l3 ?  E) g3 `4 M
        double z1[3]={0,0,1};/ _) R. \( N# W/ N% c5 t( _: ]
        UF_OBJ_translucency_t cyt=0;
7 N3 x4 U) J$ s/ Y5 j  eL10:" N3 l* C# b7 g2 p. L( R4 z
        UF_UI_select_with_single_dialog(cue,title,0,init_proc, NULL,&response,&object,cursor,&view);
* R4 p2 E" N7 W7 ~        if(response==UF_UI_BACK)   goto L10;  //如果点后退就跳转到L10
! z5 E( W- ^! b7 J& H        if(response==UF_UI_CANCEL) return;    //如果点取消就退出4 p# {* r- y& V# b/ X

1 }9 X% }' C$ K! V! N* h! D0 P& w1 Z        UF_DISP_set_highlight(object,0);      //取消高亮显示: x" R: g9 C& D
        tag_t csys_tag; ; q& e1 I% ]1 V( n- q- k" z5 ?
        double min_corner [ 3 ] ; . }! _2 f* F+ Q1 O8 E
        double directions [ 3 ] [ 3 ] ; + g5 I# N8 U; I$ C) i
        double distances [ 3 ] ;- d$ T; g$ i) P; O, k9 d, u
        UF_CSYS_ask_wcs(&csys_tag);8 z: }( T5 w3 O; m# d
        UF_MODL_ask_bounding_box_exact(object,csys_tag,min_corner,directions,distances);
- H) I) b& s4 B/ t7 c
. ?, R: _2 _, `4 n3 Q# ?- t  {5 E( x1 X        char mesg_x[256];! ~3 l+ T' Z, F2 u
        sprintf(mesg_x,"%f",distances[0]);0 V1 W: i8 Q5 u
               
7 t% _+ o( n$ C, H- D: q        char mesg_y[256];, B# j7 b6 n' d; \4 n& F9 {
        sprintf(mesg_y,"%f",distances[1]);
1 G0 h+ H; ^4 ^' ]" F# U; n( Q, A
# ^. i/ v: W, N' {' D+ W        char mesg_z[256];% b1 ?  @+ P+ z" H( J
        sprintf(mesg_z,"%f",distances[2]);
1 w% r: e- Y, H8 j; j. f% v& {       
9 R6 O- U# i* R  i; F        char *edge[3] = {mesg_x,mesg_y,mesg_z};) Q5 U& g) g% c* o
        tag_t blk_tag;
9 U9 n: H- h4 ^& D7 q3 X        UF_MODL_create_block1(UF_NULLSIGN,min_corner,edge,&blk_tag);
. u- S9 T2 J5 q3 ~; B       
) h- s$ e% z! m4 Y5 [        UF_MODL_ask_feat_body(blk_tag,&blk_tag);
% a% h) i* l0 C4 [$ O2 J! b; n        UF_OBJ_set_translucency(blk_tag,100);   //设置透明7 y! h1 d" w9 q2 ?# s3 e' w
        UF_OBJ_set_line_width(blk_tag,UF_OBJ_WIDTH_5 );        //设置线宽
3 ]* m( w; b5 k  _% O        UF_OBJ_set_font(blk_tag,UF_OBJ_FONT_CENTERLINE);        //设置线型
, O( T; A  c7 N$ U, u5 E
6 e, h7 a) Z# q1 r/*        uf_list_p_t ll;2 M; Y! h5 I& o0 ~
        UF_MODL_create_list(&ll);
) R' X; b' W) T        UF_MODL_ask_body_edges(blk_tag,&ll);
) \/ k6 u2 H! Z0 `+ r' P: e        int ww;/ b! [' s# S4 z
        UF_MODL_ask_list_count(ll,&ww);; T0 Z7 `4 u  P* c# i( S' P! x* X
                for (int i=0;i<ww;i++)
5 c7 U6 I; h2 N0 T. ]3 h  Q7 I) C                {$ e, `6 n* ~, }5 T, J
                        tag_t yy,curve1;        6 ]4 [" T4 n' _3 A4 Q0 q9 F
                        UF_MODL_ask_list_item(ll,i,&yy);
  l+ }( z9 ~# a& Q' ^* l                        UF_MODL_create_curve_from_edge(yy,&curve1);        //抽取曲线
! y. F& R$ q# d1 ^                }*// E3 G+ ?7 w! b3 J8 W+ w" z" X
                char box[256];. q; X" k& u; R9 `, g, W( l9 g
                sprintf(box,"简简单单:对象尺寸(X-Y-Z):*%.2f X %.2f X %.2f",distances[0],distances[1],distances[2]);* h6 f" ~8 |8 L) C, N9 o# r
                uc1601(box,1);
5 L/ K! ~+ g, m6 t
3 r  n4 k- z+ i: i8 X        goto L10;  //透明之后继续回到选择的状态
% H1 I% @: `# I! K8 v" c/ S5 l" {8 M
       
/ w# G* {+ j: r- X5 H, z8 @" S4 n& y; r# g, J

# A. ]7 x6 r# c
; B; [+ q! h! w: x! K7 _1 X" s6 V* z        UF_terminate();& n' m* Q0 D# b( _" O
        return;: v! m6 Z- C# q/ ]7 r: z
}! ]8 S8 _6 G& g$ C3 R. K; Z
) g. s. \& z& K% T3 q5 O$ e$ z

0 w# J/ g% j3 `' `3 b& \: ]extern int ufusr_ask_unload(), s/ x- l+ a0 K. o, i8 m
{
8 w+ P& w. p% I3 @        return UF_UNLOAD_IMMEDIATELY;
; a! }3 X9 K9 G3 F}
! s: q# D1 o; ]& |# c$ _8 D+ C' U& z- p0 A2 D# m
QQ截图20141209095616.jpg
QQ截图20141209095701.jpg

评分

参与人数 1PLM币 +3 收起 理由
admin + 3

查看全部评分

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

使用道具 举报

全部回复4

秋爱 发表于 2015-7-29 16:04:22

秋爱 地板

2015-7-29 16:04:22

请问这个是用JA录制的吗
0 Z: Q7 j3 v& e
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

freshapp 发表于 2022-12-21 19:55:33

freshapp 5#

2022-12-21 19:55:33

楼主好人啊,好人一生平安!
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了