sub_set03へ戻る

名称 ・・・・・・・

2点間の距離を計算する

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

PointsDistance

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

2つの位置ベクトル(座標点)から、その距離を計算する。

使用例実行結果

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

左図の緑色がvec1,vec2でこの2つ位置ベクトルの示す座標点間の距離を計算するものです。

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

戻り値はベクトルではないので描画されません。下図のようにメッセージボックスに計算結果を表示します。

使用前提 ・・・・・・・

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

依存関係 ・・・・・・・

特になし

引数説明 ・・・・・・・

pos1
pos2

:最初のポイントの位置ベクトル
:2番目のポイントの位置ベクトル

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

距離が戻ってきます 通常のバリアント型変数で受けてください。

変数説明 ・・・・・・・

D

:計算い使う一時記憶用変数
:カウンタ用変数

注意点 ・・・・・・・

特になし

 
スクリプト
'---与えられた2点の座標データから距離を計算する。-------
function PointsDistance(pos1,pos2)
  dim D,j
  D=0
  for j=0 to 2
    D=D+(pos2(j)-pos1(j))^2
  next
  PointsDistance=D^(1/2)
end function
使用例
'2点の距離計算のテスト
'描画されるのは元のベクトルだけです。
'変数はスクリプトのtest()を参照
  dim Result
  Result=PointsDistance(pos1,pos2)
  XShade.Message"Distance="&Result
  drawPos pos1
  drawPos pos2
  XShade.SelectParent 1

sub_set03へ戻る