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

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

简简单单 楼主

2014-12-9 09:57:42

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

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

x
/*********************************************************/
' _3 @( q4 ^/ q# m  v) j( S+ T#include <stdio.h>
% @- m; h. {  X8 E) E1 Z#include <stdlib.h>8 D1 o' [; S1 E1 b9 h& {5 e
#include <uf.h>( _5 z' Q; Z- f) }0 E& I; v
#include <uf_attr.h>
; y& c- ~' `* D: P#include <uf_cfi.h>
8 A/ b, m+ b8 D/ i0 v6 @#include <uf_curve.h>! a  \2 O/ b# p, g/ q0 I1 R
#include <uf_ui.h>
6 g3 a* m9 B; w* W4 Q; F#include <uf_modl.h>: v7 ^/ @5 i- ^+ k5 }
#include <uf_disp.h># C. m4 }4 I* L# U; P& b
#include <uf_obj.h>
2 {7 @2 P+ G* L% g# O#include <uf_csys.h>
+ ]) g, x, s9 g- o/ ]1 v% n, X3 @7 t% q3 N
: _- J/ ~& b+ w! d: U" p( A" j$ w
/************* unload alloc mem *************************/
8 |9 \7 `, s* z- g- n7 `5 p/* UF_UNLOAD_SEL_DIALOG  _UG_TERMINATE  _IMMEDIATELY  */) x$ R5 R. X  Q0 S

