名称 | ・・・・・・・ |
ベジエ制御点Pから階差を計算 |
|
ルーチン名 | ・・・・・・・ |
kaisa |
|
スクリプトNo | ・・・・・・・ | sub_set01- 016 | |
file名 | ・・・・・・・ | ScriptSet01.lzh sub_set01のページからセットごとダウンロードしてください。 |
|
概略 | ・・・・・・・ |
ベジエ制御点Pの座標値から1〜3段階差を計算する。 |
|
使用前提 | ・・・・・・・ |
予めGetnVec(sub_set-012)でベジェ制御点座標を取得しておく。 |
|
依存関係 | ・・・・・・・ |
特になし |
|
引数説明 | ・・・・・・・ |
P |
(in)ベジエ制御点Pの座標値(1次元、3要素の配列) |
戻り値説明 | ・・・・・・・ |
無し |
|
変数説明 | ・・・・・・・ |
DVec1*(2) |
第一段階差用変数 |
注意点 | ・・・・・・・ |
処理結果は引数で返しています。 |
|
スクリプト | |||
'-----------階差の計算(ベジエ制御点Pから階差を計算) Sub kaisa(P,XYZ0,XYZ1,XYZ2,XYZ3) '3次のベジエ制御点Pの座標値から1〜3段階差を計算する。 '戻値---無し '引数--- ' P :(in)ベジエ制御点Pの座標値(1次元、3要素の配列) ' XYZ0 :(out)P0座標値(1次元、3要素の配列) ' XYZ1 :(out)第一段階差(1次元、3要素の配列) ' XYZ2 :(out)第二段階差(1次元、3要素の配列) ' XYZ3 :(out)第三段階差(1次元、3要素の配列) Dim DVec11(2), DVec12(2), DVec13(2) ':第一段階差用変数 Dim DVec21(2), DVec22(2) ':第二段階差用変数 Dim DVec31(2) ':第三段階差用変数 Dim j ':カウンタ用変数(xyz) '第一段階差 For j = 0 To 2 DVec11(j) = P(1, j) - P(0, j) DVec12(j) = P(2, j) - P(1, j) DVec13(j) = P(3, j) - P(2, j) Next '第二段階差 For j = 0 To 2 DVec21(j) = DVec12(j) - DVec11(j) DVec22(j) = DVec13(j) - DVec12(j) Next '第三段階差 For j = 0 To 2 DVec31(j) = DVec22(j) - DVec21(j) Next '階差表示の定義 For j = 0 To 2 XYZ0(j) = P(0, j) XYZ1(j) = DVec11(j) XYZ2(j) = DVec21(j) XYZ3(j) = DVec31(j) Next End sub |
|||
使用例 | |||
主サブルーチンの例題を参照してください。 |