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

[二次开发源码] 【NX二次开发源码分享】通过弦长,角度 公差创建曲线上点

[复制链接]

2015-4-28 13:17:38 3621 0

admin 发表于 2015-4-28 13:17:38 |阅读模式

admin 楼主

2015-4-28 13:17:38

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

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

x
& @) t0 _8 _4 X! B% T
可能大家用的到,选择一条曲线,通过输入的公差,自动创建一些列的点集!
3 E$ g6 `1 [4 @3 b8 X+ Z8 u( U7 h$ B# e7 t& f+ W

' r9 ?/ A9 E* w  n2 ivoid testSimulation::do_it()
7 d2 J/ _$ W9 ^{4 ~' m6 I4 K' K
         //TaggedObject* toolbody = select_by_mask();
% u4 x; Y' l# }( F" M        TaggedObject* pathCurve = select_by_type();$ |* l6 }4 R' r
        //std::vector< NXOpen::TaggedObject * > any_objs = select_any_objects();6 M* k$ u/ f, P# t; X7 o
        // get the path point 5 d: L2 O, S& I8 X1 f+ x, X
        double ctol = 0.0;- A2 e3 c) N! X
    double atol = 0.0;' a" S3 ^) L, o3 E0 x4 \- v
        double stol = 10.0;
1 T; v( V9 i1 f. l3 ^8 S$ n         double *pts;
0 ?' i. O- b! \; B+ d3 l         int num =0;
! H: ~* P3 o: V; _         char msg[256];+ P6 r& _/ x% W- |/ u
         int error =0;$ }6 k7 ^3 J3 C* i+ Y  y- P
         double (*points)[3];" }+ [$ X9 K# F8 Z# p% I6 ~' ]
         tag_t pointTag;
+ g. }, H; G9 z- V1 [       
! A8 ^; z5 Y& O% H% t: z  K6 P( g- g
        UF_initialize();
5 w' V! y0 V* S' O, b4 g( O6 f8 R" M9 N9 Z  L+ {
        UF_MODL_ask_curve_points(pathCurve->Tag(),ctol,atol,stol,&num,&pts);
1 T( A  ^+ @$ S        sprintf(msg,"the number of points:%d",num);& w- R4 n+ c+ ^0 h; e! @8 j
        print(msg);, _2 @' K( t. {0 \2 E) @* H
2 D; w% P7 G1 V: Y
        points = (double(*)[3])(UF_allocate_memory(num*sizeof(double[3]),&error));
, S  N' `3 s) j/ W: c# c2 b6 q6 e! ^+ S% w
        for(int i =0 ; i < 3*num;++i)
4 Z7 O+ @6 k& t" U0 }        {% H0 i9 k9 {* s. y! W8 }# i. E) G
                sprintf(msg,"The points are: %f\n",pts[i]);
3 @2 N9 r, N) `- J                print(msg);  B# o3 h) W, j+ c: Y- \
               
2 R2 Z5 z4 p- w        }
+ u' H* ^' I; O1 l  ~        for (int j = 0; j < num; j++)/ n" L: D! U7 @' q% J! Z. B0 O
        {
; |: k) O6 E  Y% Z- B                points[j][0] = pts[j*3];4 s  i1 D# ^9 M. J* ]
                points[j][1] = pts[j*3+1];
; |. H6 w9 {" M! Q. s4 O                points[j][2] = pts[j*3+2];
+ U% x& u; u$ L                UF_CURVE_create_point(points[j],&pointTag);, G* L* S& `- [) U" z
        }1 x+ u# g! X( q/ i

9 _* c% O  ~6 ?: \3 n        UF_free(points);* F$ I7 ]/ X4 p! [" ?% f# R
        UF_free(pts);  ~: D$ i, ~3 m0 e& r4 ]
        UF_terminate();
1 k- Z4 C/ E* ]8 \$ Z; S6 j5 b
' x5 I0 T0 T, q        // TODO: add your code here
4 L; }3 J8 B' m3 ]: d# a7 ^       
& F" ~3 s4 Z$ Z9 c3 s}/ v$ |6 x& }% n# A
3 b* w6 c) S0 i$ |6 C) X9 l% o
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了