Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CPolylines.cpp File Reference
#include "CPolylines.hpp"
#include "core/utils.hpp"
#include "math/CGeometry.hpp"
#include "math/CLimits.hpp"
#include "math/CMath.hpp"
#include "math/structs.hpp"
#include "math/utils.hpp"
#include <algorithm>
#include <cmath>
Include dependency graph for CPolylines.cpp:

Enumerations

enum class  EPrvTypeAddPoint { AddPoint , AddWaterPoint , NoAdd }
 

Functions

static void prvPointEllipse (double radioX, double radioY, double angle, double *x, double *y)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > prvCreateArcEllipse (double rx, double ry, double angleInitial, double angleEnd, double angleIncrement, bool withLastAngle)
 
static void prvParametersArcTwoPI (double numPoints, double *angleInitial, double *angleEnd, double *angleIncrement)
 
static void prvAddDivisions (double xSepInitial, double ySepInitial, double xSepFinal, double ySepFinal, uint64_t numDivisions, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &pointsWithSubdivisions)
 
static EPrvTypeAddPoint prvGetActionAddPointAbove (double x, double y, double yMin, double yMax, double xRight, double yRight, double xLeft, double yLeft)
 
static EPrvTypeAddPoint prvGetActionAddPointUnder (double x, double y, double yMin, double yMax, double xRight, double yRight, double xLeft, double yLeft, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &contour)
 
static void prvAddPointContourAbove (double x, double y, double xLeft, double yLeft, double xRight, double yRight, EPrvTypeAddPoint typeContour, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &contour, bool *isAddWater)
 
static void prvAddPointContourUnder (double x, double y, double xLeft, double yLeft, double xRight, double yRight, EPrvTypeAddPoint typeContour, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &contour, bool *isAddWater)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > prvGetPolylineArea2PointsUnder (double xLeft, double yLeft, double xRight, double yRight, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points)
 
static bool prvIsAddedPointPolyline4Points (double xLow, double yLow, double yHigh, double xPrev, double yPrev, double x, double y)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > prvGetPolylineArea4PointsAbove (double xLeft, double yLeft, double xRight, double yRight, double xPrev, double yPrev, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points)
 
static std::vector< iv::math::geometry::Point2dprvGetPolylineArea4PointsAboveBorrar (double xLeft, double yLeft, double xRight, double yRight, double xPrev, double yPrev, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > prvGetPolylineArea4PointsUnder (double xLeft, double yLeft, double xRight, double yRight, double xPrev, double yPrev, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points)
 
static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > prvGetPolylineArea2PointsAbove (double xLeft, double yLeft, double xRight, double yRight, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points)
 
static void prvAddContourPolylinesAreasAbove (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &intersections, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points, uint64_t itr, uint64_t ind, int16_t addNext, std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > *contours)
 
static void prvAddContourPolylinesAreasUnder (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &intersections, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points, uint64_t itr, uint64_t ind, int16_t addNext, std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > *contours)
 
static std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * prvGetPolylinesAreasWithIntersectionsAbove (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &intersections, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points)
 
static std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * prvGetPolylinesAreasWithIntersectionsUnder (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &intersections, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points)
 
static bool prvExistFromPoint2D (const iv::math::geometry::Point2d &point, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points, const double precision, const uint64_t ind)
 
static bool prvExistFromPoint2DBorrar (const iv::math::geometry::Point2d &point, const std::vector< iv::math::geometry::Point2d > &points, const double precision, const uint64_t ind)
 
bool prvExistFromPoint3D (const iv::math::geometry::Point3d &point, const std::vector< iv::math::geometry::Point3d > &points, const double precision, const uint64_t ind)
 

Enumeration Type Documentation

◆ EPrvTypeAddPoint

enum class EPrvTypeAddPoint
strong
Enumerator
AddPoint 
AddWaterPoint 
NoAdd 

Function Documentation

◆ prvAddContourPolylinesAreasAbove()

static void prvAddContourPolylinesAreasAbove ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & intersections,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points,
uint64_t itr,
uint64_t ind,
int16_t addNext,
std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * contours )
static

◆ prvAddContourPolylinesAreasUnder()

