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

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

admin 楼主

2015-4-28 13:17:38

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

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

x

- k, ]- V. w0 U2 N- r 可能大家用的到,选择一条曲线,通过输入的公差,自动创建一些列的点集!/ r' s  W5 `# l1 E

1 q. r' d# r( F' i( v' v7 X( O- N! Y- D5 }1 c2 @
void testSimulation::do_it()  Q" Y0 `2 v; h' E* r1 S$ i
{
" \; s1 Z( ]; T0 E% y: N         //TaggedObject* toolbody = select_by_mask();
& {. i7 O% l7 }5 D) m2 ]        TaggedObject* pathCurve = select_by_type();
7 t4 w+ l. N, O; b) i2 T% z! {        //std::vector< NXOpen::TaggedObject * > any_objs = select_any_objects();$ g6 ]" Q8 Y4 {4 [
        // get the path point
- q+ Z& J& j7 W7 M4 d9 q" C        double ctol = 0.0;5 c0 m9 m9 F5 q2 \
    double atol = 0.0;1 l  p: W8 P8 R3 l4 w! O" _+ [$ {
        double stol = 10.0;/ \( ~( K6 D- ^# T# i
         double *pts;8 w+ k2 }. O* O! n- R: I
         int num =0;' g) L# E8 l* o% ~8 u) N
         char msg[256];2 Z$ u7 w* v" ~) a$ ?
         int error =0;" K+ _4 `, x9 t1 l! K
         double (*points)[3];
7 f( Z9 N  L- a4 }         tag_t pointTag;
1 p5 ^% J0 [3 E       
' i3 r. Z, r7 a3 C; T, A
& s2 K' a- j8 r        UF_initialize();+ _4 u+ l1 ?4 t6 H, p6 c& V! u* W
; U. s8 _7 n/ q7 A% u6 L
        UF_MODL_ask_curve_points(pathCurve->Tag(),ctol,atol,stol,&num,&pts);
$ n4 F# i3 B. n: W/ K  \        sprintf(msg,"the number of points:%d",num);8 M; P- ^6 K/ N& r
        print(msg);
+ V) V6 P" R1 B9 W, O% z7 _$ w* o; Y2 m
        points = (double(*)[3])(UF_allocate_memory(num*sizeof(double[3]),&error));
* I2 [! K6 |4 R" M6 ~& W/ o9 o: N9 n- O" M* H2 R
        for(int i =0 ; i < 3*num;++i)# r  ~) W. S7 J0 a2 t4 b$ x' l
        {
+ }, p+ _- B; z, e" ^, ?                sprintf(msg,"The points are: %f\n",pts[i]);
* e8 T! l4 A7 S! H/ C# Z                print(msg);
/ {; Z8 l/ R1 m- U. v$ C               
" e, j' M$ Y6 A, ~        }
. C* V5 ^  f) ~        for (int j = 0; j < num; j++)
9 W6 R, I! G7 J8 P8 w! o8 H        {+ M; j" B; g1 Z3 u! m7 H
                points[j][0] = pts[j*3];9 j+ M' X9 ?0 {+ }+ N9 U
                points[j][1] = pts[j*3+1];
) J. H. @' N7 G7 K                points[j][2] = pts[j*3+2];
2 |# s: S! w9 @" |$ e1 L$ k                UF_CURVE_create_point(points[j],&pointTag);
6 ~. I- h9 p. ~, M$ _" Q1 U- o/ _6 M        }
- u& w9 q5 g: a$ B0 H9 G! k/ \: J: H/ G3 J
        UF_free(points);+ q5 L8 {( l7 l" Z4 Z
        UF_free(pts);
8 l1 P2 k9 V" v( E+ ?- R        UF_terminate();% u  B+ ^' ?# m' C9 `8 `* y* J% _$ O+ s

6 X) P3 ?8 {$ a4 t4 B7 P        // TODO: add your code here
2 x- r; R6 ]5 f( h. `        % s1 \4 H5 i# h+ |) Y
}- a+ N. o  k) u
2 W' I1 a5 u" `
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了