An N-sided polygon. More...
#include <Polygon.hpp>
Public Member Functions | |
void | add (const t_vertex &vertex) |
void | addVertices (const t_vertex *vertices, uint04 size) |
template<class t_new_type , class t_new_vertex_type = Vertex<2, t_new_type>> | |
Polygon< t_new_type, t_new_vertex_type > | as () const |
decltype(auto) | begin () |
decltype(auto) | begin () const |
decltype(auto) | begin (uint04 index) |
decltype(auto) | begin (uint04 index) const |
Bounds< 2, t_type, t_vertex > | bounds () const |
void | clear () |
Polygon | clip (const Bounds< t_vertex::NumberOfDimensions(), t_type > &bounds) const |
template<class t_precision > | |
IntersectionTypes | contains (const Bounds< 2, t_type, t_vertex > &o_bounds) const |
template<class t_precision > | |
IntersectionTypes | contains (const LineSegment< 2, t_type, t_vertex > &line) const |
template<class t_precision , class t_other_vertex > | |
IntersectionTypes | contains (const Polygon< t_type, t_other_vertex > &poly) const |
template<class t_precision > | |
IntersectionTypes | contains (const Triangle< 2, t_type, t_vertex > &tri) const |
bool | contains (const Vertex< 2, t_type > &vector) const |
LineSegment< 2, t_type, t_vertex > | edge (uint04 index) const |
uint04 | edgeCount () const |
decltype(auto) | end () |
decltype(auto) | end () const |
void | flip () |
bool | hasClockwiseWinding () const |
void | insert (uint04 index, const t_vertex &vertex) |
bool | isConvex () const |
bool | isEquivalent (const Polygon &polygon, fltp08 epsilon) |
bool | operator!= (const Polygon &polygon) const |
Polygon & | operator= (const Polygon &poly) |
Polygon & | operator= (Polygon &&poly) |
bool | operator== (const Polygon &polygon) const |
Polygon | opheimSimplification (t_type min_tol, t_type max_tol) const |
t_type | perimeter () const |
Plane< 3, t_type > | plane () const |
Polygon () | |
Polygon (Buffer< t_vertex > &vertices) | |
Polygon (const Buffer< Vertex< 3, fltp08 > > &points) | |
Polygon (const Polygon &polygon) | |
Polygon (Polygon &&polygon) noexcept | |
Polygon (uint04 allocated_size) | |
void | remove (uint04 index) |
void | replace (uint04 index, const t_vertex &vector) |
void | setPlane (const Plane< 3, t_type > &plane) |
void | setVertices (const Buffer< t_vertex > &vertices) |
void | simplify () |
bool | validate () const |
const t_vertex & | vertex (uint04 index) const |
uint04 | vertexCount () const |
const Buffer< t_vertex > & | vertices () const |
An N-sided polygon.
Class: Polygon
Author: Tyler Parke
Date: 2017-11-19
|
inline |
|
inline |
|
inlinenoexcept |
|
inlineexplicit |
|
inlineexplicit |
|
inlineexplicit |
|
inline |
Adds vertex.
Author: Tyler Parke
Date: 2017-11-19
Parameters: vertex - The vertex to add.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Clears this object to its blank/initial state.
Author: Tyler Parke
Date: 2017-11-19
|
inline |
|
inline |
Determines if this collection contains a given object.
Author: Tyler Parke
Date: 2017-11-19
Parameters: bounds - The const Bounds<2,t_type,t_vertex>& to test for containment.
|
inline |
|
inline |
|
inline |
Determines if this collection contains a given object.
Author: Tyler Parke
Date: 2017-11-19
Parameters: tri - The const Triangle<2,t_type,t_vertex>& to test for containment.
|
inline |
Query if this object contains the given vector.
Author: Tyler Parke
Date: 2017-11-19
Parameters: vector - The const t_vertex& to test for containment.
|
inline |
Edges the given index.
Author: Tyler Parke
Date: 2017-11-19
Parameters: index - Zero-based index of the.
|
inline |
Edge count.
Author: Tyler Parke
Date: 2017-11-19
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Inserts.
Author: Tyler Parke
Date: 2017-11-19
Parameters: index - Zero-based index of the. vertex - The vertex.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Equality operator.
Author: Tyler Parke
Date: 2017-11-19
Parameters: polygon - The polygon.
|
inline |
|
inline |
Gets the perimeter.
Author: Tyler Parke
Date: 2017-11-19
|
inline |
|
inline |
Removes the given index.
Author: Tyler Parke
Date: 2017-11-19
Parameters: index - The index to removeRows.
|
inline |
Replaces.
Author: Tyler Parke
Date: 2017-11-19
Parameters: index - Zero-based index of the. vector - The vector.
|
inline |
|
inline |
Sets the vertices.
Author: Tyler Parke
Date: 2017-11-19
Parameters: vertices - The vertices.
|
inline |
Removes all duplicate adjacent vertices.
Author: Tyler Parke
Date: 2017-05-16
Parameters: index - The index to removeRows.
|
inline |
|
inline |
Vertices the given index.
Author: Tyler Parke
Date: 2017-11-19
Parameters: index - Zero-based index of the.
|
inline |
|
inline |
Gets the vertices.
Author: Tyler Parke
Date: 2017-11-19