|
我這邊要把360度分成幾段曲線來畫,每段的角度是通過其它參數算出來的,參數不同每段的角度也不同。但是我想把每段的的點畫出來,然后再用樣條曲線擬合,后面還要通過這個360度里面的樣條曲線進行拉伸實體。但是現在存在的問題是通過改變參數每段的角度不一樣,我也不知道該用多少個點。大家有沒有什么好方法可以把樣條曲線擬合進行循環。就算事先不知道它有多少個點也照樣實現點的擬合。
" \0 W- a, r$ O0 s: y7 c1 I) G9 y( JReDim points(0 To 3 * (360 / (m1 * N)) / 1.8 - 1) As Double
; Z( B5 m) R6 e# c/ X- Zpoints(i) = r * Cos((k * 1.8) * pi / 180) * 0.001
* q. g/ O& }. W: Y6 b* u. q" i9 Spoints(i + 1) = r * Sin((t + k * 1.8) * pi / 180) * 0.001+ T. V+ p" ^+ y1 p9 S E
points(i + 2) = 09 p p5 `/ X$ V8 D
1 }$ o8 o6 Q8 J, ]. q8 X, Dl
' h; _! C" I- w$ d9 r0 p: l
* u3 ?- x- }5 @- C6 j) I( wpoints(i) = rr * Cos((k * 1.8) * pi / 180) * 0.0016 c' Y6 ^1 F! g: _1 G6 V
points(i + 1) = rr * Sin((t + k * 1.8) * pi / 180) * 0.0018 [; C' Z: ]3 L& C
points(i + 2) = 0' p* w! ~& z' z' q0 T* K
: }" a h( |# r4 ^& g
pointArray = points7 p& c! T8 V( Q. C! q. L4 Z
Set skSegment = Part.SketchManager.CreateSpline((pointArray))! q9 p% b: u5 c( Q0 @
就像這種能不能實現擬合呀
5 F- O& c8 X1 {3 u) v* M& g/ ?+ c; W9 g, O9 B
; e2 z; d. H9 Z" g& P# p4 n* L
. l9 }+ M! x2 t' V' `. u& M |
|