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 3592 0

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

admin 楼主

2015-4-28 13:17:38

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

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

x
2 l3 Y! _# \3 r/ h' j0 P
可能大家用的到,选择一条曲线,通过输入的公差,自动创建一些列的点集!" j/ R7 `: t' K

/ l/ J5 y$ V  s8 N1 T. f2 ~* R# \6 [* Y3 c8 c
void testSimulation::do_it()% x; P. E' J; F& S; Q; k* C0 U
{
3 t7 G( g+ d- s  T) J         //TaggedObject* toolbody = select_by_mask();: C3 V. ~) r2 O# i3 {
        TaggedObject* pathCurve = select_by_type();
# \% ^& A8 n9 O        //std::vector< NXOpen::TaggedObject * > any_objs = select_any_objects();9 r7 d' {4 [& x3 Z3 G& j
        // get the path point ) e: Y2 ^; Z! Q% C# b) h3 z
        double ctol = 0.0;
3 U7 q8 ]% ~0 P8 z& V' [- e    double atol = 0.0;9 u3 H6 F& i; z3 Q# W7 W
        double stol = 10.0;
0 `5 M  F7 G7 ]- g/ ~         double *pts;" e3 s3 k/ s$ \* r3 q8 h
         int num =0;
0 p0 t5 n8 w3 F7 D- m  C* E         char msg[256];+ S0 ]; M' R0 {" o' n+ T) v4 {9 D" j
         int error =0;7 h/ H1 w, e* H0 F3 e
         double (*points)[3];; {& u& A2 g* i% G- J: P" K9 ]8 A: g
         tag_t pointTag;
- }% w% V. ^$ b1 r2 L  M4 B2 F$ r       
1 u6 M) M7 h) |% G6 L+ a
: S  ~' f% e! y% ~2 [. d        UF_initialize();
& w% e# t# c9 Z& z0 G9 c1 I: a' |" y! k
        UF_MODL_ask_curve_points(pathCurve->Tag(),ctol,atol,stol,&num,&pts);# r2 z6 h2 [( p% i9 v+ M0 z% `0 [' \+ z
        sprintf(msg,"the number of points:%d",num);
: y* J/ u: E/ r        print(msg);
* B9 ]" ]8 ], c. l  ?5 R- ^3 h' [" ?0 h' ^
        points = (double(*)[3])(UF_allocate_memory(num*sizeof(double[3]),&error));' e6 @1 f+ G( K. y* J1 _9 R
( T1 r. Y7 j4 O3 m/ _! ?3 @
        for(int i =0 ; i < 3*num;++i)2 ^4 ]0 A& G+ v' {& |5 i3 `4 C
        {
& U  ]9 m; \, x0 A                sprintf(msg,"The points are: %f\n",pts[i]);" @3 C# C' _" X( k/ |1 |4 C6 ^  H; y
                print(msg);
) Q( n% x2 |; U; G               
" p+ i- x+ K9 Q3 j& M9 k' R+ ^        }9 R, {6 z: e2 O* a' H5 M
        for (int j = 0; j < num; j++): T. l1 O4 C( [# v# Y5 L3 S- P
        {
4 J' N* T9 S% o8 I6 N4 ^: z                points[j][0] = pts[j*3];$ S+ J4 ]6 y+ d0 a
                points[j][1] = pts[j*3+1];7 c% d4 J: n8 W3 g* }& Y+ I
                points[j][2] = pts[j*3+2];( Z7 s$ v0 E7 P+ P" H
                UF_CURVE_create_point(points[j],&pointTag);1 v4 H) U3 Q: L. G6 i
        }  P; O3 t5 H4 ~

6 O4 E9 o. {; I, ^; _  s2 d        UF_free(points);4 `  Y$ h! T- ?. }! ]2 A; Q9 K* o
        UF_free(pts);. S9 s* w1 a: ~# ^
        UF_terminate();! }" e' l; q# C0 O
. _: n  b8 P: \, s6 f- H  O, A
        // TODO: add your code here
3 v$ x7 c  k3 G# l3 N       
/ n; o, ~' m0 `1 Y7 d6 g}
9 J! M* _. h1 C$ W7 W& k
" Z# c) A/ O- s  O) R. E8 Z
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了