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

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

  [复制链接]

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

2

主题

2

回帖

29

积分

新手上路

积分
29
发表于 2021-8-30 16:14:58 | 显示全部楼层 |阅读模式

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

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

x
tag_t partTag = NULL_TAG;
2 ]& b. D; [: `: |  Y2 Gdouble origin[3] = {0,0,0};
7 A, P' [! n& }5 G+ Nchar *height = "50";
! g7 t$ E1 k9 N: gchar *diam = "10";  E: l7 z1 ^. @4 p  ?+ o
double direction[3] = {0,0,1};3 A! s* M  N) ~
tag_t cylTag = NULL_TAG;
: x" Q# m1 ^  R+ puf_list_p_t eageList = NULL_TAG;
  v4 r" h+ q' r! B# ^5 o) sint count = 0;
5 Y* P% p' k# G* T8 }' z( rchar msg[256];- A0 W4 L* t2 R' C: P( o$ u
int i;
( V  i6 ^$ [2 b+ Otag_t eageTag = NULL_TAG;5 z& W! s4 r& r. C
double centroid[2][3];
- x2 l6 O$ m9 p; MUF_CURVE_line_t line_coords;
: p) Z6 p! K! D% Q) y4 ]) Utag_t lineTag = NULL_TAG;9 @+ ~* _* I  F

" L3 D2 F$ V2 {+ w5 f8 L2 w8 Wextern DllExport void ufusr( char *parm, int *returnCode, int rlen )7 b2 w$ q3 t0 _% F) ?# U
{
) w! L8 _8 J2 x    /* Initialize the API environment */" f% s1 L) G! V  w1 q
    if( UF_CALL(UF_initialize()) ) 0 c, m0 d! t4 i1 s8 v4 f
    {. {) A2 L; V; M: @0 m2 Y2 D4 G
        /* Failed to initialize */. ^+ I+ @0 t$ u! E; F3 ]
        return;- |! z* s, A. s9 K. y
    }8 ]' x- H0 T; |( }- d3 z+ P

2 M/ M% {. U: t/ C* C, a3 H# K& ?    /* TODO: Add your application code here */
* l1 P7 E. h! \/ e7 C# [" t' l
- p2 A/ U( o+ y( ^- b& W        UF_PART_new("D:\\part.prt", 1, &partTag);
& }7 f& L' _& [2 h  x1 E. A% ], w0 d' _" O% `+ G2 \' A; D! b
        UF_MODL_create_cyl1(UF_NULLSIGN, origin, height, diam, direction, &cylTag);; }+ u% G5 M/ P& m
        UF_MODL_ask_feat_edges(cylTag, &eageList);" |8 D9 G  Z+ d( i- ~
        UF_MODL_ask_list_count(eageList, &count);! }  _7 A  u; ]# {1 `& e
        sprintf(msg,"count number: %d",count);
' j. m: R3 M7 L' Z) W  D        uc1601(msg,1);# q6 A. ^. ?- A6 T# `

& _% v# s& n# R8 L        for ( i = 0; i < count; i++): ^" i/ g2 G0 o& M$ x! ]: ]
        {
% D3 t9 o' i8 K  c6 `* ]                UF_MODL_ask_list_item(eageList, i, &eageTag);//将对应边保存
8 ?, p% ]0 \# S1 S: O4 Z
) t0 v- ]! L( B) k1 \1 A- S8 t                UF_CURVE_ask_centroid(eageTag, centroid[i]);//将对应的边的中点获取/ d1 e& \5 K, V0 \
        }7 _/ C: y8 ~  J
       
. ^7 x8 w! t; U6 E        line_coords.start_point[0] = centroid[0][0];//第一个曲线的中心坐标, U2 ]; x% @4 h- M2 y# c2 e
        line_coords.start_point[1] = centroid[0][1];6 \: ?) R  u" K3 [
        line_coords.start_point[2] = centroid[0][2];! h) D4 a# v1 C2 [: x0 r/ T- m, j& w

! L# |' @* y7 l; u  l. C' g7 C        line_coords.end_point[0] = centroid[1][0];6 ]7 S- M0 D- a, N2 E
        line_coords.end_point[1] = centroid[1][1];! I5 o8 u/ ~7 W* {$ f, l
        line_coords.end_point[2] = centroid[1][2];+ X+ |# F0 M2 C1 {

% r6 c& q* u2 q8 R! F% O0 g. Y        UF_CURVE_create_line(&line_coords, &lineTag);
1 l# K* D# n* U1 l# w1 x9 w8 h        UF_PART_save();
- h6 R# k( o: V
! j2 R  C) [) {% R. a
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.doteam.tech
回复

使用道具 举报

全部回复2

0

主题

22

回帖

52

积分

注册会员

积分
52
发表于 2021-9-2 13:48:36 | 显示全部楼层
非常好的帖子 收藏一下以便学习
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了