Ipelib
|
#include <ipegeo.h>
Public Member Functions | |
Line () | |
Line (const Vector &p, const Vector &dir) | |
double | side (const Vector &p) const |
Vector | normal () const |
double | distance (const Vector &v) const |
bool | intersects (const Line &line, Vector &pt) |
Vector | project (const Vector &v) const |
Vector | dir () const |
Static Public Member Functions | |
static Line | through (const Vector &p, const Vector &q) |
Public Attributes | |
Vector | iP |
A directed line.
|
inlineexplicit |
Create default line (x-axis).
Referenced by through().
Construct a line from p with direction dir.
Asserts unit length of dir.
References dir(), iP, and ipe::Vector::sqLen().
double Line::side | ( | const Vector & | p | ) | const |
Result is > 0, = 0, < 0 if point lies to the left, on, to the right.
Referenced by ipe::Bezier::intersect().
|
inline |
Return a normal vector pointing to the left of the directed line.
References ipe::Vector::x, and ipe::Vector::y.
Referenced by side().
double Line::distance | ( | const Vector & | v | ) | const |
Returns distance between line and v.
References iP, and ipe::Vector::len().
Referenced by ipe::Bezier::straight().
Does this line intersect line? If so, computes intersection point.
References iP.
Referenced by ipe::Snap::snap().
Orthogonally project point v onto the line.
References iP.
Referenced by ipe::Snap::setEdge(), and ipe::Snap::snap().
|
inline |
Return direction of line.
Referenced by ipe::Arc::intersect(), Line(), and ipe::Snap::setEdge().
Vector ipe::Line::iP |
Point on the line.
Referenced by distance(), ipe::Arc::intersect(), intersects(), Line(), project(), and side().