#include <Polygon3d.hpp>
Public Member Functions | |
void | addHole (const Point3dVector &hole) |
void | addPoint (const Point3d &point) |
Point3d | centroid () const |
Point3dVector | getEdge (size_t i) const |
Point3dVectorVector | getInnerPaths () const |
Point3dVector | getOuterPath () const |
size_t | getSize () const |
double | grossArea () const |
bool | inside (const Point3d &point, double tol=0.01) const |
bool | isClockwise () const |
double | netArea () const |
Vector3d | newellVector () const |
Polygon3d & | operator= (const Polygon3d &)=default |
Polygon3d & | operator= (Polygon3d &&) noexcept=default |
Vector3d | outwardNormal () const |
std::vector< Point3dVector > | overlap (const Point3dVector &line) const |
double | perimeter () const |
bool | pointInPolygon (const Point3d &point, double tol=0.01) const |
Polygon3d ()=default | |
Polygon3d (const Point3dVector &outerPath) | |
Polygon3d (const Point3dVector &outerPath, const Point3dVectorVector &innerPaths) | |
Polygon3d (const Polygon3d &other)=default | |
Polygon3d (Polygon3d &&other) noexcept=default | |
void | setOuterPath (const Point3dVector &outerPath) |
bool | within (const Point3d &point, double tol=0.01) const |
|
default |
openstudio::Polygon3d::Polygon3d | ( | const Point3dVector & | outerPath | ) |
openstudio::Polygon3d::Polygon3d | ( | const Point3dVector & | outerPath, |
const Point3dVectorVector & | innerPaths | ||
) |
|
default |
|
defaultnoexcept |
void openstudio::Polygon3d::addHole | ( | const Point3dVector & | hole | ) |
void openstudio::Polygon3d::addPoint | ( | const Point3d & | point | ) |
Point3d openstudio::Polygon3d::centroid | ( | ) | const |
Point3dVector openstudio::Polygon3d::getEdge | ( | size_t | i | ) | const |
Point3dVectorVector openstudio::Polygon3d::getInnerPaths | ( | ) | const |
Point3dVector openstudio::Polygon3d::getOuterPath | ( | ) | const |
size_t openstudio::Polygon3d::getSize | ( | ) | const |
double openstudio::Polygon3d::grossArea | ( | ) | const |
bool openstudio::Polygon3d::inside | ( | const Point3d & | point, |
double | tol = 0.01 |
||
) | const |
bool openstudio::Polygon3d::isClockwise | ( | ) | const |
double openstudio::Polygon3d::netArea | ( | ) | const |
Vector3d openstudio::Polygon3d::newellVector | ( | ) | const |
Vector3d openstudio::Polygon3d::outwardNormal | ( | ) | const |
std::vector<Point3dVector> openstudio::Polygon3d::overlap | ( | const Point3dVector & | line | ) | const |
double openstudio::Polygon3d::perimeter | ( | ) | const |
bool openstudio::Polygon3d::pointInPolygon | ( | const Point3d & | point, |
double | tol = 0.01 |
||
) | const |
void openstudio::Polygon3d::setOuterPath | ( | const Point3dVector & | outerPath | ) |
bool openstudio::Polygon3d::within | ( | const Point3d & | point, |
double | tol = 0.01 |
||
) | const |