Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CPolylines Class Reference

#include <CPolylines.hpp>

Static Public Member Functions

static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createArc (double radius, double angleInitial, double angleEnd, double angleIncrement, bool withLastAngle)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createArcWithNumberPoints (double radius, double angleInitial, double angleEnd, uint64_t numPointsInArc)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createCircle (double radius, uint64_t numPoints)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createEllipse (double rx, double ry, uint64_t numPoints)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createEllipseArc (double rx, double ry, double angleInitial, double angleEnd, double angleIncrement, bool withLastAngle)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createEllipseArcWithNumberPointsInArc (double rx, double ry, double angleInitial, double angleEnd, uint64_t numPointsInArc, bool withLastAngle)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point3d > > createPolyline2DTo3D (const std::vector< iv::math::geometry::Point2d > &polyline, double z)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createPolyline3DTo2DNoX (const std::vector< iv::math::geometry::Point3d > &polyline)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createPolyline3DTo2DNoZ (const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > &polyline)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createPolygonRegular (double radius, uint64_t numEdges)
 
static std::vector< iv::math::geometry::Point3dcreateRectangle3DCentredInOrigin (double width, double height, double z)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > createRectangleCentredInOrigin (double width, double height)
 
static void centerGravity2D (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &polyline, double *xCenterGravity, double *yCenterGravity)
 
static void move2D (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &polyline, double dx, double dy)
 
static void move3D (std::vector< iv::math::geometry::Point3d > &polyline, double dx, double dy, double dz)
 
static void rotate2D (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &polyline, double xc, double yc, double Ux, double Uy)
 
static void scale2D (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &polyline, double fx, double fy)
 
static double areaPolyline2D (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &polyline, double precision)
 
static double areaPolyline2D (const std::vector< iv::math::geometry::Point2d > &polyline, double precision)
 
static void calculateLimits2D (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &polyline, iv::types::coord *xMin, iv::types::coord *yMin, iv::types::coord *xMax, iv::types::coord *yMax)
 
static void calculateLimits2D (const std::vector< iv::math::geometry::Point2d > &polyline, iv::types::coord *xMin, iv::types::coord *yMin, iv::types::coord *xMax, iv::types::coord *yMax)
 
static void calculateLimits3D (const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > &polyline, iv::types::coord *xMin, iv::types::coord *yMin, iv::types::coord *zMin, iv::types::coord *xMax, iv::types::coord *yMax, iv::types::coord *zMax)
 
static void closePolyline2d (std::vector< iv::math::geometry::Point2d > &polylineOut)
 
static void closePolyline3d (const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > &polyline)
 
static std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * getPolylinesAreasOneSideIntersectionAbove (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &intersections2D, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points2D)
 
static std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * getPolylinesAreasOneSideIntersectionUnder (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &intersections2D, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points2D)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > getSubdivisionsCurve (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &separations, uint64_t numDivisions)
 
static bool intersectionsLinePlane (double x1, double y1, double z1, double x2, double y2, double z2, double A, double B, double C, double D, double *x, double *y, double *z, double precision)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > intersectionsLinePolyline (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &polyline, double x1Line, double y1Line, double x2Line, double y2Line, double precision)
 
static std::vector< iv::math::geometry::Point2dintersectionsLinePolyline (const std::vector< iv::math::geometry::Point2d > &polyline, double x1Line, double y1Line, double x2Line, double y2Line, double precision)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > intersectionsPolyline2DPlaneYZ (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &polyline, double x, double A, double B, double C, double D, double precision)
 
static std::vector< iv::math::geometry::Point3dintersectionsPolyline3DPlane (const std::vector< iv::math::geometry::Point3d > &polyline, double A, double B, double C, double D, double precision)
 
static double lengthPolyline2D (const std::vector< iv::math::geometry::Point2d > &polyline)
 
static void deletePointsRepeated2D (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points, double precision)
 
static void deletePointsRepeated3D (std::vector< iv::math::geometry::Point3d > &points, double precision)
 
static bool isClosedPolyline3d (const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > &polyline, double precision)
 
static bool isInnerPoint (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &polygon, double x, double y, double precision)
 

Member Function Documentation

◆ areaPolyline2D() [1/2]

double CPolylines::areaPolyline2D ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & polyline,
double precision )
static

◆ areaPolyline2D() [2/2]

double CPolylines::areaPolyline2D ( const std::vector< iv::math::geometry::Point2d > & polyline,
double precision )
static

◆ calculateLimits2D() [1/2]

void CPolylines::calculateLimits2D ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & polyline,
iv::types::coord * xMin,
iv::types::coord * yMin,
iv::types::coord * xMax,
iv::types::coord * yMax )
static

◆ calculateLimits2D() [2/2]

void CPolylines::calculateLimits2D ( const std::vector< iv::math::geometry::Point2d > & polyline,
iv::types::coord * xMin,
iv::types::coord * yMin,
iv::types::coord * xMax,
iv::types::coord * yMax )
static

◆ calculateLimits3D()

void CPolylines::calculateLimits3D ( const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > & polyline,
iv::types::coord * xMin,
iv::types::coord * yMin,
iv::types::coord * zMin,
iv::types::coord * xMax,
iv::types::coord * yMax,
iv::types::coord * zMax )
static

