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 4343 4

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

简简单单 楼主

2014-12-9 09:57:42

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

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

x
/*********************************************************/
' D5 @+ h$ r$ `8 i+ n8 S1 v2 {#include <stdio.h>
5 S( J$ i% A# r6 T3 I3 n. c#include <stdlib.h>
/ W, e' `2 l4 p7 ?5 X#include <uf.h>- _7 w4 ~1 o7 V0 u
#include <uf_attr.h>9 _& c  M4 p8 p8 h8 E+ W
#include <uf_cfi.h>8 V3 f" \: S6 w- `* ^5 Z2 d
#include <uf_curve.h>4 h5 x& X+ u! U0 d4 ?: p
#include <uf_ui.h>8 g% B) \( f. ~  X+ n2 T0 M% o
#include <uf_modl.h>
6 ~, m0 B. l: h* j#include <uf_disp.h>/ m* |$ |# m+ F4 [5 r5 I" Z
#include <uf_obj.h>
% E. ^6 e/ r) y( a7 f#include <uf_csys.h>& ^1 ~4 V: |: T8 U: _
5 D! k, u, Q; i; G# r3 Q

) P: u8 ^: O4 e$ M$ ~8 ^, w/************* unload alloc mem *************************/
) Z* T% r- y/ t8 q8 X3 r/* UF_UNLOAD_SEL_DIALOG  _UG_TERMINATE  _IMMEDIATELY  */' X7 \* d4 D! z( r

