#include <SimWall2D.h>
Public Member Functions | |
Point2 | a () const |
Point2 | b () const |
bool | equals (const SimWall2D &other, double tol=1e-9) const |
bool | intersects (const SimWall2D &wall, Point2 &pt) const |
bool | intersects (const SimWall2D &wall, Point2 *pt=nullptr) const |
double | length () const |
Point2 | midpoint () const |
Point2 | norm () const |
void | print (const std::string &s="") const |
Rot2 | reflection (const Point2 &init, const Point2 &intersection) const |
SimWall2D | scale (double s) const |
SimWall2D () | |
SimWall2D (const Point2 &a, const Point2 &b) | |
SimWall2D (double ax, double ay, double bx, double by) | |
Protected Attributes | |
Point2 | a_ |
Point2 | b_ |
General Wall class for walls defined around unordered endpoints Primarily to handle ray intersections
Definition at line 19 of file SimWall2D.h.
|
inline |
default constructor makes canonical wall
Definition at line 25 of file SimWall2D.h.
constructors using endpoints
Definition at line 28 of file SimWall2D.h.
|
inline |
Definition at line 31 of file SimWall2D.h.
|
inline |
access
Definition at line 39 of file SimWall2D.h.
|
inline |
Definition at line 40 of file SimWall2D.h.
Definition at line 22 of file SimWall2D.cpp.
An overload of intersects that takes an l-value reference to a Point2 instead of a pointer.
Definition at line 60 of file SimWall2D.h.
intersection check between two segments returns true if they intersect, with the intersection point in the optional second argument
Definition at line 28 of file SimWall2D.cpp.
|
inline |
geometry
Definition at line 46 of file SimWall2D.h.
Point2 gtsam::SimWall2D::midpoint | ( | ) | const |
Definition at line 103 of file SimWall2D.cpp.
Point2 gtsam::SimWall2D::norm | ( | ) | const |
norm is a 2D point representing the norm of the wall
Definition at line 109 of file SimWall2D.cpp.
void gtsam::SimWall2D::print | ( | const std::string & | s = "" | ) | const |
required by testable
Definition at line 15 of file SimWall2D.cpp.
reflection around a point of impact with a wall from a starting (init) point at a given impact point (intersection), returning the angle away from the impact
Definition at line 115 of file SimWall2D.cpp.
|
inline |
scales a wall to produce a new wall
Definition at line 43 of file SimWall2D.h.
|
protected |
Definition at line 21 of file SimWall2D.h.
|
protected |
Definition at line 21 of file SimWall2D.h.