Add initial prototype.
This commit is contained in:
78
3-mid/physics/implement/c_math/source/c/c_math.h
Normal file
78
3-mid/physics/implement/c_math/source/c/c_math.h
Normal file
@@ -0,0 +1,78 @@
|
||||
#ifndef C_MATH_H
|
||||
#define C_MATH_H
|
||||
|
||||
|
||||
//
|
||||
/// Provides a simple C++ interface to math structures used by the simple Box2D and Bullet3D C interfaces.
|
||||
//
|
||||
|
||||
extern "C"
|
||||
{
|
||||
|
||||
typedef float Real;
|
||||
|
||||
|
||||
|
||||
struct Vector_2
|
||||
{
|
||||
Vector_2 () {};
|
||||
Vector_2 (Real x, Real y) : x (x), y (y) {};
|
||||
|
||||
|
||||
Real x, y;
|
||||
};
|
||||
|
||||
|
||||
struct Vector_3
|
||||
{
|
||||
Vector_3 () {};
|
||||
Vector_3 (Real x, Real y, Real z) : x (x), y (y), z (z) {};
|
||||
|
||||
|
||||
Real x, y, z;
|
||||
};
|
||||
|
||||
|
||||
typedef int Index;
|
||||
|
||||
struct Triangle
|
||||
{
|
||||
Triangle () {};
|
||||
Triangle (Real a, Real b, Real c) : a (a), b (b), c (c) {};
|
||||
|
||||
|
||||
Index a, b, c;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
struct Matrix_3x3
|
||||
{
|
||||
Matrix_3x3 () {};
|
||||
Matrix_3x3 (Real* First);
|
||||
Matrix_3x3 (Real m00, Real m01, Real m02,
|
||||
Real m10, Real m11, Real m12,
|
||||
Real m20, Real m21, Real m22);
|
||||
|
||||
Real m00, m01, m02,
|
||||
m10, m11, m12,
|
||||
m20, m21, m22;
|
||||
};
|
||||
|
||||
|
||||
|
||||
struct Matrix_4x4
|
||||
{
|
||||
Matrix_4x4 () {};
|
||||
Matrix_4x4 (Real* First);
|
||||
|
||||
Real m00, m01, m02, m03,
|
||||
m10, m11, m12, m13,
|
||||
m20, m21, m22, m23,
|
||||
m30, m31, m32, m33;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user