|
| | CircularArc () |
| |
| | CircularArc (const CoordinateSequence &, std::size_t pos) |
| |
|
| CircularArc (const CoordinateSequence &, std::size_t pos, const CoordinateXY ¢er, double radius, int orientation) |
| |
| | CircularArc (std::unique_ptr< CoordinateSequence >, std::size_t pos) |
| |
|
| CircularArc (std::unique_ptr< CoordinateSequence >, std::size_t pos, const CoordinateXY ¢er, double radius, int orientation) |
| |
|
| CircularArc (const CircularArc &other) |
| |
|
| CircularArc (CircularArc &&) noexcept |
| |
|
CircularArc & | operator= (const CircularArc &other) |
| |
|
CircularArc & | operator= (CircularArc &&) noexcept |
| |
|
double | getAngle () const |
| | Return the inner angle of the sector associated with this arc.
|
| |
|
double | getArea () const |
| | Return the area enclosed by the arc p0-p1-p2 and the line segment p2-p0.
|
| |
|
const CoordinateXY & | getCenter () const |
| | Return the center point of the circle associated with this arc.
|
| |
|
const CoordinateSequence * | getCoordinateSequence () const |
| |
|
std::size_t | getCoordinatePosition () const |
| |
|
double | getLength () const |
| | Return the length of the arc.
|
| |
| int | getOrientation () const |
| |
|
double | getRadius () const |
| | Return the radius of the circle associated with this arc.
|
| |
|
double | getSagitta () const |
| | Return the distance from the centerpoint of the arc to the line segment formed by the end points of the arc.
|
| |
|
bool | isCCW () const |
| |
|
bool | isCircle () const |
| | Return whether this arc forms a complete circle.
|
| |
|
bool | isLinear () const |
| | Returns whether this arc forms a straight line (p0, p1, and p2 are collinear)
|
| |
|
double | theta0 () const |
| | Return the angle of p0.
|
| |
|
double | theta1 () const |
| | Return the angle of p1.
|
| |
|
double | theta2 () const |
| | Return the angle of p2.
|
| |
|
bool | containsAngle (double theta) const |
| | Check to see if a given angle lies on this arc.
|
| |
| bool | containsPoint (const CoordinateXY &q) const |
| |
| bool | containsPointOnCircle (const CoordinateXY &q) const |
| |
| bool | isUpwardAtPoint (const CoordinateXY &q) const |
| |
|
CircularArc | reverse () const |
| |
|
bool | equals (const CircularArc &other, double tol) const |
| |
|
Iterator | begin () const |
| |
|
Iterator | end () const |
| |
|
template<typename T = CoordinateXY> |
| const T & | p0 () const |
| |
|
template<typename T = CoordinateXY> |
| const T & | p1 () const |
| |
|
template<typename T = CoordinateXY> |
| const T & | p2 () const |
| |
|
std::string | toString () const |
| |
|
template<typename F > |
| auto | applyAt (std::size_t i, F &&f) const |
| |
|
| template<typename CoordType > |
| static CircularArc | create (const CoordType &p0, const CoordType &p1, const CoordType &p2) |
| |
|
static CircularArc | create (const CoordinateXY &p0, const CoordinateXY &p2, const CoordinateXY ¢er, double radius, int orientation) |
| |
|
static CircularArc | create (const Coordinate &p0, const Coordinate &p2, const CoordinateXY ¢er, double radius, int orientation) |
| |
|
static CircularArc | create (const CoordinateXYM &p0, const CoordinateXYM &p2, const CoordinateXY ¢er, double radius, int orientation) |
| |
|
static CircularArc | create (const CoordinateXYZM &p0, const CoordinateXYZM &p2, const CoordinateXY ¢er, double radius, int orientation) |
| |
A CircularArc is a reference to three points that define a circular arc. It provides for the lazy calculation of various arc properties such as the center, radius, and orientation