Module: wine Branch: master Commit: a00353b394547356e6f8bb99b0e40079f996cba6 URL: http://source.winehq.org/git/wine.git/?a=commit;h=a00353b394547356e6f8bb99b0...
Author: David Adam David.Adam@math.cnrs.fr Date: Tue Oct 23 11:06:33 2007 +0200
d3dx8: Implement D3DXPlaneDotNormalize.
---
dlls/d3dx8/tests/math.c | 11 +++++++++++ include/d3dx8math.inl | 6 ++++++ 2 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/dlls/d3dx8/tests/math.c b/dlls/d3dx8/tests/math.c index c318a45..e73a619 100644 --- a/dlls/d3dx8/tests/math.c +++ b/dlls/d3dx8/tests/math.c @@ -60,6 +60,17 @@ static void D3DXPlaneTest(void) expected = 0.0f; got = D3DXPlaneDotCoord(NULL,NULL), ok( expected == got, "Expected : %f, Got : %f\n",expected, got); + +/*_______________D3DXPlaneDotNormal______________*/ + expected = -35.0f; + got = D3DXPlaneDotNormal(&plane,&vec), + ok( expected == got, "Expected : %f, Got : %f\n",expected, got); + expected = 0.0f; + got = D3DXPlaneDotNormal(NULL,&vec), + ok( expected == got, "Expected : %f, Got : %f\n",expected, got); + expected = 0.0f; + got = D3DXPlaneDotNormal(NULL,NULL), + ok( expected == got, "Expected : %f, Got : %f\n",expected, got); }
static void D3X8QuaternionTest(void) diff --git a/include/d3dx8math.inl b/include/d3dx8math.inl index e8e6a02..71f9641 100644 --- a/include/d3dx8math.inl +++ b/include/d3dx8math.inl @@ -270,6 +270,12 @@ static inline FLOAT D3DXPlaneDotCoord(CONST D3DXPLANE *pp, CONST D3DXVECTOR4 *pv return ( (pp->a) * (pv->x) + (pp->b) * (pv->y) + (pp->c) * (pv->z) + (pp->d) ); }
+static inline FLOAT D3DXPlaneDotNormal(CONST D3DXPLANE *pp, CONST D3DXVECTOR4 *pv) +{ + if ( !pp || !pv ) return 0.0f; + return ( (pp->a) * (pv->x) + (pp->b) * (pv->y) + (pp->c) * (pv->z) ); +} + /*__________________D3DXQUATERNION____________________*/
static inline D3DXQUATERNION* D3DXQuaternionConjugate(D3DXQUATERNION *pout, CONST D3DXQUATERNION *pq)