Microsoft DirectX 8.0 (C++)

D3DXVec2BaryCentric

指定された 2D ベクトルを使用して重心座標のポイントを返す。

D3DXVECTOR2* D3DXVec2BaryCentric(
  D3DXVECTOR2* pOut,
  CONST D3DXVECTOR2* pV1,
  CONST D3DXVECTOR2* pV2,
  D3DXVECTOR2* pV3,
  FLOAT f,
  FLOAT g
); 

パラメータ

pOut
[in, out] 演算結果である D3DXVECTOR2 構造体へのポインタ。
pV1
[in] 処理の基になる D3DXVECTOR2 構造体へのポインタ。
pV2
[in] 処理の基になる D3DXVECTOR2 構造体へのポインタ。
pV3
[in] 処理の基になる D3DXVECTOR2 構造体へのポインタ。
f
[in] 加重係数。「注意」を参照すること。
g
[in] 加重係数。「注意」を参照すること。

戻り値

重心座標の D3DXVECTOR2 構造体へのポインタ。

注意

D3DXVec2BaryCentric 関数は、三角形の実際の位置とは関係なく、三角形の内部や周辺のポイントを理解する方法を提供している。この関数は、次の式を使用して結果であるポイントを返す。V1 + f(V2-V1) + g(V3-V1)

平面 V1V2V3 のポイントはいずれも、重心座標 (f,g) で表すことができる。パラメータ f は、V2 の結果に対する加重を制御し、パラメータ g は、V3 の結果に対する加重を制御する。最後に、1-f-g は V1 の結果に対する加重を制御する。

次の関係に注意すること。

重心座標は、一般的な座標の形式である。ここで重心座標を使用するときは、単に座標系の変更を表している。デカルト座標で真のものは、重心座標でも真である。

この関数の戻り値は、pOut パラメータの戻り値と同じである。このように、D3DXVec2BaryCentric 関数を別の関数のパラメータとして使用できる。

動作環境

  ヘッダー : D3dx8math.h で宣言。
  インポート ライブラリ : D3dx8.lib を使用。