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

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

简简单单 楼主

2014-12-9 09:57:42

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

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

x
/*********************************************************/
1 O) z9 P, q0 y1 s2 {* {#include <stdio.h>
9 v. S6 i& e1 I/ Q6 k& Y7 X#include <stdlib.h>& |5 Y' i0 ?6 A& E* r1 x$ _
#include <uf.h>! s% v4 X3 a: Q# a/ N9 d* g
#include <uf_attr.h>
7 U* K" y4 c. O#include <uf_cfi.h>
8 ~/ k0 |8 f5 v#include <uf_curve.h>
, e( C% ^" k; O+ e# u2 v2 J( G' V1 D#include <uf_ui.h>: w7 L9 I; n3 ?) U  u  ~, ^
#include <uf_modl.h>& q) r4 R% T% T" O! B+ F) ?6 d
#include <uf_disp.h>/ h2 U6 X& z* J' X* I3 E
#include <uf_obj.h>
2 b1 h9 v! `* ^/ z- D9 |#include <uf_csys.h>8 n' T: ~/ G7 E; m. u: `: {+ J
: Z, `! {$ n3 {- P

& K: Z8 u* X% I/************* unload alloc mem *************************/: D" p6 x4 |. D5 O$ X1 j
/* UF_UNLOAD_SEL_DIALOG  _UG_TERMINATE  _IMMEDIATELY  */
; }' L# H* B$ M3 L" q- [7 X+ j! F! Z$ p7 i6 P$ w! g
static int init_proc(UF_UI_selection_p_t select,void* user_data)
1 U. I! t3 C4 _1 K' R{# m- T2 ?1 `) s8 n
        int num_triples = 1;   //只选择一种类型9 ^' s2 b0 [/ q8 U. z. m4 `
        UF_UI_mask_t mask_triples[] = {UF_solid_type,0,0,};
' W% c" h$ ^  u3 w! C        if((UF_UI_set_sel_mask(select,
$ x; |# m/ i7 i) [                UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,
/ Z% ?" V- v5 Q: X/ {                num_triples, mask_triples)) == 0)  w/ ^% P& j7 z7 M* ?# c
        {
% G7 R$ H- w; ^                return (UF_UI_SEL_SUCCESS);0 l: t+ g/ R9 g1 o- s
        }
7 |$ w' Q5 b3 p7 M8 P, a2 {        else* S( v& y* A% p2 @
        {4 I. ?  e' a9 m3 [
                return (UF_UI_SEL_FAILURE);9 E- T" R7 ?" I2 F& g
        }
8 |+ c/ j+ n) w% b5 u' J/ H0 S}
7 W/ R% _* I8 J5 d, W) ^
3 T. I, u* M1 L
% H6 U& l& w1 V5 P! p* Lextern void ufusr( char *param, int *reTCod, int param_len ) 1 T; \$ D9 u; X
{5 O( L; \$ Q2 ~& N  Y, m# V
        UF_initialize();
* ?! x( N( |0 l% \' p. t) z' J8 h# X  i* ?
       
7 l# ^/ u$ u6 \        char cue[] = "简简单单:请选择单个体";2 V2 v& i; i$ h, K; E1 m2 c
        char title[] = "简简单单:请选择单个体";
" b) R2 l) Y3 @) R, R% _& v; I        int response=0;
$ m6 f. ]# w( L! P  q        tag_t object;
. f) g/ n* G; y' G* v        int count=0;
" X* A' s" Y5 ^6 A. e2 {; h        double cursor[3];: K7 C# K# s7 ~: }
        tag_t view;
6 V' p6 U8 Y3 Q+ i+ o, t6 H* y/ P( w        int i=0;3 o* a% t+ w$ w  |' Y" f
        double pt[3]={0,0,0};
5 `6 u  K: |: w! d) ?        double z1[3]={0,0,1};  V: z' |% o- i8 }& l+ L% t
        UF_OBJ_translucency_t cyt=0;5 _: k2 o7 ]( w
L10:
& a& y& e: y6 s) T* l' ?! b0 f        UF_UI_select_with_single_dialog(cue,title,0,init_proc, NULL,&response,&object,cursor,&view);1 c3 q5 S5 H8 W6 Y; h
        if(response==UF_UI_BACK)   goto L10;  //如果点后退就跳转到L103 v" L% V% y0 `9 O! c
        if(response==UF_UI_CANCEL) return;    //如果点取消就退出
/ C$ y2 e8 c6 E/ d5 F/ K
$ q6 z7 {: {5 g- ]5 p        UF_DISP_set_highlight(object,0);      //取消高亮显示/ H; k9 {8 E4 R9 s
        tag_t csys_tag;
0 {6 V( A5 `0 }        double min_corner [ 3 ] ; 3 p3 R* w! Z1 a& b; Z5 h
        double directions [ 3 ] [ 3 ] ;
/ y; U4 D/ x2 D8 D8 j0 ]        double distances [ 3 ] ;
" e1 X7 F" ^+ q( I- ^: M8 ?        UF_CSYS_ask_wcs(&csys_tag);
$ }( M0 s, W+ ^8 ?) ~        UF_MODL_ask_bounding_box_exact(object,csys_tag,min_corner,directions,distances);
3 [: ?- }$ |' A/ |, \
, V4 p: p* J9 Z! c7 L9 T        char mesg_x[256];6 J* ^' q% N* a2 l: }
        sprintf(mesg_x,"%f",distances[0]);- h* w9 H0 [! n* F
               
2 O+ |4 h  h1 i3 g6 M$ s7 A0 x        char mesg_y[256];2 U, G% r7 b( r, u+ p( \2 I+ e
        sprintf(mesg_y,"%f",distances[1]);
$ U5 J0 \, M7 U  e
( t, {( T) i& y8 ^) \+ D' j! u        char mesg_z[256];
9 }7 k' n  V; p" O) a+ E        sprintf(mesg_z,"%f",distances[2]);! J& H5 q) f; A+ B* m9 t1 @' O. N
        ! w+ `0 _/ Z) F8 _$ D+ F1 w. I( U
        char *edge[3] = {mesg_x,mesg_y,mesg_z};4 N  ]! i0 G/ d# b
        tag_t blk_tag;
, Z" b- [; k8 R( U% S, Q        UF_MODL_create_block1(UF_NULLSIGN,min_corner,edge,&blk_tag);
2 B/ r# D$ Q" c0 P        , G4 m! C# y; F2 ?: u6 C: `2 j
        UF_MODL_ask_feat_body(blk_tag,&blk_tag);
) L7 m4 T; y4 Q( {        UF_OBJ_set_translucency(blk_tag,100);   //设置透明& s/ n' r& f1 O: G, \
        UF_OBJ_set_line_width(blk_tag,UF_OBJ_WIDTH_5 );        //设置线宽
& Q! g: l+ x' w" l, |2 O  @        UF_OBJ_set_font(blk_tag,UF_OBJ_FONT_CENTERLINE);        //设置线型
, I2 ?4 I2 L4 Q) e+ ^$ t1 g
, L0 b4 l- t1 O. ~7 Z& F/ [( o/*        uf_list_p_t ll;
1 R( ?& H( `$ E  f4 A        UF_MODL_create_list(&ll);
7 Z( ~& C+ I9 z. Y        UF_MODL_ask_body_edges(blk_tag,&ll);: W' R  Y; R" d/ i5 c# H
        int ww;
0 v1 r2 Y/ @  T2 j        UF_MODL_ask_list_count(ll,&ww);7 R7 |+ x7 v' R7 K' H/ Y3 B+ C$ {$ ^
                for (int i=0;i<ww;i++)  \( T) c# E4 @) y# y  q4 {! e
                {
* E5 h6 y$ F2 t; W/ I/ N                        tag_t yy,curve1;        % _! q0 W6 h* D2 W( V
                        UF_MODL_ask_list_item(ll,i,&yy);5 r1 ]" E# I, y) \5 N
                        UF_MODL_create_curve_from_edge(yy,&curve1);        //抽取曲线9 w  T4 S" P1 |8 T& L' b
                }*/% o# ]$ _# L1 B2 Q: V" |
                char box[256];6 |# ~: x& c- I. _& e5 B$ e# l
                sprintf(box,"简简单单:对象尺寸(X-Y-Z):*%.2f X %.2f X %.2f",distances[0],distances[1],distances[2]);" b7 [; W, B! T( S- E8 ?
                uc1601(box,1);
- `0 N$ g" A9 g1 {: D' L
7 o# ]( Y5 C! k* f% o: L        goto L10;  //透明之后继续回到选择的状态
8 p8 v: ~' |! D- C2 V, H9 M* p7 g/ ]( \/ y" D& S
        - m1 c. R* d! O) k* L3 Y1 Q6 q

5 l8 O+ X" H% @- {2 N2 V: ]: p& s7 y- `1 P1 \% N, p  ]& S' W$ Y
6 L/ F& r8 }! w$ g) K  K5 P
        UF_terminate();
/ x+ C4 Y% N% d6 Y        return;3 x& |# H; l4 J, A
}
6 v/ B$ p( k$ [9 D( o& ]6 x6 `- B. s7 Q, E9 i
) n! I$ ^& u2 ^, W2 O
extern int ufusr_ask_unload()
% y! b9 O1 ~  l0 a' j' ]) Q+ \6 l{
# ]$ T! i! v4 i: H- a5 k        return UF_UNLOAD_IMMEDIATELY;
4 @3 T' a; i$ H: ~! }3 S: O, z}
% W5 k, v% @& \. ?; v* m
3 O& P" C; Y0 n# F& N( i' Q
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录制的吗! T- {5 A' e, J- l
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了