static void prvAddContourPolylinesAreasUnder ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & intersections,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points,
uint64_t itr,
uint64_t ind,
int16_t addNext,
std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * contours )
static

◆ prvAddDivisions()

static void prvAddDivisions ( double xSepInitial,
double ySepInitial,
double xSepFinal,
double ySepFinal,
uint64_t numDivisions,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & pointsWithSubdivisions )
static

◆ prvAddPointContourAbove()

static void prvAddPointContourAbove ( double x,
double y,
double xLeft,
double yLeft,
double xRight,
double yRight,
EPrvTypeAddPoint typeContour,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & contour,
bool * isAddWater )
static

◆ prvAddPointContourUnder()

static void prvAddPointContourUnder ( double x,
double y,
double xLeft,
double yLeft,
double xRight,
double yRight,
EPrvTypeAddPoint typeContour,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & contour,
bool * isAddWater )
static

◆ prvCreateArcEllipse()

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

◆ prvExistFromPoint2D()

static bool prvExistFromPoint2D ( const iv::math::geometry::Point2d & point,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points,
const double precision,
const uint64_t ind )
static

◆ prvExistFromPoint2DBorrar()

static bool prvExistFromPoint2DBorrar ( const iv::math::geometry::Point2d & point,
const std::vector< iv::math::geometry::Point2d > & points,
const double precision,
const uint64_t ind )
static

◆ prvExistFromPoint3D()

bool prvExistFromPoint3D ( const iv::math::geometry::Point3d & point,
const std::vector< iv::math::geometry::Point3d > & points,
const double precision,
const uint64_t ind )

◆ prvGetActionAddPointAbove()

static EPrvTypeAddPoint prvGetActionAddPointAbove ( double x,
double y,
double yMin,
double yMax,
double xRight,
double yRight,
double xLeft,
double yLeft )
static

◆ prvGetActionAddPointUnder()

static EPrvTypeAddPoint prvGetActionAddPointUnder ( double x,
double y,
double yMin,
double yMax,
double xRight,
double yRight,
double xLeft,
double yLeft,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & contour )
static

◆ prvGetPolylineArea2PointsAbove()

static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > prvGetPolylineArea2PointsAbove ( double xLeft,
double yLeft,
double xRight,
double yRight,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points )
static

◆ prvGetPolylineArea2PointsUnder()

static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > prvGetPolylineArea2PointsUnder ( double xLeft,
double yLeft,
double xRight,
double yRight,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points )
static

◆ prvGetPolylineArea4PointsAbove()

static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > prvGetPolylineArea4PointsAbove ( double xLeft,
double yLeft,
double xRight,
double yRight,
double xPrev,
double yPrev,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points )
static

◆ prvGetPolylineArea4PointsAboveBorrar()

static std::vector< iv::math::geometry::Point2d > prvGetPolylineArea4PointsAboveBorrar ( double xLeft,
double yLeft,
double xRight,
double yRight,
double xPrev,
double yPrev,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points )
static

◆ prvGetPolylineArea4PointsUnder()

static std::shared_ptr< std::vector< iv::math::geometry::Point2d > > prvGetPolylineArea4PointsUnder ( double xLeft,
double yLeft,
double xRight,
double yRight,
double xPrev,
double yPrev,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points )
static

◆ prvGetPolylinesAreasWithIntersectionsAbove()

static std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * prvGetPolylinesAreasWithIntersectionsAbove ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & intersections,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points )
static

◆ prvGetPolylinesAreasWithIntersectionsUnder()

static std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point2d > > > * prvGetPolylinesAreasWithIntersectionsUnder ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & intersections,
const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points )
static

◆ prvIsAddedPointPolyline4Points()

static bool prvIsAddedPointPolyline4Points ( double xLow,
double yLow,
double yHigh,
double xPrev,
double yPrev,
double x,
double y )
static

◆ prvParametersArcTwoPI()

static void prvParametersArcTwoPI ( double numPoints,
double * angleInitial,
double * angleEnd,
double * angleIncrement )
static

◆ prvPointEllipse()

static void prvPointEllipse ( double radioX,
double radioY,
double angle,
double * x,
double * y )
static