C3D Toolkit  Kernel - 105122, Vision - 0.181114.105122
Файл action_point.h

Функции создания точек. Подробнее...

Классы

class  MbSpaceParamPnt
 Пространственно-параметрическая точка. Подробнее...
 

Определения типов

typedef std::pair< MbSpaceParamPnt, c3d::UintPairMbLocPnt
 Пространственно-параметрическая точка с индексированным положением.
 

Функции

template<class Type >
SArray< Type > * CreateArray (size_t cnt, MbResultType &res)
 Создать массив. Подробнее...
 
template<class Type >
bool ReserveArray (SArray< Type > &arr, size_t n, MbResultType &res)
 Выделить в массиве память под n элементов. Подробнее...
 
template<class Type >
bool AddItem (SArray< Type > &arr, const Type &item, MbResultType &res)
 Добавить в массив элемент. Подробнее...
 
MbResultType PointsOnSurface (const MbSurface &surface, MbeStepType stepType, double uValue, double vValue, bool truncateByBounds, RPArray< SArray< MbLocPnt > > &result)
 Создать точки на поверхности. Подробнее...
 
MbResultType PointsOnSurface (const MbSurface &surface, MbeItemGridType &gridType, const MbCartPoint &uv0, double angle, MbeStepType stepType, double step1, double step2, bool truncateByBounds, RPArray< SArray< MbLocPnt > > &result, size_t maxPntsCnt=c3d::ARRAY_MAX_COUNT)
 Создать точки на поверхности. Подробнее...
 
void DefinePointsOnSurfaceCounts (const MbSurface &surface, size_t &uPntsCnt, size_t &vPntsCnt)
 Определить умолчательную разбивку поверхности. Подробнее...
 
MbeNewtonResult IntersectionPoint (const MbSurface &surf0, bool ext0, const MbSurface &surf1, bool ext1, const MbSurface &surf2, bool ext2, MbCartPoint &uv0, MbCartPoint &uv1, MbCartPoint &uv2)
 Найти точку пересечения трех поверхностей. Подробнее...
 
void IntersectionPoints (const MbSurface &surf, bool surfExt, const MbCurve3D &curv, bool curveExt, SArray< MbCartPoint > &uv, SArray< double > &tt, bool touchInclude=false)
 Найти все точки пересечения поверхности и кривой. Подробнее...
 
bool LineLineNearestParams (const MbCartPoint3D &origin1, const MbVector3D &direction1, const MbCartPoint3D &origin2, const MbVector3D &direction2, double &t1, double &t2)
 Определить параметры ближайших точек прямых. Подробнее...
 
double LineLineNearestPoints (const MbLine3D &line1, const MbLine3D &line2, MbCartPoint3D &p1, MbCartPoint3D &p2)
 Определение расстояния между ближайшими точками p1 и p2 прямых line1 и line2. Подробнее...
 
bool LineLineNearestParams (const MbCartPoint &origin1, const MbVector &direction1, const MbCartPoint &origin2, const MbVector &direction2, double &t1, double &t2)
 Определить параметры ближайших точек прямых. Подробнее...
 
void FastLineLine (const MbLine &line1, const MbLine &line2, MbCartPoint &result)
 Найти точку пересечения двух прямых. Подробнее...
 
int LineLine (const MbLine &line1, const MbLine &line2, MbCartPoint &result)
 Найти точку пересечения двух прямых. Подробнее...
 
int LineLine (const MbLine &line1, const MbLine &line2, MbCrossPoint &result)
 Найти точку пересечения двух прямых. Подробнее...
 
int LineLineSeg (const MbLine &line, const MbLineSegment &lseg, MbCrossPoint &result)
 Найти точку пересечения прямой и отрезка. Подробнее...
 
int LineCircle (const MbLine &line, const MbCartPoint &centre, double radius, MbCrossPoint *result)
 Найти точки пересечения прямой и окружности. Подробнее...
 
ptrdiff_t IntersectTwoCurves (const MbCurve &pCurve1, const MbCurve &pCurve2, SArray< MbCrossPoint > &result, bool touchInclude=true, double epsilon=Math::LengthEps *c3d::METRIC_DELTA, bool allowInaccuracy=true)
 Найти точки пересечения двух кривых. Подробнее...
 
ptrdiff_t CurveCurveIntersection (const MbCurve &curve1, const MbCurve &curve2, SArray< double > &result1, SArray< double > &result2, double xEpsilon, double yEpsilon, bool touchInclude, bool allowInaccuracy=true)
 Найти точки пересечения двух кривых. Подробнее...
 
void CurveSelfIntersect (const MbCurve &curve, double xEpsilon, double yEpsilon, SArray< double > &result1, SArray< double > &result2, VERSION version=Math::DefaultMathVersion())
 Найти точки самопересечения кривой. Подробнее...
 
void RemoveAllTouchParams (const MbCurve &curve1, const MbCurve &curve2, SArray< MbCrossPoint > &result, double eps=PARAM_NEAR)
 Удалить точки касания. Подробнее...
 
ptrdiff_t CurveCurveIntersection (const MbCurve3D &curve1, const MbCurve3D &curve2, SArray< double > &result1, SArray< double > &result2, double mEps=Math::metricRegion)
 Найти точки пересечения двух кривых. Подробнее...
 
bool IsSelfIntersect (const MbCurve3D &curve, double mEps=Math::metricRegion)
 Проверить кривую на самопересечение. Подробнее...
 
void FilterTouchParams (const MbCurve3D &curve1, const MbCurve3D &curve2, SArray< double > &result1, SArray< double > &result2, double mEps=Math::metricRegion)
 Убрать касательные точки пересечения. Подробнее...
 
ptrdiff_t CurveCurveCrossing (const MbCurve3D &curve1, const MbCurve3D &curve2, SArray< double > &result1, SArray< double > &result2, double epsilon=Math::metricRegion)
 Найти точки скрещения двух кривых. Подробнее...
 
bool PointProjectionRelativeOuterLoop (const MbSurface &surface, const MbCartPoint3D &pnt, bool byOuterRectOnly, MbCartPoint &result)
 Найти проекцию точки на поверхность относительно внешнего контура поверхности. Подробнее...
 
bool IsMultipleProjection (const MbSurface &surface, const MbCartPoint3D &result)
 Является ли проекция точки точно неоднозначной. Подробнее...
 

Подробное описание

Функции создания точек.

Функции, использующие в качестве выходных параметров точки или массивы точек.