6 [/ }7 p: ^3 \8 `  Sstatic int init_proc(UF_UI_selection_p_t select,void* user_data)& F/ S5 L; f2 c8 ~  P
{; c0 n; g, K- E" B0 C1 o$ Y
        int num_triples = 1;   //只选择一种类型9 t: w! W4 H8 ~- L$ Y/ [) X) ~
        UF_UI_mask_t mask_triples[] = {UF_solid_type,0,0,};/ ?4 x7 X6 f1 x6 m* p7 A
        if((UF_UI_set_sel_mask(select,
0 ?. h2 S' P3 N6 x7 u9 f0 N                UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,
) p; |3 p( t* M" u. E* d                num_triples, mask_triples)) == 0): J" n. ^; ?% N1 R/ t! N; Z
        {( |# N/ g2 t; |. T! c
                return (UF_UI_SEL_SUCCESS);! }, s* f- B7 n' |+ e: ^5 z% g
        }
0 Y) f( `5 m/ ]9 h  e" C        else5 Q# F8 y( W$ \- r! i9 v6 X/ H
        {( a' l/ f" h# D8 X; I' F( m
                return (UF_UI_SEL_FAILURE);. J$ ]8 T; Q, K8 l* O6 m6 `2 [
        }
2 t3 w# ?+ q, K4 U}" k% G9 K) y1 h5 B5 x

% [# i0 c& B  E6 i: |* o6 C3 B
: w2 d. D* W# W0 X) |6 Yextern void ufusr( char *param, int *reTCod, int param_len ) 3 `& K2 M8 O* f4 K+ c1 g( p. Q) _
{
7 J- w* A% z4 \1 O; j        UF_initialize();: K; U* {. _' ?1 D0 p7 L
5 A; v* n% Z3 m. u) W- b
       
0 d& f3 t. Q2 D2 @* m" r        char cue[] = "简简单单:请选择单个体";
1 J) J' }7 A9 d$ j0 B        char title[] = "简简单单:请选择单个体";; w- t/ I% U' M8 y
        int response=0;
1 o0 B2 _$ H; j- d' H        tag_t object;
( Y- |7 R( `. v7 Z+ s  }9 z3 ^        int count=0;
& b! \; d% m/ a  l        double cursor[3];
; f2 c& b; S; E8 e; W: B! g* Y4 a' D  y        tag_t view;
2 v& i4 X7 U  `5 [, V' A+ x        int i=0;: c; J* Y5 ]& A" f
        double pt[3]={0,0,0};
4 s5 X0 E; @! ]: N+ |( j' @: ?        double z1[3]={0,0,1};
/ c* }2 `9 ^4 z% m8 ?9 C        UF_OBJ_translucency_t cyt=0;. p$ f; m# G  i  |6 [7 h
L10:( n( ~5 `) x# a7 e. R6 G; F
        UF_UI_select_with_single_dialog(cue,title,0,init_proc, NULL,&response,&object,cursor,&view);" U! Z; ?7 U" o( ]9 {' ?8 p- x
        if(response==UF_UI_BACK)   goto L10;  //如果点后退就跳转到L10% \( j; b# H: k: j* R
        if(response==UF_UI_CANCEL) return;    //如果点取消就退出
/ r& m/ v( R% {& E% ^4 f9 \# n5 D1 W$ n6 G% l5 Z/ |7 r, z2 {; v
        UF_DISP_set_highlight(object,0);      //取消高亮显示
' j' F5 P% O5 j& n7 ^5 L3 R( j+ a& `3 D        tag_t csys_tag; # ?8 _/ O" N7 O4 g' u" R
        double min_corner [ 3 ] ; ! p# U/ G- p3 A7 x
        double directions [ 3 ] [ 3 ] ;
$ ~+ X; Z. ^0 x% C        double distances [ 3 ] ;
$ u+ |+ W) K' f* [        UF_CSYS_ask_wcs(&csys_tag);$ I2 ~' W5 z4 Z0 z
        UF_MODL_ask_bounding_box_exact(object,csys_tag,min_corner,directions,distances);' p& A3 q0 u2 \& e; g8 d
) n& c5 V/ [3 V: S* L5 t
        char mesg_x[256];
' S$ u( {( Z5 r0 f6 |        sprintf(mesg_x,"%f",distances[0]);1 r9 J: y* M* j
                , e. y5 z+ _. ~; v% }' Y0 b! V5 D& U% d' H
        char mesg_y[256];
/ y+ Z; e% s! E& d# ~- m        sprintf(mesg_y,"%f",distances[1]);
+ }+ ^! b* y" b. c2 A& l# z8 O3 s# z% U: |" C4 z- B( R9 X
        char mesg_z[256];
1 G/ N) D- U! C* s' y% u+ G2 a        sprintf(mesg_z,"%f",distances[2]);
, W9 r! ^6 y9 W* |% e        7 O: t# J. A# X* }0 w+ r
        char *edge[3] = {mesg_x,mesg_y,mesg_z};& W$ `$ S4 N5 X* W+ |, Y
        tag_t blk_tag;1 D$ r8 r3 {3 h  T
        UF_MODL_create_block1(UF_NULLSIGN,min_corner,edge,&blk_tag);  o' K6 d9 r- j6 ?. M. v9 k* c) U
        0 J1 f0 T3 W; u$ l7 ~+ v' F
        UF_MODL_ask_feat_body(blk_tag,&blk_tag);0 V. S* F; W6 z" `7 ~* Q
        UF_OBJ_set_translucency(blk_tag,100);   //设置透明9 N, f' \$ W* v) i
        UF_OBJ_set_line_width(blk_tag,UF_OBJ_WIDTH_5 );        //设置线宽
8 R& c4 Y" m7 F3 c. Q& W7 M! H        UF_OBJ_set_font(blk_tag,UF_OBJ_FONT_CENTERLINE);        //设置线型
5 Y# O4 _3 a5 l4 v
+ t- k' J+ h* J0 q1 v# f2 |; w/*        uf_list_p_t ll;
/ t/ i# q8 s3 O2 ]6 V% j3 k4 V        UF_MODL_create_list(&ll);
: A. L: c( N" ^$ _        UF_MODL_ask_body_edges(blk_tag,&ll);
* H! Z! x& B: G2 W, C! {: [        int ww;
+ w, H+ c9 J/ b* v+ e        UF_MODL_ask_list_count(ll,&ww);
3 V2 Q9 W+ E+ ^                for (int i=0;i<ww;i++)0 k3 j8 V6 ]* q5 \* x
                {
+ `# F* s5 n' y  r6 @                        tag_t yy,curve1;        # f' _& R9 \* E( m' y: @  b
                        UF_MODL_ask_list_item(ll,i,&yy);
5 {' [2 L/ h8 x( v) K% Q" D# G7 _; }                        UF_MODL_create_curve_from_edge(yy,&curve1);        //抽取曲线
. d) h  V  x2 y, W( e4 A                }*/( {& J, p  J( F% B5 \3 Q$ Z8 x
                char box[256];+ _) ^, H8 B4 ~' a
                sprintf(box,"简简单单:对象尺寸(X-Y-Z):*%.2f X %.2f X %.2f",distances[0],distances[1],distances[2]);
) j" w) R) n; p  T2 E; k                uc1601(box,1);
6 W2 N1 b& F0 M3 U" T7 m" [& W9 |6 L1 T7 [; o6 l, ^+ ~% `/ c3 |) m/ V
        goto L10;  //透明之后继续回到选择的状态( _. c( B% o, S* i

' G+ V$ t2 {$ @        $ a1 p+ }/ d! R! z( m; M5 I
2 ]1 t0 `) _8 Y4 c
2 ~( c2 |& M9 s# C2 `5 @

! B- v  J" u. G0 _9 e0 n+ n% u        UF_terminate();7 p: p$ `0 w$ @. f9 I
        return;
7 C* }. p! T. [}
" }: S4 T( ^; ?  v# s6 c2 U
, B" {/ ?- _: {* ~& {. d3 T/ {. x' ]0 @( ^7 x" \
extern int ufusr_ask_unload()3 H; ^" Q9 G8 X
{
! `. M2 z1 j- k, r        return UF_UNLOAD_IMMEDIATELY;
+ Q# ~% v1 I5 K. m}
2 x7 g; T; y; b9 u8 ]
6 q# G0 A) U, U1 B
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录制的吗
& [3 z8 E& Y' }$ W4 N) K
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了