|
我这边要把360度分成几段曲线来画,每段的角度是通过其它参数算出来的,参数不同每段的角度也不同。但是我想把每段的的点画出来,然后再用样条曲线拟合,后面还要通过这个360度里面的样条曲线进行拉伸实体。但是现在存在的问题是通过改变参数每段的角度不一样,我也不知道该用多少个点。大家有没有什么好方法可以把样条曲线拟合进行循环。就算事先不知道它有多少个点也照样实现点的拟合。
1 D% Z/ C H6 ^4 aReDim points(0 To 3 * (360 / (m1 * N)) / 1.8 - 1) As Double
% \+ o- q( n1 y! p' \% Rpoints(i) = r * Cos((k * 1.8) * pi / 180) * 0.001
1 d& a, }; I* m1 U8 }* D% Dpoints(i + 1) = r * Sin((t + k * 1.8) * pi / 180) * 0.001
( {; B# I2 \! Jpoints(i + 2) = 0% n+ s) M* e( H" P; I% ~. v8 p
& r, Y. C$ V+ t5 p( rl
# P6 j1 [& V6 x v2 @; o
4 Y3 [6 ^$ W; I; Y. A+ b/ Qpoints(i) = rr * Cos((k * 1.8) * pi / 180) * 0.001$ g, r2 Q3 {. @! k
points(i + 1) = rr * Sin((t + k * 1.8) * pi / 180) * 0.001& S+ O9 [# h2 A: Z& t, A
points(i + 2) = 0 K; Y U* q0 I" Z+ T3 M6 Q$ A) ^5 S
1 z- R0 r5 q- D8 C( L- h: O, z
pointArray = points
- a5 J$ D! f# gSet skSegment = Part.SketchManager.CreateSpline((pointArray))( \2 N9 _: h, ], C& P
就像这种能不能实现拟合呀+ Z; C3 e* u( x8 t6 u
% `) c, o b+ f3 l8 ]8 F$ k4 j( V% }/ ^/ L7 p; H9 X0 K! H6 f6 e
) ]# K6 N! U% p/ b2 e
|
|