[PATCH] Implement D3DXVec2Subtract
David Adam
David.Adam at math.cnrs.fr
Fri Oct 5 15:13:25 CDT 2007
---
dlls/d3dx8/d3dx8.spec | 1 +
dlls/d3dx8/math.c | 7 +++++++
dlls/d3dx8/tests/math.c | 5 +++++
include/d3dx8math.h | 1 +
4 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/dlls/d3dx8/d3dx8.spec b/dlls/d3dx8/d3dx8.spec
index ddc00ca..64d5426 100644
--- a/dlls/d3dx8/d3dx8.spec
+++ b/dlls/d3dx8/d3dx8.spec
@@ -1,3 +1,4 @@
+@ stdcall D3DXVec2Subtract(ptr ptr ptr)
@ stub D3DXVec2Normalize
@ stdcall D3DXVec2LengthSq(ptr)
@ stdcall D3DXVec2Length(ptr)
diff --git a/dlls/d3dx8/math.c b/dlls/d3dx8/math.c
index b6dc2e0..290cd68 100644
--- a/dlls/d3dx8/math.c
+++ b/dlls/d3dx8/math.c
@@ -43,3 +43,10 @@ FLOAT D3DXVec2LengthSq(CONST LPD3DXVECTOR2 pv)
{
return (pv->x)*(pv->x)+(pv->y)*(pv->y);
}
+
+LPD3DXVECTOR2 D3DXVec2Subtract(LPD3DXVECTOR2 pOut, CONST LPD3DXVECTOR2 pv1,=
CONST LPD3DXVECTOR2 pv2)
+{
+ pOut->x=3D pv1->x - pv2->x;
+ pOut->y=3D pv1->y - pv2->y;
+ return pOut;
+}
\ No newline at end of file
diff --git a/dlls/d3dx8/tests/math.c b/dlls/d3dx8/tests/math.c
index 7441915..ac8302b 100644
--- a/dlls/d3dx8/tests/math.c
+++ b/dlls/d3dx8/tests/math.c
@@ -46,6 +46,11 @@ static void Vector2Test(void)
long2=3DD3DXVec2LengthSq(&u);
ok((long2 =3D=3D 25.0f), "Expected 25.0f, Got %f\n", long2);
=20
+/*__________________Vect2Subtract____________________________*/
+ D3DXVec2Subtract(&result,&vec1,&vec2);
+ expected.x=3D12.0f; expected.y=3D-9.0f;
+ expect_vec2(result,expected);
+
}
=20
START_TEST(math)
diff --git a/include/d3dx8math.h b/include/d3dx8math.h
index e108e73..d3d3165 100644
--- a/include/d3dx8math.h
+++ b/include/d3dx8math.h
@@ -62,5 +62,6 @@ typedef struct D3DXCOLOR
LPD3DXVECTOR2 D3DXVec2Add(LPD3DXVECTOR2, CONST LPD3DXVECTOR2, CONST LPD3DXV=
ECTOR2);
FLOAT D3DXVec2Length(CONST LPD3DXVECTOR2);
FLOAT D3DXVec2LengthSq(CONST LPD3DXVECTOR2);
+LPD3DXVECTOR2 D3DXVec2Subtract(LPD3DXVECTOR2, CONST LPD3DXVECTOR2, CONST LP=
D3DXVECTOR2);
=20
#endif
--=20
1.5.2.4
--=_6h41ptomvxgk--
More information about the wine-patches
mailing list