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

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

简简单单 楼主

2014-12-9 09:57:42

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

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

x
/*********************************************************/
& Z$ o7 o9 O! ~1 ]) E8 R#include <stdio.h>$ @# N1 {, t" p& x
#include <stdlib.h>
8 q. G! f( [- A2 m! I% }#include <uf.h>+ z) m2 D+ v/ h
#include <uf_attr.h>7 j4 D- W1 u, V
#include <uf_cfi.h>
! g- o. j: T+ }: K' O3 {9 v3 o) I#include <uf_curve.h>
$ M0 G2 o1 f& V#include <uf_ui.h>8 u3 B' b, d0 u
#include <uf_modl.h>' U7 @1 O+ G; o1 u; d
#include <uf_disp.h>
) L+ H( `1 _5 K) ?+ B3 e#include <uf_obj.h>4 f+ h" ^1 u; i) B
#include <uf_csys.h>
" P+ Y! u; Y& v# a9 c% |* U2 h- a- m) v" O

' Y. W: L; A, |! y, z5 L! t/************* unload alloc mem *************************/
2 b7 p3 C3 Z: |  C4 V" j/* UF_UNLOAD_SEL_DIALOG  _UG_TERMINATE  _IMMEDIATELY  */: U9 ^1 _5 W3 ^$ ?4 s0 Y" M
2 M# J8 u9 ^, S' T( B; X. J
static int init_proc(UF_UI_selection_p_t select,void* user_data)# d7 r- G. b) H: N1 S3 y6 E
{
; B1 ^6 O9 }8 o' V/ j8 y" H        int num_triples = 1;   //只选择一种类型
  b1 U5 T: \( U! n( x        UF_UI_mask_t mask_triples[] = {UF_solid_type,0,0,};
  G, v: L/ j% L! f7 ?8 ~9 n  h        if((UF_UI_set_sel_mask(select,
9 J. q' w9 U/ [, @. ~9 j, c                UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,, t! S& J/ e% ?1 U( B2 P
                num_triples, mask_triples)) == 0)2 w: p$ X/ D+ ]: K. J* f8 {0 B
        {
6 y# Z- s% @7 J- o6 _1 s: B  d& e                return (UF_UI_SEL_SUCCESS);
- p5 r4 Z' N8 w3 V+ E9 M        }6 G8 J! n% W( d3 M
        else. P  Q) g% i9 s
        {
4 y" U, R9 C' ]. ~8 V) d, ~/ T                return (UF_UI_SEL_FAILURE);
3 w/ D: R# M( _  w8 {        }" Q* E) D. [2 e
}% {: I9 x, v. w! S

( C6 A& c+ m$ N2 k1 V2 D3 p; K
9 ^. M7 i" R* j  C) Z2 Dextern void ufusr( char *param, int *reTCod, int param_len )
4 b* R5 N  u; h{
/ d1 k! v' I/ L; N/ ^7 y( V- V        UF_initialize();  x1 F- K3 S( e( b6 Q

: M% T' D; v) h( b" o       
( O6 @- |& y7 E( Z# [        char cue[] = "简简单单:请选择单个体";
" n7 h0 b5 {* Y5 K$ `        char title[] = "简简单单:请选择单个体";
( [- l+ S7 O( s6 U        int response=0;7 k6 v* k0 x0 B6 c( Y9 T
        tag_t object;
( M; V# T8 P! x( V0 p* K        int count=0;
8 {, ~, l$ H& e0 E        double cursor[3];. g/ i8 s  x1 r1 k; o
        tag_t view;
; {1 _* L( c3 |5 N/ A        int i=0;2 n- v- R5 D9 X* \
        double pt[3]={0,0,0};
* ?5 D4 d  m; t        double z1[3]={0,0,1};
2 U4 A1 \& a% \        UF_OBJ_translucency_t cyt=0;6 h4 c0 P( a- |: z* Q* l4 Q
L10:. P( `' C# I6 b, i. l4 T6 C
        UF_UI_select_with_single_dialog(cue,title,0,init_proc, NULL,&response,&object,cursor,&view);) @: o2 [1 V- Q: w& j- {) N5 v
        if(response==UF_UI_BACK)   goto L10;  //如果点后退就跳转到L107 E5 G  H$ j2 I% n0 Z5 m5 W" d
        if(response==UF_UI_CANCEL) return;    //如果点取消就退出6 o# R8 a, q( z% z9 N" Z
# d3 w5 M( m: {5 w( x
        UF_DISP_set_highlight(object,0);      //取消高亮显示! x  s+ R5 b4 \$ R) K
        tag_t csys_tag; : t& ?: k6 f9 D! v
        double min_corner [ 3 ] ; ( v1 ]2 M& F# X% x  c7 U
        double directions [ 3 ] [ 3 ] ;
( N9 b$ v( T+ K# Z! k7 c) {0 o  S        double distances [ 3 ] ;+ Z$ P5 u$ p1 n3 f: m! ^- W
        UF_CSYS_ask_wcs(&csys_tag);
9 \1 n/ y( ?$ L5 s& F        UF_MODL_ask_bounding_box_exact(object,csys_tag,min_corner,directions,distances);5 I/ n! V1 F. P! O- _' e5 E; i

+ E1 y7 ~6 N  L: v        char mesg_x[256];& V& Y& |& q* Q7 k: {
        sprintf(mesg_x,"%f",distances[0]);
8 N: b# S: ^) ?0 e                1 h1 {( o0 @! W2 z
        char mesg_y[256];
. R' q, x/ k3 G3 u% [) m' c. l        sprintf(mesg_y,"%f",distances[1]);8 ]. Y) M5 U/ {) B& Q
. l7 h7 u' ^- h; W/ H$ M# e
        char mesg_z[256];1 Y' D3 R! M3 x, q( N  O9 Y. H3 P
        sprintf(mesg_z,"%f",distances[2]);
+ G1 ^/ M0 ^* w0 H2 I2 z       
7 j7 G2 X" P4 @  r, C( [+ P        char *edge[3] = {mesg_x,mesg_y,mesg_z};
0 [9 e9 |% |  R$ D5 I" n* `1 a        tag_t blk_tag;1 w+ w3 h  Q$ l2 d
        UF_MODL_create_block1(UF_NULLSIGN,min_corner,edge,&blk_tag);/ U0 `8 A7 u' J! L7 j
       
. Q9 Z2 t' @% m7 i, b8 G5 \        UF_MODL_ask_feat_body(blk_tag,&blk_tag);
$ ~3 v9 X/ S6 p$ ]1 s( u+ s) i6 s        UF_OBJ_set_translucency(blk_tag,100);   //设置透明
) P% W$ N0 j0 [, E" A        UF_OBJ_set_line_width(blk_tag,UF_OBJ_WIDTH_5 );        //设置线宽  N' h  A# Z, e- L
        UF_OBJ_set_font(blk_tag,UF_OBJ_FONT_CENTERLINE);        //设置线型; i: c- G9 t3 r5 Q

, Y% ]0 {7 s* u* g8 u% {/*        uf_list_p_t ll;
: `* Y/ X, m; u3 y5 r. q4 M3 f        UF_MODL_create_list(&ll);: n$ N' T9 b" g5 v7 @6 _9 n
        UF_MODL_ask_body_edges(blk_tag,&ll);1 P/ d& c; y: A+ ?$ ~
        int ww;9 j# k1 z% G2 X% |/ k8 A- }  m' T
        UF_MODL_ask_list_count(ll,&ww);
# Y+ _' W5 u3 t, P8 }                for (int i=0;i<ww;i++)
/ [4 d3 Q- m' K; g6 c! ~                {3 U6 L3 i+ Q) O" h" q$ y
                        tag_t yy,curve1;       
& Y$ O, R+ B) k7 F+ y( B+ b                        UF_MODL_ask_list_item(ll,i,&yy);
5 u* Y+ r5 M$ W" D2 |3 i                        UF_MODL_create_curve_from_edge(yy,&curve1);        //抽取曲线# ^1 J4 ?: A1 R
                }*// U; O3 t8 h3 [; P* y+ a
                char box[256];
) a5 @  q  V# [1 X6 c! _; ?                sprintf(box,"简简单单:对象尺寸(X-Y-Z):*%.2f X %.2f X %.2f",distances[0],distances[1],distances[2]);+ |4 l) _( g* H) M6 p3 S
                uc1601(box,1);
1 |$ l# F- a3 F6 G- _! L  k* S# x1 M' x6 u5 B, Z
        goto L10;  //透明之后继续回到选择的状态( ]% m# o" n& o7 h. Z5 c9 `# f/ @
0 ^( |, W- |% K# m1 k
        3 `* ~- ~  s+ K( H  t: m& K9 {
+ F3 c% x( ?# O

: f! o& @7 L7 t. L% I
/ p' h1 f5 R$ |        UF_terminate();
- O6 n: U0 O5 K$ O5 A1 H        return;% v* Y7 {4 Y* H4 g/ x. R# }
}
  Q; c0 T  [: i; m" [) |
( N3 q3 k) u5 S# f+ n
0 T8 F1 I6 p; l) \  Yextern int ufusr_ask_unload()
4 ^2 n+ ^2 {- Y8 {9 `, R6 r' V{
8 ~* }$ q+ i; o        return UF_UNLOAD_IMMEDIATELY;" ?3 ?- V% a/ J( Q: O7 y
}+ {& q0 }- ^" h( T  I% k4 q; g; ~) l
. G! J7 J) C6 G. i& g! P' v
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录制的吗% F4 u0 }7 N# G/ l& t
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了