Cleaning up maths: part 2.
Renamed vector2.
This commit is contained in:
1 parent
d23444b983
commit
2d0da712e3
55 files changed
+127
-131
No files matched your search
+23
-27
@@ -2,17 +2,13 @@
|
||||
|
||||
class TBall;
|
||||
|
||||
struct vector_type
|
||||
struct vector2
|
||||
{
|
||||
float X;
|
||||
float Y;
|
||||
};
|
||||
|
||||
struct vector_type2 :vector_type
|
||||
{
|
||||
};
|
||||
|
||||
struct vector3 :vector_type
|
||||
struct vector3 :vector2
|
||||
{
|
||||
float Z;
|
||||
};
|
||||
@@ -27,14 +23,14 @@ struct rectangle_type
|
||||
|
||||
struct circle_type
|
||||
{
|
||||
vector_type Center;
|
||||
vector2 Center;
|
||||
float RadiusSq;
|
||||
};
|
||||
|
||||
struct ray_type
|
||||
{
|
||||
vector_type Origin;
|
||||
vector_type Direction;
|
||||
vector2 Origin;
|
||||
vector2 Direction;
|
||||
float MaxDistance;
|
||||
float MinDistance;
|
||||
float TimeNow;
|
||||
@@ -44,12 +40,12 @@ struct ray_type
|
||||
|
||||
struct line_type
|
||||
{
|
||||
vector_type PerpendicularL;
|
||||
vector_type Direction;
|
||||
vector2 PerpendicularL;
|
||||
vector2 Direction;
|
||||
float PreComp1;
|
||||
float OriginX;
|
||||
float OriginY;
|
||||
vector_type RayIntersect;
|
||||
vector2 RayIntersect;
|
||||
};
|
||||
|
||||
struct wall_point_type
|
||||
@@ -63,12 +59,12 @@ struct wall_point_type
|
||||
struct ramp_plane_type
|
||||
{
|
||||
vector3 BallCollisionOffset;
|
||||
vector_type2 V1;
|
||||
vector_type2 V2;
|
||||
vector_type2 V3;
|
||||
vector2 V1;
|
||||
vector2 V2;
|
||||
vector2 V3;
|
||||
float GravityAngle1;
|
||||
float GravityAngle2;
|
||||
vector_type2 FieldForce;
|
||||
vector2 FieldForce;
|
||||
};
|
||||
|
||||
|
||||
@@ -79,23 +75,23 @@ public:
|
||||
static int rectangle_clip(rectangle_type* rect1, rectangle_type* rect2, rectangle_type* dstRect);
|
||||
static int overlapping_box(rectangle_type* rect1, rectangle_type* rect2, rectangle_type* dstRect);
|
||||
static float ray_intersect_circle(ray_type* ray, circle_type* circle);
|
||||
static float normalize_2d(vector_type* vec);
|
||||
static float normalize_2d(vector2* vec);
|
||||
static void line_init(line_type* line, float x0, float y0, float x1, float y1);
|
||||
static float ray_intersect_line(ray_type* ray, line_type* line);
|
||||
static void cross(vector3* vec1, vector3* vec2, vector3* dstVec);
|
||||
static float magnitude(vector3* vec);
|
||||
static void vector_add(vector_type* vec1Dst, vector_type* vec2);
|
||||
static float basic_collision(TBall* ball, vector_type* nextPosition, vector_type* direction, float elasticity,
|
||||
static void vector_add(vector2* vec1Dst, vector2* vec2);
|
||||
static float basic_collision(TBall* ball, vector2* nextPosition, vector2* direction, float elasticity,
|
||||
float smoothness,
|
||||
float threshold, float boost);
|
||||
static float Distance_Squared(vector_type& vec1, vector_type& vec2);
|
||||
static float DotProduct(vector_type* vec1, vector_type* vec2);
|
||||
static void vswap(vector_type* vec1, vector_type* vec2);
|
||||
static float Distance(vector_type* vec1, vector_type* vec2);
|
||||
static float Distance_Squared(vector2& vec1, vector2& vec2);
|
||||
static float DotProduct(vector2* vec1, vector2* vec2);
|
||||
static void vswap(vector2* vec1, vector2* vec2);
|
||||
static float Distance(vector2* vec1, vector2* vec2);
|
||||
static void SinCos(float angle, float* sinOut, float* cosOut);
|
||||
static void RotatePt(vector_type* point, float sin, float cos, vector_type* origin);
|
||||
static void RotatePt(vector2* point, float sin, float cos, vector2* origin);
|
||||
static float distance_to_flipper(ray_type* ray1, ray_type* ray2);
|
||||
static void RotateVector(vector_type* vec, float angle);
|
||||
static void find_closest_edge(ramp_plane_type* plane, int planeCount, wall_point_type* wall, vector_type** lineEnd,
|
||||
vector_type** lineStart);
|
||||
static void RotateVector(vector2* vec, float angle);
|
||||
static void find_closest_edge(ramp_plane_type* plane, int planeCount, wall_point_type* wall, vector2** lineEnd,
|
||||
vector2** lineStart);
|
||||
};
|
||||
Reference in new issue
Block a user