现在的位置: 首页 > 综合 > 正文

D3DXVec3BaryCentric 函数

2013年10月26日 ⁄ 综合 ⁄ 共 856字 ⁄ 字号 评论关闭

D3DXVec3BaryCentric 函数


返回三个3-D坐标向量组成的三角形的重心坐标点。

定义:

D3DXVECTOR3 *WINAPI D3DXVec3BaryCentric(      

    D3DXVECTOR3 *pOut,
    CONST D3DXVECTOR3 *pV1,
    CONST D3DXVECTOR3 *pV2,
    CONST D3DXVECTOR3 *pV3,
    FLOAT f,
    FLOAT g
);

参数:

pOut

[out, retval] 指向 D3DXVECTOR3 结构的操作结果。

pV1

[in] 指向 D3DXVECTOR3 结构的源向量。

pV2

[in] 指向 D3DXVECTOR3 结构的源向量。

pV3

[in] 指向 D3DXVECTOR3 结构的源向量。

f

[in] 重量系数,看说明。

g

[in] 重量系数,看说明。

返回值:

指向 D3DXVECTOR3 结构的重心坐标。

 

说明:

D3DXVec3BaryCentric 函数主要用来说明三个点的关系。这个函数用下面的公式计算: V1 + f(V2-V1) + g(V3-V1).

任何在V1V2V3 三角形平面里的点,都可以用重心坐标 ( f,g)表示出来。参数f 控制V2 有多少重量,参数g 控制V3点有多少重量。最后1- f- g 控制V1有多少重量。

注意有下面的关系:

·   如果(f>=0 && g>=0 && 1-f-g>=0),那重心点在V1V2V3内。

·   如果(f==0 && g>=0 && 1-f-g>=0),那么重心点在V1V3上。

·   如果(f>=0 && g==0 && 1-f-g>=0),那么重心点在V1V2上。

·   如果(f>=0 && g>=0 && 1-f-g==0),那么重心点在V2V3上。

函数返回值跟pOut 参数返回值是一样的。这样可以让函数D3DXVec3BaryCentric作为其它函数的参数使用。

函数信息:

Header

d3dx9math.h

Import library

d3dx9.lib

Minimum operating systems

Windows 98



抱歉!评论已关闭.