◆ centerGravity2D()

void CPolylines::centerGravity2D ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & polyline,
double * xCenterGravity,
double * yCenterGravity )
static

◆ closePolyline2d()

void CPolylines::closePolyline2d ( std::vector< iv::math::geometry::Point2d > & polylineOut)
static

◆ closePolyline3d()

void CPolylines::closePolyline3d ( const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > & polyline)
static

◆ createArc()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createArc ( double radius,
double angleInitial,
double angleEnd,
double angleIncrement,
bool withLastAngle )
static

◆ createArcWithNumberPoints()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createArcWithNumberPoints ( double radius,
double angleInitial,
double angleEnd,
uint64_t numPointsInArc )
static

◆ createCircle()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createCircle ( double radius,
uint64_t numPoints )
static

◆ createEllipse()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createEllipse ( double rx,
double ry,
uint64_t numPoints )
static

◆ createEllipseArc()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createEllipseArc ( double rx,
double ry,
double angleInitial,
double angleEnd,
double angleIncrement,
bool withLastAngle )
static

◆ createEllipseArcWithNumberPointsInArc()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createEllipseArcWithNumberPointsInArc ( double rx,
double ry,
double angleInitial,
double angleEnd,
uint64_t numPointsInArc,
bool withLastAngle )
static

◆ createPolygonRegular()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createPolygonRegular ( double radius,
uint64_t numEdges )
static

◆ createPolyline2DTo3D()

std::shared_ptr< std::vector< iv::math::geometry::Point3d > > CPolylines::createPolyline2DTo3D ( const std::vector< iv::math::geometry::Point2d > & polyline,
double z )
static

◆ createPolyline3DTo2DNoX()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createPolyline3DTo2DNoX ( const std::vector< iv::math::geometry::Point3d > & polyline)
static

◆ createPolyline3DTo2DNoZ()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createPolyline3DTo2DNoZ ( const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > & polyline)
static

◆ createRectangle3DCentredInOrigin()

std::vector< iv::math::geometry::Point3d > CPolylines::createRectangle3DCentredInOrigin ( double width,
double height,
double z )
static

◆ createRectangleCentredInOrigin()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::createRectangleCentredInOrigin ( double width,
double height )
static

◆ deletePointsRepeated2D()

void CPolylines::deletePointsRepeated2D ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points,
double precision )
static

◆ deletePointsRepeated3D()

void CPolylines::deletePointsRepeated3D ( std::vector< iv::math::geometry::Point3d > & points,
double precision )
static

◆ getPolylinesAreasOneSideIntersectionAbove()

std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * CPolylines::getPolylinesAreasOneSideIntersectionAbove ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & intersections2D,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points2D )
static

◆ getPolylinesAreasOneSideIntersectionUnder()

std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * CPolylines::getPolylinesAreasOneSideIntersectionUnder ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & intersections2D,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points2D )
static

◆ getSubdivisionsCurve()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::getSubdivisionsCurve ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & separations,
uint64_t numDivisions )
static

◆ intersectionsLinePlane()

bool CPolylines::intersectionsLinePlane ( double x1,
double y1,
double z1,
double x2,
double y2,
double z2,
double A,
double B,
double C,
double D,
double * x,
double * y,
double * z,
double precision )
static

◆ intersectionsLinePolyline() [1/2]

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::intersectionsLinePolyline ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & polyline,
double x1Line,
double y1Line,
double x2Line,
double y2Line,
double precision )
static

◆ intersectionsLinePolyline() [2/2]

std::vector< iv::math::geometry::Point2d > CPolylines::intersectionsLinePolyline ( const std::vector< iv::math::geometry::Point2d > & polyline,
double x1Line,
double y1Line,
double x2Line,
double y2Line,
double precision )
static

◆ intersectionsPolyline2DPlaneYZ()

std::shared_ptr< std::vector< iv::math::geometry::Point2d > > CPolylines::intersectionsPolyline2DPlaneYZ ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & polyline,
double x,
double A,
double B,
double C,
double D,
double precision )
static

◆ intersectionsPolyline3DPlane()

std::vector< iv::math::geometry::Point3d > CPolylines::intersectionsPolyline3DPlane ( const std::vector< iv::math::geometry::Point3d > & polyline,
double A,
double B,
double C,
double D,
double precision )
static

◆ isClosedPolyline3d()

bool CPolylines::isClosedPolyline3d ( const std::shared_ptr< std::vector< iv::math::geometry::Point3d > > & polyline,
double precision )
static

◆ isInnerPoint()

bool CPolylines::isInnerPoint ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & polygon,
double x,
double y,
double precision )
static

◆ lengthPolyline2D()

double CPolylines::lengthPolyline2D ( const std::vector< iv::math::geometry::Point2d > & polyline)
static

◆ move2D()

void CPolylines::move2D ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & polyline,
double dx,
double dy )
static

◆ move3D()

void CPolylines::move3D ( std::vector< iv::math::geometry::Point3d > & polyline,
double dx,
double dy,
double dz )
static

◆ rotate2D()

void CPolylines::rotate2D ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & polyline,
double xc,
double yc,
double Ux,
double Uy )
static

◆ scale2D()

void CPolylines::scale2D ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & polyline,
double fx,
double fy )
static

The documentation for this class was generated from the following files: