|
我这边要把360度分成几段曲线来画,每段的角度是通过其它参数算出来的,参数不同每段的角度也不同。但是我想把每段的的点画出来,然后再用样条曲线拟合,后面还要通过这个360度里面的样条曲线进行拉伸实体。但是现在存在的问题是通过改变参数每段的角度不一样,我也不知道该用多少个点。大家有没有什么好方法可以把样条曲线拟合进行循环。就算事先不知道它有多少个点也照样实现点的拟合。
- C6 f) L0 _5 k2 \# LReDim points(0 To 3 * (360 / (m1 * N)) / 1.8 - 1) As Double' o" I) f7 e3 s# {: [; m; G# |
points(i) = r * Cos((k * 1.8) * pi / 180) * 0.001
' V/ A8 {+ R8 w: \points(i + 1) = r * Sin((t + k * 1.8) * pi / 180) * 0.001. H1 G# j' L$ e2 k
points(i + 2) = 05 z+ M& y7 J1 N* D+ n& W- c
# g$ @, @2 f; C9 ~1 Yl! b+ e3 Z5 l2 {1 j, \1 ]5 e* f
0 B! _# j0 ]) ]points(i) = rr * Cos((k * 1.8) * pi / 180) * 0.001; L9 c3 r" n1 [8 P' q1 G
points(i + 1) = rr * Sin((t + k * 1.8) * pi / 180) * 0.0018 [6 d; g& ]0 A4 y5 ~& U# ?3 e' I6 l
points(i + 2) = 0
% I* J- V8 C# a: c: P7 r, \. ?5 }6 m6 Y4 D, Q8 S
pointArray = points
% C% N7 t4 A1 } R) qSet skSegment = Part.SketchManager.CreateSpline((pointArray))9 r% h: Z/ i5 j: w& I
就像这种能不能实现拟合呀5 s7 S' ~+ v- E) |4 D/ u4 f
9 h @4 l. l6 r7 B9 g+ B
5 V5 k: C7 r5 E8 [( S: I
5 K( J2 i2 Z" T5 O' B5 ~ |
|