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

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

admin 楼主

2015-4-28 13:17:38

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

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

x
8 P+ [7 {1 h% _+ u! K
可能大家用的到,选择一条曲线,通过输入的公差,自动创建一些列的点集!" I7 s$ A9 q8 t( K2 t) f; [
8 ]$ \  K3 y- L
' K* V4 x6 S9 i8 z. h
void testSimulation::do_it()8 c/ v; A+ u: h
{
# s  M. ?% |% \- A( Y5 E( j! h1 U         //TaggedObject* toolbody = select_by_mask();6 P  y* R9 M7 N
        TaggedObject* pathCurve = select_by_type();
$ Q% s: k9 k1 _        //std::vector< NXOpen::TaggedObject * > any_objs = select_any_objects();
2 }& i& A$ r! p" a  I8 c6 `+ Z        // get the path point ' h: j* L9 A- U; [6 e' p, I2 T3 A
        double ctol = 0.0;
- y+ e9 W4 e) c4 X, ]0 ~    double atol = 0.0;
+ W" P+ n, c9 f; j        double stol = 10.0;
; Y. M+ l# b  B# N( d9 H         double *pts;
. W5 p: z. ?) Z/ ~( l( t: t/ z+ u         int num =0;
) Z8 S; V2 N9 E# Q1 w) L         char msg[256];
. q, f. A5 j7 Z8 {  x         int error =0;# f0 f* y# j; T! o1 u
         double (*points)[3];
" e4 \& Y/ V0 r" T         tag_t pointTag;
7 x8 w% I# W- @+ N5 z2 L       
7 p7 a( K0 j# w- \7 B$ O! t5 f: c+ _4 E/ C# e- _
        UF_initialize();0 \6 \- w, r8 Q, ~
$ L( a6 |6 M4 u& C" i8 i+ l
        UF_MODL_ask_curve_points(pathCurve->Tag(),ctol,atol,stol,&num,&pts);( b. \$ S. y2 y& k& u
        sprintf(msg,"the number of points:%d",num);* H9 _6 V$ ~1 A9 h& c
        print(msg);
1 ?% K) q, w0 Q" ~3 F0 l2 d1 C3 x: [% n, X, u
        points = (double(*)[3])(UF_allocate_memory(num*sizeof(double[3]),&error));; v) m/ k" k9 }2 K
# j6 q- k+ m7 L$ ^' r, w
        for(int i =0 ; i < 3*num;++i)
) X- O4 }$ `( n% O* ^        {$ N, ?) ?* i, q3 D- k
                sprintf(msg,"The points are: %f\n",pts[i]);
# U7 f+ d* Z8 v7 o" j! g' j                print(msg);
7 F6 |) R, O8 X1 ^               
7 D* {/ ?% ~, Y3 W        }2 O) s( ^) g' }! _
        for (int j = 0; j < num; j++)( H+ ~( L4 J8 r7 w6 E- x; ?& D
        {
8 m. B+ E/ r; i" a                points[j][0] = pts[j*3];
. t3 V: H8 }1 q! `9 d( V                points[j][1] = pts[j*3+1];
, x# e! S  U) r. C. T                points[j][2] = pts[j*3+2];* c2 ~! f  b. ?: f; F! h7 ?2 e
                UF_CURVE_create_point(points[j],&pointTag);
7 l! {' x0 W! B2 @9 t  w. Y        }/ o4 ?  H: Q" r1 k) i* K

) C  {( X5 m# U$ j        UF_free(points);
% X2 F% `% ?4 _  l( w        UF_free(pts);2 D. @* p  y# k. S) Y
        UF_terminate();* Z: O+ F  l9 n' r

$ t8 l6 T4 x3 m9 s; a( z        // TODO: add your code here
3 H( m: B! {6 D; W0 }+ V       
7 x+ E$ j5 u$ Z6 i/ P' _}
2 d. i# K$ D5 u9 f2 l. m2 A( F) O* {7 Q4 j  M
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了