sub_set03へ戻る

名称 ・・・・・・・

3次元ベクトルの内積

ルーチン名 ・・・・・・・

innerProduct3

スクリプトNo ・・・・・・・ sub_set03- 004
file名 ・・・・・・・ ScriptSet03.lzh
sub_set03のページからセットごとダウンロードしてください。
概略 ・・・・・・・

2つのベクトルの内積を計算します。

使用例実行結果

これはスクリプトのtest()にある機能確認スクリプトを実行して「innerProduct3」ルーチンの結果を描画させたものです。

左図の黄色がvec1,vec2が内積計算の元になる形状です。

紫の矢印はベクトルの向きを示しています。

ベクトルの内積はベクトルではなくスカラー量なので図の中に結果は描画されません。下のようにメッセージボックスに計算結果が表示されます。

使用前提 ・・・・・・・

戻り値を受け取る通常のバリアント変数を宣言して用意しておく。

依存関係 ・・・・・・・

特になし

引数説明 ・・・・・・・

vec1
vec2

:最初のベクトル
2番目のベクトル

戻り値説明 ・・・・・・・

内積がスカラー量で戻ります。通常のバリアント型変数で受けてください。

変数説明 ・・・・・・・

InnerPro

一時記憶用変数

注意点 ・・・・・・・

特になし。

 
スクリプト
'---内積を計算する(3次元ベクトル)-----------------------
function InnerProduct3(vec1,vec2)
  dim InnerPro
  InnerPro=vec1(0)*vec2(0)+vec1(1)*vec2(1)+vec1(2)*vec2(2)
  InnerProduct3=InnerPro
end function

使用例
'ベクトルの内積のテスト
'描画されるのは元のベクトルだけです。
'変数はスクリプトのtest()を参照
  dim Result
  Result=innerProduct3(vec1,vec2)
  XShade.message"innerProduct="&Result
  drawVec pos0,vec1
  drawVec pos0,vec2
  XShade.SelectParent 1
  

sub_set03へ戻る