OGS
|
Definition of analytical geometry functions.
Definition in file AnalyticalGeometry.h.
Go to the source code of this file.
Namespaces | |
namespace | GeoLib |
Enumerations | |
enum | GeoLib::Orientation { GeoLib::CW = -1 , GeoLib::COLLINEAR = 0 , GeoLib::CCW = 1 } |
Functions | |
Orientation | GeoLib::getOrientation (MathLib::Point3d const &p0, MathLib::Point3d const &p1, MathLib::Point3d const &p2) |
Orientation | GeoLib::getOrientationFast (MathLib::Point3d const &p0, MathLib::Point3d const &p1, MathLib::Point3d const &p2) |
template<typename InputIterator > | |
std::pair< Eigen::Vector3d, double > | GeoLib::getNewellPlane (InputIterator pnts_begin, InputIterator pnts_end) |
template<class T_POINT > | |
std::pair< Eigen::Vector3d, double > | GeoLib::getNewellPlane (const std::vector< T_POINT * > &pnts) |
template<class T_POINT > | |
std::pair< Eigen::Vector3d, double > | GeoLib::getNewellPlane (const std::vector< T_POINT > &pnts) |
Eigen::Matrix3d | GeoLib::compute2DRotationMatrixToX (Eigen::Vector3d const &v) |
Eigen::Matrix3d | GeoLib::compute3DRotationMatrixToX (Eigen::Vector3d const &v) |
Eigen::Matrix3d | GeoLib::computeRotationMatrixToXY (Eigen::Vector3d const &n) |
template<typename InputIterator > | |
void | GeoLib::rotatePoints (Eigen::Matrix3d const &rot_mat, InputIterator pnts_begin, InputIterator pnts_end) |
template<typename P > | |
void | GeoLib::rotatePoints (Eigen::Matrix3d const &rot_mat, std::vector< P * > const &pnts) |
Eigen::Matrix3d | GeoLib::rotatePointsToXY (std::vector< Point * > &pnts) |
template<typename InputIterator1 , typename InputIterator2 > | |
Eigen::Matrix3d | GeoLib::rotatePointsToXY (InputIterator1 p_pnts_begin, InputIterator1 p_pnts_end, InputIterator2 r_pnts_begin, InputIterator2 r_pnts_end) |
bool | GeoLib::lineSegmentsIntersect (const GeoLib::Polyline *ply, GeoLib::Polyline::SegmentIterator &seg_it0, GeoLib::Polyline::SegmentIterator &seg_it1, GeoLib::Point &intersection_pnt) |
bool | GeoLib::parallel (Eigen::Vector3d v, Eigen::Vector3d w) |
bool | GeoLib::lineSegmentIntersect (GeoLib::LineSegment const &s0, GeoLib::LineSegment const &s1, GeoLib::Point &s) |
std::vector< MathLib::Point3d > | GeoLib::lineSegmentIntersect2d (GeoLib::LineSegment const &ab, GeoLib::LineSegment const &cd) |
std::unique_ptr< GeoLib::Point > | GeoLib::triangleLineIntersection (MathLib::Point3d const &a, MathLib::Point3d const &b, MathLib::Point3d const &c, MathLib::Point3d const &p, MathLib::Point3d const &q) |
void | GeoLib::computeAndInsertAllIntersectionPoints (PointVec &pnt_vec, std::vector< Polyline * > &plys) |
std::tuple< std::vector< GeoLib::Point * >, Eigen::Vector3d > | GeoLib::rotatePolygonPointsToXY (GeoLib::Polygon const &polygon_in) |
void | GeoLib::sortSegments (MathLib::Point3d const &seg_beg_pnt, std::vector< LineSegment > &sub_segments) |