青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 4440|回复: 5

[原创] 关于UF_CURVE_create_spline_thru_pts函数的使用

[复制链接]
发表于 2010-4-23 10:16 | 显示全部楼层 |阅读模式
最近遇到一个问题,想用这个函数画个凸轮廓线,我目前已经利用数学公式获得凸轮廓线的X,Y,Z的坐标,生成.dat文件,我想能不能利用这个UF_CURVE_create_spline_thru_pts函数,生成一个廓线,不知道还有没有其他的方法,主要想调用生成的.dat文件,这个函数里的 point_data,参数不会用,想能不能从.dat中读出数组,赋给这个 point_data?纠结中!!部分代码如下
; }& v7 Q; t" a0 E, n8 C//public int Excute()$ F2 }8 ?0 n) c: ^
        //{
5 S+ V+ [7 d/ O        //    /* B-spline parameters  */- L1 O  o$ |1 s7 J1 ?
        //    int degree = 3;9 s  V  t5 A# q+ z) L
        //    int periodicity = 1;- D: j9 f4 T/ q2 O3 H
        //    int num_points = NUMBER_POINTS;
# M7 p; l/ u& P& _/ q6 S        //    int save_def_data = 1;
/ Q. x" J7 @! g) G; p        //    /* Point/slope UFCurve attribute array */; v" Q8 R, r" a# Y5 ^2 {
        //    UFCurve.PtSlopeCrvatr[] point_data = new UFCurve.PtSlopeCrvatr[NUMBER_POINTS];3 \0 v- m* z% z, }- N! x- Z2 a
& S: J! [( x: i* Y1 D
        //    fs = new FileStream(path, FileMode.Open, FileAccess.Read);
; i5 o* @( u% z0 q2 v' o4 i        //    StreamReader br = new StreamReader(fs, System.Text.Encoding.GetEncoding("gb2312"));  + h. p, D1 o! `, u& j) f1 q1 o
        //    string m = br.ReadLine();
* }* U5 M& _9 U$ _: v+ V& ?+ K( W9 M        //    string[] arr = m.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
" W' |! u6 X0 l& x        //    List<double> list = new List<double>();
! j! Q. V) l0 x" r- a- y. S# h% a& Q1 B& O- k4 W& \  A$ u
        //    w.Flush();. r7 M% D" D6 M  _2 x6 \; _
        //    w.Close();; ~9 N3 v* ~4 H0 ]' o" ~1 z

5 ~3 o) X" r5 W' v        //    /* Arrays of user's defining point data */% X" f2 l' r, D% y2 C2 r2 l* P1 |. ?
        //    double[] parameters = null;7 |/ O7 A4 a% \8 ~( o$ J+ w) }
        //    double[] points = arr;
% G) x( n) I; z7 |        //    Tag spline_tag;" Z; ^3 Z5 i/ H1 d/ O6 e

* I2 {7 K. ]+ a% r5 O9 z        //    /* Create B-spline UFCurve */
% i, q, _! p" Z, V        //    theUfSession.Curve.CreateSplineThruPts(degree,( m; G. k& s- y$ w0 d& `
        //        periodicity,# I7 T) D6 m% C5 G$ U" Z& k
        //        num_points,
5 X9 Z, ?- P6 Z; n        //        point_data,
* ]# ^  R2 U5 P        //        parameters,
, C' @1 r; i$ C4 ^; ~        //        save_def_data,8 `; ?3 i1 r9 R* K) w
        //        out spline_tag);* B% I, p6 J7 ~# q) Y
        //    theUfSession.Part.Save();
/ G: n5 W/ j) I" b* C3 o        //    return 0;2 _5 j  x4 G6 p" @% h1 Q  j- R! X
        //}
! Y6 i% E# Z. R% h% C0 U/ Q还有这个ug6里面的journal功能,能不能录个insert-curve-spline,选择throUGh points的操作过程啊!!!
 楼主| 发表于 2010-4-23 10:31 | 显示全部楼层
顶一个,这个贴怎么下来了呢,顶,高手~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-4-23 10:37 | 显示全部楼层
顶一个,这个贴怎么下来了呢,顶,高手~~
回复 支持 反对

使用道具 举报

发表于 2010-5-13 10:35 | 显示全部楼层
本帖最后由 wel8584 于 2010-5-13 10:37 编辑
7 O" }3 n) w) n4 T4 y# S
) u1 `  f' Q- Q这个是可以的,你写个解析dat文件的函数,每个点的坐标分好,然后一一按顺序赋给point data即可绘制样条# Q4 P3 C8 h/ a' k0 q
帮助文档里有现成的例子,可以参考一下(例子我见过的是C写的,不是C++,不知道有没有C++的例子)
回复 支持 反对

使用道具 举报

发表于 2010-9-2 16:28 | 显示全部楼层
回复 4# wel8584
) ~2 ~) ^2 N/ D$ G! ?( {( z, {8 ~9 i. M& E
' L) e% p% \8 t" w
    希望你能上传一下这个例子!!急用
回复 支持 反对

使用道具 举报

发表于 2011-1-3 15:23 | 显示全部楼层
LZ解决没...我正要用到一个渐开线的生成.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2025-6-29 07:53 , Processed in 0.236947 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表