A line segment. More...
#include <>>
Public Member Functions | |
LineSegment (const HomPoint &a, const HomPoint &b) | |
Constructor. | |
LineSegment (const HomPoint &p, const HomVector &v) | |
Constructor. | |
LineSegment (const LineSegment &l) | |
Copy constructor. | |
virtual | ~LineSegment () |
Destructor. | |
float | length () const |
Get the length of the line segment. | |
const HomPoint & | p1 () const |
Get the starting point. | |
const HomPoint & | p2 () const |
Get the endpoint. | |
Protected Member Functions | |
virtual void | register_primitives () |
Here, a derived class should register its primitives (HomPoints and HomVectors) by calling add_primitive for each of those. | |
virtual void | post_transform () |
This method is called after the primitives are transformed. | |
virtual std::ostream & | print (std::ostream &stream) const |
This method is called by the overloaded <<-operator. |
A line segment.
Definition at line 34 of file line_segment.h.
Constructor.
a | the starting point of the line segment | |
b | the endpoint of of the line segment |
Definition at line 37 of file line_segment.cpp.
References register_primitives().
Constructor.
p | the starting point of the line segment | |
v | a vector defining orientation and length of the line segment |
Definition at line 49 of file line_segment.cpp.
References register_primitives().
fawkes::LineSegment::LineSegment | ( | const LineSegment & | l | ) |
Copy constructor.
l | another line segment |
Definition at line 59 of file line_segment.cpp.
References fawkes::Transformable::clear_primitives(), and register_primitives().
fawkes::LineSegment::~LineSegment | ( | ) | [virtual] |
Destructor.
Definition at line 68 of file line_segment.cpp.
float fawkes::LineSegment::length | ( | ) | const |
Get the length of the line segment.
Definition at line 76 of file line_segment.cpp.
References fawkes::HomVector::length().
const HomPoint & fawkes::LineSegment::p1 | ( | ) | const |
Get the starting point.
Definition at line 87 of file line_segment.cpp.
Referenced by fawkes::LineSegmentDrawer::draw().
const HomPoint & fawkes::LineSegment::p2 | ( | ) | const |
Get the endpoint.
Definition at line 96 of file line_segment.cpp.
Referenced by fawkes::LineSegmentDrawer::draw().
void fawkes::LineSegment::post_transform | ( | ) | [protected, virtual] |
This method is called after the primitives are transformed.
Any additional updates that need to be done should be done here.
Implements fawkes::Transformable.
Definition at line 109 of file line_segment.cpp.
std::ostream & fawkes::LineSegment::print | ( | std::ostream & | stream | ) | const [protected, virtual] |
This method is called by the overloaded <<-operator.
stream | the output stream |
Implements fawkes::Printable.
Definition at line 114 of file line_segment.cpp.
void fawkes::LineSegment::register_primitives | ( | ) | [protected, virtual] |
Here, a derived class should register its primitives (HomPoints and HomVectors) by calling add_primitive for each of those.
Implements fawkes::Transformable.
Definition at line 102 of file line_segment.cpp.
References fawkes::Transformable::add_primitive().
Referenced by LineSegment().