kernel32: Use FIELD_OFFSET instead of pointer cast.
[wine/wine64.git] / include / d3dx8math.h
blob71de0142fae7acc3d5dd43915899416cdfc91b00
1 /*
2 * Copyright (C) 2007 David Adam
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #include <d3dx8.h>
21 #ifndef __D3DX8MATH_H__
22 #define __D3DX8MATH_H__
24 #include <math.h>
26 #define D3DX_PI ((FLOAT)3.141592654)
27 #define D3DX_1BYPI ((FLOAT)0.318309886)
29 #define D3DXToRadian(degree) ((degree) * (D3DX_PI / 180.0f))
30 #define D3DXToDegree(radian) ((radian) * (180.0f / D3DX_PI))
32 typedef struct D3DXVECTOR2
34 FLOAT x, y;
35 } D3DXVECTOR2, *LPD3DXVECTOR2;
37 typedef struct _D3DVECTOR D3DXVECTOR3, *LPD3DXVECTOR3;
39 typedef struct D3DXVECTOR4
41 FLOAT x, y, z, w;
42 } D3DXVECTOR4, *LPD3DXVECTOR4;
44 typedef struct _D3DMATRIX D3DXMATRIX, *LPD3DXMATRIX;
46 typedef struct D3DXQUATERNION
48 FLOAT x, y, z, w;
49 } D3DXQUATERNION, *LPD3DXQUATERNION;
51 typedef struct D3DXPLANE
53 FLOAT a, b, c, d;
54 } D3DXPLANE, *LPD3DXPLANE;
56 typedef struct D3DXCOLOR
58 FLOAT r, g, b, a;
59 } D3DXCOLOR, *LPD3DXCOLOR;
61 #endif /* __D3DX8MATH_H__ */