+ A" n5 N0 y. j) vstatic int init_proc(UF_UI_selection_p_t select,void* user_data)7 k0 {! A9 ^5 s) G7 @
{
/ p7 ?8 ^' H7 Y1 Y0 J4 H8 C. y        int num_triples = 1;   //只选择一种类型
8 o( p& r% s- i  H# s        UF_UI_mask_t mask_triples[] = {UF_solid_type,0,0,};- D' _/ j/ U4 T- I
        if((UF_UI_set_sel_mask(select,6 e# x% ~5 E+ b% ~" J, \
                UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,
0 s3 F# y" V9 X! ]7 I$ a                num_triples, mask_triples)) == 0)! e% e+ |8 V3 n5 n4 D
        {" p8 W# g3 T5 ?- Z4 z
                return (UF_UI_SEL_SUCCESS);
. V. L0 S- D& [' S- i) _  \% s        }$ T2 x6 J# N4 a! z
        else
+ w7 {$ y7 Y2 h3 c        {
/ b" x1 W# S: ~! h                return (UF_UI_SEL_FAILURE);  d( P/ G7 f) C9 E) G
        }$ B- O* f( L" G' {: K3 q+ d
}( ?6 I5 b* f, @: S. v

/ f/ W2 `2 A. e) D, Y6 R' Q3 h
. B: F/ c9 l# _extern void ufusr( char *param, int *reTCod, int param_len ) ' r" Y+ t  d0 s0 a& B( h
{) r7 a' E1 r7 b
        UF_initialize();
$ u( M9 Y' w5 a) R, c5 L5 w& V* ]- q" v7 H+ c) T
       
4 n2 g+ e# y) i9 s! s        char cue[] = "简简单单:请选择单个体";
$ }5 l5 c! _8 M, E        char title[] = "简简单单:请选择单个体";% n" k  V4 o2 V  H
        int response=0;# M4 U& I8 e& i# ?4 P. ]. }
        tag_t object;
& U: ~! m0 F' o3 A% v0 u        int count=0;# K% @& q/ l: \% ~5 N7 G
        double cursor[3];$ e( Z, ^: q) e2 C. @. m# \
        tag_t view;
! b4 K. E, t. _$ E9 _7 t  J        int i=0;  c$ L5 k) X! l1 m6 s' k
        double pt[3]={0,0,0};, o  U  r! V+ h' j2 H* j; p
        double z1[3]={0,0,1};5 k  l4 A2 S: M" b" x& }
        UF_OBJ_translucency_t cyt=0;( ?$ c$ v* X/ q: m
L10:
* f) V; i6 t9 M( j2 I0 t7 t' s% e        UF_UI_select_with_single_dialog(cue,title,0,init_proc, NULL,&response,&object,cursor,&view);' o/ d+ U6 _3 v% ^  q3 w8 x
        if(response==UF_UI_BACK)   goto L10;  //如果点后退就跳转到L10
' C" ^: Z5 o) Z6 [+ k) h3 \; a        if(response==UF_UI_CANCEL) return;    //如果点取消就退出9 f% R) k4 Y: C9 x- ~

5 z0 r4 ~( p! F$ w4 e7 C        UF_DISP_set_highlight(object,0);      //取消高亮显示
  Q" W6 p4 X$ A" k) z        tag_t csys_tag; . l0 ~% ?0 @1 p+ C6 D
        double min_corner [ 3 ] ;
0 C0 k( h" I# N% Z        double directions [ 3 ] [ 3 ] ; - I/ n( C6 B% J
        double distances [ 3 ] ;! \9 a! L; ^- [5 C9 k$ `4 F
        UF_CSYS_ask_wcs(&csys_tag);
& A% a0 M0 d. V" |$ |        UF_MODL_ask_bounding_box_exact(object,csys_tag,min_corner,directions,distances);2 r- g) _4 W' ?/ W7 p: @+ N9 L; z4 S
1 ?) z$ i7 v& `. W' ~" X8 e
        char mesg_x[256];
8 B9 g5 s# z% l: t" j. S9 N        sprintf(mesg_x,"%f",distances[0]);8 G1 U/ p  |' z$ s" b
                6 ]4 Y; j* L8 _& ?3 t% Q4 ?: E
        char mesg_y[256];' ^$ L5 `& l  e( `4 L' H
        sprintf(mesg_y,"%f",distances[1]);) v8 K7 J+ n. }& W* f

; p' q; O: S2 x4 {( i- d! Z        char mesg_z[256];, N/ t) q0 d# M6 n7 C- f
        sprintf(mesg_z,"%f",distances[2]);" i+ T# O3 N: G
        # b8 m1 l" Z% {" s
        char *edge[3] = {mesg_x,mesg_y,mesg_z};
0 U$ B4 P' ~$ m  [# L$ K  b; M        tag_t blk_tag;
- o9 P6 D! h8 L6 E1 n" ~        UF_MODL_create_block1(UF_NULLSIGN,min_corner,edge,&blk_tag);1 a# v$ g! H* U; N9 U* c7 i' `- {
        # S* ~! @% m5 W! w
        UF_MODL_ask_feat_body(blk_tag,&blk_tag);
5 g" @8 N/ P# L6 m5 [2 r        UF_OBJ_set_translucency(blk_tag,100);   //设置透明9 D; g/ @2 i. x$ _" M
        UF_OBJ_set_line_width(blk_tag,UF_OBJ_WIDTH_5 );        //设置线宽
' i5 e9 E1 M! O, b* S        UF_OBJ_set_font(blk_tag,UF_OBJ_FONT_CENTERLINE);        //设置线型
- y0 T1 y- {* s, Y% {( J& ]. a' u
3 M5 z; @9 \$ L1 t4 X( v$ q2 }. y/*        uf_list_p_t ll;; D( m5 P. k' {
        UF_MODL_create_list(&ll);7 ]7 U- X. E8 P. }5 v
        UF_MODL_ask_body_edges(blk_tag,&ll);) `9 _5 R7 S- C0 B; b% H2 `, h' x
        int ww;9 I/ \. _5 G0 L; ^- t; A
        UF_MODL_ask_list_count(ll,&ww);
& w9 j0 g. C9 e0 k; t+ i                for (int i=0;i<ww;i++)4 R- x* K# g9 K6 L' q  f! P
                {1 V! w; y) Y6 h7 @
                        tag_t yy,curve1;        & `5 k3 N; X4 A
                        UF_MODL_ask_list_item(ll,i,&yy);3 D3 V' R5 ?8 V7 r# q  C, o
                        UF_MODL_create_curve_from_edge(yy,&curve1);        //抽取曲线0 _- W; H5 R3 S  J1 k2 E' I: Z
                }*/
5 \3 Y0 {3 G3 ^* d! f                char box[256];0 x9 i0 [' v% w, S; I  \% z8 ^4 h$ X
                sprintf(box,"简简单单:对象尺寸(X-Y-Z):*%.2f X %.2f X %.2f",distances[0],distances[1],distances[2]);0 j& |9 I) V- _5 g  z1 I
                uc1601(box,1);/ x) f' S( `/ Z3 M' m; M  s% s
2 `- m. N  M" E. R
        goto L10;  //透明之后继续回到选择的状态
. d7 I" U, a+ |, V2 W: k  X2 E" o
8 F/ U% c. i, F0 Y+ B# Y- R       
8 F& f7 u" e( ?* a* \* ^
$ N" r4 M; D8 j6 x# e) P
$ L9 N; ?' @; Q! ~
/ y9 r; @% _# k1 u1 l        UF_terminate();- D0 a6 F+ H+ @. Q" Y3 ~/ g' r) _
        return;$ `, F5 Z1 T9 y5 ]; w0 h. p
}. M* G$ h* \( z: G& ^; r/ N; g

! n% j+ }% K, |* q# Q1 V0 x4 E' n+ R! |/ @0 e
extern int ufusr_ask_unload()) A- r, q$ J7 ^2 {
{
8 `0 g8 X' F5 d4 [2 e! B        return UF_UNLOAD_IMMEDIATELY;
  m5 _' x1 H4 W) z# U) `. Q}
" f6 K) ?2 s% m2 m
6 p4 d4 {& m2 g( O3 R4 R3 P
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录制的吗
( b  t" t) B/ i
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了