#include <math2d.h>
Static Public Methods | |
int | WhichSide2D (const csVector2 &v, const csVector2 &s1, const csVector2 &s2) |
Calculates which side of a line a given point is on. More... | |
int | WhichSide2D (const csVector2 &v, const csSegment2 &s) |
Calculates which side of a line a given point is on. More... | |
int | InPoly2D (const csVector2 &v, csVector2 *P, int n, csBox2 *bounding_box) |
Calculates whether a vector lies inside a given 2D polygon. More... | |
float | Area2 (const csVector2 &a, const csVector2 &b, const csVector2 &c) |
Calculates 2 x the area of a given triangle. More... | |
float | Right (const csVector2 &a, const csVector2 &b, const csVector2 &c) |
Calculates whether a point lies to the right of a given line. More... | |
float | Left (const csVector2 &a, const csVector2 &b, const csVector2 &c) |
Calculates whether a point lies to the left of a given line. More... | |
bool | Visible (const csVector2 &p, const csPlane2 &pl) |
Check if the plane is visible from the given point. More... | |
bool | PlanesEqual (const csPlane2 &p1, const csPlane2 &p2) |
Check if two planes are almost equal. More... | |
bool | PlanesClose (const csPlane2 &p1, const csPlane2 &p2) |
Check if two planes are close together. More... |
This is a static class and contains only static member functions.
|
Calculates 2 x the area of a given triangle. Returns twice the signed area of the triangle determined by a,b,c, positive if a,b,c are oriented ccw, and negative if cw. |
|
Calculates whether a vector lies inside a given 2D polygon. Return CS_POLY_IN, CS_POLY_OUT, or CS_POLY_ON for this vector with respect to the given polygon. The polygon is given as an array of 2D vectors with a bounding box. WARNING: does no safety checking for P or bounding_box. |
|
Calculates whether a point lies to the left of a given line. Returns true iff c is strictly to the left of the directed line through a to b. |
|
Check if two planes are close together. Two planes are close if there are almost equal OR if the normalized versions are almost equal. |
|
Check if two planes are almost equal. The function returns true iff each component of the plane equation for one plane is within .001 of the corresponding component of the other plane. |
|
Calculates whether a point lies to the right of a given line. Returns true iff c is strictly to the right of the directed line through a to b. |
|
Check if the plane is visible from the given point. This function does a back-face culling test to see whether the front face of plane pl is visible from point p. |
|
Calculates which side of a line a given point is on. Returns -1 if point v is left of line segment 'seg' 1 if point v is right of segment 'seg' or 0 if point v lies on segment 'seg'. |
|
Calculates which side of a line a given point is on. Returns -1 if point v is left of line segment 's1-s2', 1 if point v is right of segment 's1-s2' or 0 if point v lies on segment 's1-s2'. |