PLM之家PLMHome-工业软件践行者

[交作业] lesson2 创建圆柱和中心线

  [复制链接]

2021-9-2 13:48:36 2047 1

天然呆 发表于 2021-8-30 16:14:58 |阅读模式

天然呆 楼主

2021-8-30 16:14:58

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

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

x
tag_t partTag = NULL_TAG;* I' \7 `% c* Q1 r5 z: Z9 e2 _. k- E
double origin[3] = {0,0,0};  S% ]6 q. ?. o3 h
char *height = "50";+ P# m0 ]& a5 m2 _+ g0 \. u4 g
char *diam = "10";+ j5 I1 |! T& B+ r! T
double direction[3] = {0,0,1};4 T7 b! J; C/ M7 J
tag_t cylTag = NULL_TAG;
7 W4 ]& [) u3 x- Auf_list_p_t eageList = NULL_TAG;+ Y# G$ c+ J  A8 Q2 g
int count = 0;' D% v3 u) n; ^# F
char msg[256];
* m3 I8 R1 l9 Iint i;# e+ @* b# t7 h# M% l; x
tag_t eageTag = NULL_TAG;! L. h0 e" b. r1 U# C
double centroid[2][3];8 h5 @2 V( ^& q3 w4 H" F7 D
UF_CURVE_line_t line_coords;
' d, D$ |; r: W+ o& j2 Xtag_t lineTag = NULL_TAG;) M1 T$ n2 ~% R3 A0 b/ N

, a& u/ s( w, w1 Eextern DllExport void ufusr( char *parm, int *returnCode, int rlen )" z4 v5 l1 n( [  R, [3 X
{
" u5 \6 r: ?7 ^! y9 x    /* Initialize the API environment */
$ `$ x2 i0 M, h/ }4 p    if( UF_CALL(UF_initialize()) ) - A0 o' e2 T$ W/ Z5 t) ~; q
    {: ?6 T- K3 `4 S
        /* Failed to initialize */( w# \) P# A" U% ]& ^+ A
        return;
+ O) B. p8 C- K+ l$ W    }' K( W. m8 `8 f2 q( @) Z
' |# \: E3 }" i% A% y6 R
    /* TODO: Add your application code here */9 ~' L% W7 I5 q( a) Q; G% e
$ _8 Y) S+ ]! D
        UF_PART_new("D:\\part.prt", 1, &partTag);  _$ \: o" F1 K& X! r) |3 t" J# R

; Y5 e! l! |* w5 h' D% \; Q9 @6 L9 ^        UF_MODL_create_cyl1(UF_NULLSIGN, origin, height, diam, direction, &cylTag);
2 q+ E. F- A, @# |! |        UF_MODL_ask_feat_edges(cylTag, &eageList);
- w7 {/ [* F+ J& n$ f0 \! M4 e( Y        UF_MODL_ask_list_count(eageList, &count);4 q5 e# d2 }# X
        sprintf(msg,"count number: %d",count);
8 V! T( Y5 n+ k2 ^        uc1601(msg,1);2 ]* }/ i$ B. B; F. _! z

5 ~( w  I3 W" g' `7 l/ J        for ( i = 0; i < count; i++)
, f) S7 s/ {& H. [; ]0 ?        {
1 r$ [, ^1 G. R                UF_MODL_ask_list_item(eageList, i, &eageTag);//将对应边保存
+ q. v/ r2 B2 N) \0 i4 L! I6 J2 e! }& K# P8 m, {: ^2 I
                UF_CURVE_ask_centroid(eageTag, centroid[i]);//将对应的边的中点获取
/ I" L8 C& E& m        }
* h: r0 e+ |' }2 [1 g; |       
. }  A% m' B3 `; Y4 J        line_coords.start_point[0] = centroid[0][0];//第一个曲线的中心坐标( f' y2 m9 m0 C  [4 B3 D
        line_coords.start_point[1] = centroid[0][1];
9 O5 T0 z: z+ C- R' g        line_coords.start_point[2] = centroid[0][2];
5 O5 K9 [1 k3 i5 Z" P# F0 o% Y
# _4 l; u/ ^2 T/ P% @        line_coords.end_point[0] = centroid[1][0];5 @# x  [/ [2 }  I, _6 ?; k& Q
        line_coords.end_point[1] = centroid[1][1];
. ]: ^  f7 {. p& \: H. ?( x$ o+ ^) m        line_coords.end_point[2] = centroid[1][2];
% ]4 Y- L. }7 q; L& h; v) O: W6 s* ?/ x; s" l4 W) A! o
        UF_CURVE_create_line(&line_coords, &lineTag);3 O4 s/ B3 O- a1 K2 b7 u
        UF_PART_save();! A8 a& M( J- T% b  p' S
. |, m% |. E4 S+ }6 l; W
QQ截图20210830161246.png
QQ截图20210830161318.png

评分

参与人数 1PLM币 +5 收起 理由
admin + 5 很给力!

查看全部评分

上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复2

zwz 发表于 2021-9-2 13:48:36

zwz 沙发

2021-9-2 13:48:36

非常好的帖子 收藏一下以便学习
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了