23 #ifndef TYPOINT_PARCOURS_H
24 #define TYPOINT_PARCOURS_H
26 #define SEUIL_DISTANCE_POINTS_CONFONDUS \
28 #define SEUIL_DETERMNANT_COLINEAIRE \
77 bool bP3OrP4MustNotCoincideWithP =
false);
double z
z coordinate of the point
bool isInfra
Flag set to indicate if the point is an infrastructure.
static bool Confondus(TYPointParcours *P1, TYPointParcours *P2)
static bool IntersectionSegments(TYPointParcours &P1, TYPointParcours &P2, TYPointParcours &P3, TYPointParcours &P4, TYPointParcours &P, bool bP3OrP4MustNotCoincideWithP=false)
Return true if [P1P2] intersects [P3P4] if P1 or P2 coincide with the intersection point P,...
static double ZCross(TYPointParcours SR, TYPointParcours SP)
Return cross product applied to SR and SP points.
double y
y coordinate of the point
bool operator==(TYPointParcours &p)
Return true if this point and p are on same location.
static double Scalaire(TYPointParcours &P1, TYPointParcours &P2, TYPointParcours &P3, TYPointParcours &P4)
Compute the scalar product of the vector P1P2 and P3P4.
double x
x coordinate of the point
double normeCarree()
Return x^2+y^2.
static const double _dSeuilDistanceCarre
bool isEcran
Flag set to indicate if the point is a screen.
static bool IntersectionDroites(TYPointParcours &P1, TYPointParcours &P2, TYPointParcours &P3, TYPointParcours &P4, TYPointParcours &P)
static double AbscisseCurviligneCarreSurSR(TYPointParcours &P, TYPointParcours &S, TYPointParcours &R)
Return the square of the curvilinear abscissa of point P on [SR].
static TYPointParcours vecteur2D(TYPointParcours &P1, TYPointParcours &P2)
Compute the 2 dimensional vector P1P2 in the XY plane.