Inkscape
Vector Graphics Editor
|
Straight ray from a specific point to infinity. More...
#include <ray.h>
Public Member Functions | |
Ray () | |
Ray (Point const &origin, Coord angle) | |
Ray (Point const &A, Point const &B) | |
Point | origin () const |
Point | vector () const |
Point | versor () const |
void | setOrigin (Point const &o) |
void | setVector (Point const &v) |
Coord | angle () const |
void | setAngle (Coord a) |
void | setPoints (Point const &a, Point const &b) |
bool | isDegenerate () const |
Point | pointAt (Coord t) const |
Coord | valueAt (Coord t, Dim2 d) const |
std::vector< Coord > | roots (Coord v, Dim2 d) const |
Coord | nearestTime (Point const &point) const |
Ray | reverse () const |
Curve * | portion (Coord f, Coord t) const |
LineSegment | segment (Coord f, Coord t) const |
Ray | transformed (Affine const &m) const |
Private Attributes | |
Point | _origin |
Point | _vector |
Straight ray from a specific point to infinity.
Rays are "half-lines" - they begin at some specific point and extend in a straight line to infinity.
|
inline |
Definition at line 59 of file ray.h.
Referenced by transformed().
Definition at line 65 of file ray.h.
References setPoints().
|
inline |
Definition at line 73 of file ray.h.
References _vector, Geom::X, and Geom::Y.
Referenced by Inkscape::LivePathEffect::LPERoughen::addNodesAndJitter(), Inkscape::LivePathEffect::LPEInterpolate::calculate_trajectory(), Inkscape::LivePathEffect::LPEMeasureSegments::createLine(), Inkscape::LivePathEffect::LPEMeasureSegments::doBeforeEffect(), Inkscape::LivePathEffect::LPETransform2Pts::doBeforeEffect(), Inkscape::LivePathEffect::LPERoughen::doEffect(), Inkscape::LivePathEffect::LPEFilletChamfer::doEffect_path(), Inkscape::LivePathEffect::LPETransform2Pts::doEffect_pwd2(), Inkscape::LivePathEffect::LPETransform2Pts::doOnApply(), Inkscape::LivePathEffect::LPEShowHandles::drawHandleLine(), Inkscape::LivePathEffect::LPESimplify::drawHandleLine(), Inkscape::LivePathEffect::LPESimplify::generateHelperPathAndSmooth(), GrDragger::highlightNode(), Inkscape::LivePathEffect::LPERoughen::jitter(), Inkscape::LivePathEffect::FilletChamferKnotHolderEntity::knot_get(), Inkscape::LivePathEffect::LPERoughen::randomize(), Ray(), Inkscape::LivePathEffect::LPETransform2Pts::reset(), Inkscape::LivePathEffect::LPESlice::splititem(), Inkscape::UI::Tools::MeasureTool::toGuides(), and Inkscape::UI::Tools::MeasureTool::toMarkDimension().
|
inline |
Definition at line 83 of file ray.h.
References _vector, Geom::X, and Geom::Y.
Referenced by nearestTime(), and wrap_ray().
Definition at line 102 of file ray.h.
References _origin, _vector, Geom::dot(), and isDegenerate().
Referenced by Geom::distance(), and wrap_ray().
|
inline |
Definition at line 68 of file ray.h.
References _origin.
Referenced by Geom::are_same(), draw_ray(), Geom::intersection(), Geom::detail::intersection_impl(), Geom::detail::intersection_impl(), and Geom::make_angle_bisector_ray().
Definition at line 86 of file ray.h.
References _origin, and _vector.
Referenced by Geom::distance(), draw_ray(), portion(), segment(), SPMeshNodeArray::side_arc(), and wrap_ray().
|
inline |
Definition at line 108 of file ray.h.
References _origin, _vector, result, and setOrigin().
Referenced by Geom::make_angle_bisector_ray(), and wrap_ray().
|
inline |
|
inline |
|
inline |
Definition at line 71 of file ray.h.
References _origin.
Referenced by Geom::Line::ray(), and reverse().
Definition at line 75 of file ray.h.
References _origin, _vector, Geom::are_near(), and Geom::Point::normalize().
Referenced by Inkscape::LivePathEffect::LPERoughen::addNodesAndJitter(), Inkscape::LivePathEffect::LPEFilletChamfer::doEffect_path(), GrDragger::highlightNode(), Inkscape::LivePathEffect::LPERoughen::jitter(), Inkscape::LivePathEffect::FilletChamferKnotHolderEntity::knot_get(), NodeSatellite::lenToRad(), Ray(), Inkscape::UI::Tools::MeasureTool::toGuides(), and wrap_ray().
|
inline |
|
inline |
Definition at line 69 of file ray.h.
References _vector.
Referenced by Geom::angle_between(), Geom::are_same(), Geom::intersection(), Geom::detail::intersection_impl(), Geom::detail::intersection_impl(), and Geom::make_angle_bisector_ray().
|
inline |
Definition at line 70 of file ray.h.
References _vector, and Geom::Point::normalized().
|
private |
Definition at line 55 of file ray.h.
Referenced by nearestTime(), origin(), pointAt(), reverse(), roots(), setOrigin(), setPoints(), transformed(), and valueAt().
|
private |
Definition at line 56 of file ray.h.
Referenced by angle(), isDegenerate(), nearestTime(), pointAt(), Ray(), reverse(), roots(), setAngle(), setPoints(), setVector(), transformed(), valueAt(), vector(), and versor().