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

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

admin 楼主

2015-4-28 13:17:38

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

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

x
+ t* L$ p6 W5 E
可能大家用的到,选择一条曲线,通过输入的公差,自动创建一些列的点集!9 Q" D+ h& J9 u( n
: x- F0 a5 `* O* \9 ]5 u

7 h0 I6 V: t  \9 T+ c  Q$ svoid testSimulation::do_it()8 Z% j5 j: A6 N" k
{
4 o- i, I" S9 j- j( J         //TaggedObject* toolbody = select_by_mask();# z' F- Q: G  N+ p3 V+ t; z
        TaggedObject* pathCurve = select_by_type();
  O0 S( r* C% q) ~        //std::vector< NXOpen::TaggedObject * > any_objs = select_any_objects();
% x* q  X/ R/ D$ y& p        // get the path point
8 }5 B% }) a0 b: _+ c% L( T) p        double ctol = 0.0;
- ^5 E- C4 v# p9 {/ ]; t    double atol = 0.0;8 l7 b' V4 t& S8 \% C* f
        double stol = 10.0;
1 L& \/ {8 c! S4 J$ V9 \. `% E& w         double *pts;
9 F9 G7 r% M; i% f         int num =0;
, r4 d/ ~: G5 R# F; x         char msg[256];
% G# F9 F2 u+ N         int error =0;
" K* X$ H: o$ _) [         double (*points)[3];; a$ U* I- S  b6 W. h3 s7 f; G0 n
         tag_t pointTag;' Z! {; |/ K* W
        5 H* F: M$ R/ y7 A" ^; a! Q, P
; x# M; E" N, s1 }! |8 U
        UF_initialize();
' G1 N4 g0 c- z9 |% Z9 r# Z- ?5 a1 D
        UF_MODL_ask_curve_points(pathCurve->Tag(),ctol,atol,stol,&num,&pts);0 y7 e" D0 E0 ^
        sprintf(msg,"the number of points:%d",num);
3 J+ b* Z6 ^! Q0 F# G# |        print(msg);" c' }# ]: R6 Z
8 z: t; a; R/ g# ]6 Z, d; Q
        points = (double(*)[3])(UF_allocate_memory(num*sizeof(double[3]),&error));
; u5 E8 t: T- V0 l6 G5 c5 L9 Q
        for(int i =0 ; i < 3*num;++i)- O) Y* Y% j8 t, E$ T2 a
        {  d9 P4 }3 t2 s6 l; W3 V0 y
                sprintf(msg,"The points are: %f\n",pts[i]);6 y) Y" X: c" H. A" S, n
                print(msg);
4 n% }8 ^# ]2 `* U                4 w4 R3 |* d! J- i* Y
        }! \$ j0 |* T* O) S9 O0 o. Z( H/ @
        for (int j = 0; j < num; j++)
9 c% ]6 F2 |$ j8 i' q$ o) W        {
$ \3 [! \1 e/ y- ]$ k; S                points[j][0] = pts[j*3];
7 U% u1 K5 d1 h; N% }1 T3 S" U' f                points[j][1] = pts[j*3+1];( B# e4 e' b4 |! J! F  _
                points[j][2] = pts[j*3+2];
, q5 t6 d  t. z$ h                UF_CURVE_create_point(points[j],&pointTag);; F5 A# B8 g1 ~
        }
% p4 X) H& G9 Z; A. Q: K
9 ^- P# d. o$ g7 H' z        UF_free(points);
( {5 b6 n3 j, q3 B7 k        UF_free(pts);
& j" ?4 P5 J' |' i% T        UF_terminate();9 ~! J! i  Y# v8 g6 S/ b0 V4 @
3 `, b4 |& y# G# n% g1 d% ^" O
        // TODO: add your code here
: z  A5 _/ b' w       
  Y4 `3 F" d+ w+ D$ [2 R5 e* Q}
4 R. l" ~0 @. n0 g# m
2 J" l+ t  H8 W& e% f5 |
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了