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-国产软件践行者

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

  [复制链接]

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

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

简简单单 楼主

2014-12-9 09:57:42

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

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

x
/*********************************************************/
9 h* M5 |9 D' ?9 g0 `/ M#include <stdio.h>
+ l( N6 T$ m1 X3 g4 Q1 l#include <stdlib.h>* n6 K; Z; y) n  [8 y3 e- a
#include <uf.h>
8 k; Y. T2 |! R0 R+ u8 i#include <uf_attr.h>1 e, n! s, Q& p1 m+ g9 E
#include <uf_cfi.h>
' n0 G& P% P# H4 H" [#include <uf_curve.h>. j6 o" P; r' C2 O+ j( w
#include <uf_ui.h>/ M: N0 ~. L$ S" U  a
#include <uf_modl.h>
! `7 E4 D. V2 Y& n#include <uf_disp.h>) f4 [4 @6 T5 y- ?' D
#include <uf_obj.h>
1 ], U3 q, x# b& {#include <uf_csys.h>* B/ }% c3 g5 p# A# p5 ?9 c0 ^$ j
: I" U) P1 Z. |4 o

+ l- I9 R1 T" @+ N& j0 b: }) U/************* unload alloc mem *************************// A+ V& l1 _  L$ I# H  ~+ h
/* UF_UNLOAD_SEL_DIALOG  _UG_TERMINATE  _IMMEDIATELY  */
2 O, M; [: p) Y9 Q3 E% t
0 k# k6 b; |  n4 ^7 k3 }* m; Gstatic int init_proc(UF_UI_selection_p_t select,void* user_data)
  D& f( c" Y& ~, C{& x- H, O! g" B
        int num_triples = 1;   //只选择一种类型
. l8 |0 ]+ U5 I  N$ e' u  ]        UF_UI_mask_t mask_triples[] = {UF_solid_type,0,0,};
( m& U1 Q1 Z" k, m, J        if((UF_UI_set_sel_mask(select,
2 ?+ c8 _  y( O: ?" o" {                UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC," H, r7 u6 x$ D6 x8 |. r
                num_triples, mask_triples)) == 0)3 s3 H$ Y! |# }. Q( O! d
        {3 ]9 D. d& K! z7 x$ {0 y" W
                return (UF_UI_SEL_SUCCESS);
+ g( P  [1 C  r- A6 G        }
) v7 w$ M' v" o' z. C; S        else
8 \! ]  K6 s- G) S- T        {
) w( d5 t( Z4 i+ w0 O- ]                return (UF_UI_SEL_FAILURE);
& Y) n" W9 E* N7 [, u" ~/ a2 c& W* s2 e        }
9 l3 t4 H  o  g, T}
, j( ~4 g7 M. t* N- p8 M& P
2 l- J$ N8 h& J* l0 g
1 D9 l$ b8 @( w# T) `" h$ u" E4 lextern void ufusr( char *param, int *reTCod, int param_len ) $ ~) E" Z& \" M' l3 F; r2 F
{
# b8 j. j, _' y        UF_initialize();
5 _6 H$ r( U  g: g2 W4 I2 A
% B8 U2 a9 C+ e4 m. U       
7 {( l  ?5 z- N        char cue[] = "简简单单:请选择单个体";1 Z( F- P: A) z0 b+ z8 v. `
        char title[] = "简简单单:请选择单个体";
2 f' H* y' d* D* }  a- |        int response=0;6 ~  Z2 k; v7 U) u) W4 \% r  o- f
        tag_t object;
% j+ p& J. M3 Z4 N4 O        int count=0;
6 H! g1 g% Y' W5 _5 A) \) {1 P        double cursor[3];. \% H7 k* g+ v- q6 u, n: t3 C4 M  ~
        tag_t view;
7 ^- x# i+ u% c3 G" j        int i=0;
9 I; R+ b7 n" P9 S8 B+ i7 ]        double pt[3]={0,0,0};
5 l/ \0 }. \8 d( h5 }) W. x8 }        double z1[3]={0,0,1};
# S( o$ o; N( {4 g0 [$ x. r# {        UF_OBJ_translucency_t cyt=0;, f+ _' ^3 x% q: W  ^2 x, l5 `9 q
L10:
1 a6 d7 Y% Q4 V! O/ R. j) q+ Y) P        UF_UI_select_with_single_dialog(cue,title,0,init_proc, NULL,&response,&object,cursor,&view);  ?3 b+ U. i- a& c/ M5 s- J8 ~+ t
        if(response==UF_UI_BACK)   goto L10;  //如果点后退就跳转到L10: c' B- }  k( [- Y# A2 u
        if(response==UF_UI_CANCEL) return;    //如果点取消就退出  f, Y2 ~1 F% b# K: c5 h( `8 a
4 G1 i4 ^1 X; E* U8 }% g) e) G. @
        UF_DISP_set_highlight(object,0);      //取消高亮显示: c' ?* _- A+ Q4 J# Q) M2 M4 I
        tag_t csys_tag; 9 R: I% ]6 ~! {! \
        double min_corner [ 3 ] ;
; C; J# Y* r& {5 a* L        double directions [ 3 ] [ 3 ] ; ) ~6 k% y" I; e0 O& G& y
        double distances [ 3 ] ;" {' p. `$ Z7 B& w/ R/ N
        UF_CSYS_ask_wcs(&csys_tag);
: q4 `/ ~9 p9 K5 {- c  y        UF_MODL_ask_bounding_box_exact(object,csys_tag,min_corner,directions,distances);  z3 V2 D% \/ `, I; v# {
/ T% I1 l  ^7 X/ ^
        char mesg_x[256];% h$ G6 ]4 T* G+ X/ G$ S: A3 T
        sprintf(mesg_x,"%f",distances[0]);7 A* I" v& n# ]& @/ d# [7 E) d
                1 n: D- l4 B* z3 b9 H/ n* a/ x* l
        char mesg_y[256];
4 [2 v1 `7 Q7 B9 S* V7 q        sprintf(mesg_y,"%f",distances[1]);; j  |0 i) X. ~8 K9 G8 D
( J9 ]+ s' p. Z3 }
        char mesg_z[256];3 T7 k6 h) B& p: x/ r3 a. J4 K' c$ H
        sprintf(mesg_z,"%f",distances[2]);; h" \0 S" f& V6 {- b! ?
       
: j  E. v) R* D# L5 v        char *edge[3] = {mesg_x,mesg_y,mesg_z};5 M/ k5 G2 w% o3 G0 H
        tag_t blk_tag;5 c' @3 e' H7 Z5 Q8 \- ^
        UF_MODL_create_block1(UF_NULLSIGN,min_corner,edge,&blk_tag);! r8 D. R1 [# Y$ T+ V# }5 S# {: G
        / ]; E4 s$ F' v% f8 Q
        UF_MODL_ask_feat_body(blk_tag,&blk_tag);$ `& e" o) q& N! o$ t/ |* j' ]
        UF_OBJ_set_translucency(blk_tag,100);   //设置透明
1 r; K. B9 K$ |" h" M( F7 W  [        UF_OBJ_set_line_width(blk_tag,UF_OBJ_WIDTH_5 );        //设置线宽! N  y( ^! Q" [; z: b! h
        UF_OBJ_set_font(blk_tag,UF_OBJ_FONT_CENTERLINE);        //设置线型
5 u- w( s( Q0 B# f
, f  Z! Z& r5 q* T, k! o% k) x/*        uf_list_p_t ll;
) D% A6 Z3 u' [1 G( j0 R: {        UF_MODL_create_list(&ll);
/ a( n0 {% {5 ?1 F; S( v9 V( r        UF_MODL_ask_body_edges(blk_tag,&ll);9 B8 V3 P; C2 @' P
        int ww;0 ]0 N! K0 J! z. X  A
        UF_MODL_ask_list_count(ll,&ww);
7 i8 x9 L" n# ?$ M; T3 g. A                for (int i=0;i<ww;i++)
' a" ~; u+ A( }1 z$ U% u4 S! Y                {
; w4 W) d+ Y) x                        tag_t yy,curve1;       
& v" h9 W& h% {% k/ c                        UF_MODL_ask_list_item(ll,i,&yy);% P4 l; `3 N2 G
                        UF_MODL_create_curve_from_edge(yy,&curve1);        //抽取曲线' O/ `) `) n" e( s% u& M! u+ J
                }*/
/ C# Z0 c0 X5 @9 w/ q0 X, ]6 Q                char box[256];0 n7 z* O7 W1 m6 \
                sprintf(box,"简简单单:对象尺寸(X-Y-Z):*%.2f X %.2f X %.2f",distances[0],distances[1],distances[2]);* v- q# z% V& O! N
                uc1601(box,1);
  Z# S* h# R4 k; g3 Q* K6 K) j5 p7 S% i, T- y9 @# T
        goto L10;  //透明之后继续回到选择的状态% X2 G* J+ S6 F: Q

' [5 y* l3 m. z8 E       
* i. L" e# P9 f8 A; k' Z9 P. g, ]" ~4 n, N9 L  i
2 H! s" U1 J. ^8 i+ O
9 z/ c, y5 {) D* p
        UF_terminate();  Q7 [3 p3 i$ p$ W; |1 ]) b
        return;0 ?5 D; [+ d4 ^0 g) l6 W
}
1 B! a7 Q$ A9 b8 {) }2 b# l7 F
* x5 S% a3 C) d" l$ V( E- x, k) n. v) a, q; ~
extern int ufusr_ask_unload()
0 a+ _: V2 G/ g' D/ @{
& J7 y0 c' A! O7 V, y" S        return UF_UNLOAD_IMMEDIATELY;: v0 Q; k0 i9 I5 _. `
}
/ v+ ~2 t/ D+ Q/ J) N! D- |
2 x; Y' ?  ~. r+ J- L
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录制的吗# ?* |8 w' n5 V
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了