10#include <klm/eklm/geometry/LineSegment2D.h>
16 Line2D(point1.x(), point1.y(),
17 point2.x() - point1.x(), point2.y() - point1.y())
35 condition = tWithinRange(t[0]);
36 return selectIntersections(intersection, &condition, 1);
50 condition = tWithinRange(t[0]) && lineSegment.
tWithinRange(t[1]);
51 return selectIntersections(intersection, &condition, 1);
59 double t[2], angles[2];
62 for (i = 0; i < n; i++)
63 condition[i] = tWithinRange(t[i]);
64 return selectIntersections(intersections, condition, n);
72 double t[2], angles[2];
75 for (i = 0; i < n; i++)
77 return selectIntersections(intersections, condition, n);
82 return (t >= 0 && t <= 1);
bool angleWithinRange(double angle) const
Check if angle is within the arc.
int findIntersection(const Line2D &line, HepGeom::Point3D< double > *intersection) const
Find intersection with a line.
~LineSegment2D()
Destructor.
int findIntersection(const Line2D &line, HepGeom::Point3D< double > *intersection) const
Find intersection with a line.
bool tWithinRange(double t) const
Check if t is within the line segment (0 <= t <= 1).
LineSegment2D(const HepGeom::Point3D< double > &point1, const HepGeom::Point3D< double > &point2)
Constructor.
Abstract base class for different kinds of events.