青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 4441|回复: 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?纠结中!!部分代码如下
: A7 y# ^4 |6 S/ f1 R2 W//public int Excute()3 D& Q+ E2 H" Z! n: S
        //{
( Y5 H9 Q# J3 h2 ?5 r6 r) X4 V        //    /* B-spline parameters  */
1 I9 [; f$ j2 S3 f        //    int degree = 3;
' r4 ^3 G% `# P        //    int periodicity = 1;
6 m+ i. g; J! N  v+ s3 g        //    int num_points = NUMBER_POINTS;* X/ l, U% Q& a1 s& Z% p0 S' Q/ P
        //    int save_def_data = 1;
) Y( `# n3 r9 v, _        //    /* Point/slope UFCurve attribute array */+ s- U8 Z3 z3 c% X6 H- v8 \
        //    UFCurve.PtSlopeCrvatr[] point_data = new UFCurve.PtSlopeCrvatr[NUMBER_POINTS];
; J, c# ~, z8 v+ r4 G  F8 @) g8 W  g3 u& K* t0 D
        //    fs = new FileStream(path, FileMode.Open, FileAccess.Read);
  j& G7 ~0 N, y        //    StreamReader br = new StreamReader(fs, System.Text.Encoding.GetEncoding("gb2312"));  
; ~3 \8 r- z. h        //    string m = br.ReadLine();
: h$ U6 l6 G1 E# y" M9 N        //    string[] arr = m.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);4 l# j, q4 p3 ?4 }
        //    List<double> list = new List<double>();9 `9 e8 W4 V# R8 K1 m) R5 Y
" ?2 O6 i, J/ R7 m! {* Q4 g
        //    w.Flush();9 ^( d# B% O9 \- [* @& g7 L
        //    w.Close();7 I: r! b2 }8 h

8 a/ c2 m. S+ e, N8 [1 |        //    /* Arrays of user's defining point data */
" G% j! i! t( u( b  G. m! `! Q0 y" o        //    double[] parameters = null;, _: m3 k! B! d$ l
        //    double[] points = arr;
. H, W4 @$ r( F. V        //    Tag spline_tag;
; a0 s; I+ Z# t& Q+ i( R1 `/ u  A2 P6 A' o8 {8 @8 K
        //    /* Create B-spline UFCurve */
( f. q0 {% S: W  J& `1 Q        //    theUfSession.Curve.CreateSplineThruPts(degree,
& f2 E/ r( u8 H# q+ b1 e# K        //        periodicity,
% v& l$ f, k1 X1 ~( ]" `( F. N        //        num_points,1 ?  R$ M# ?$ ?- u2 }- z# `, O
        //        point_data,* A0 p" L5 Q* c
        //        parameters,. Q- `& ?7 B8 M) c4 K
        //        save_def_data,+ H; \% ~/ \8 N2 f! w
        //        out spline_tag);
( e' O. d) e! _        //    theUfSession.Part.Save();/ i! v8 L7 I! D, e6 n
        //    return 0;0 }9 S) s4 t' ]5 H5 E( I! Z  k
        //}
) O8 v! i# ^6 M1 Z* u6 k还有这个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 编辑
+ U$ q8 e0 H  J4 F! `% c1 d
' u8 `2 l5 J9 {  h1 s5 i( g5 g这个是可以的,你写个解析dat文件的函数,每个点的坐标分好,然后一一按顺序赋给point data即可绘制样条
; T8 F, o+ A) v* F7 N- Q1 F( E帮助文档里有现成的例子,可以参考一下(例子我见过的是C写的,不是C++,不知道有没有C++的例子)
回复 支持 反对

使用道具 举报

发表于 2010-9-2 16:28 | 显示全部楼层
回复 4# wel8584 ( \! z0 \- c4 D9 G; b( @3 A, \7 D

1 U2 _  R1 X, ~$ D% R9 T5 F7 v$ e% }0 H0 V4 B9 j+ e; q4 S" j
    希望你能上传一下这个例子!!急用
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-29 19:57 , Processed in 0.125061 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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