C3D Toolkit
Kernel - 112135, Vision - 2.6.2.3
|
Поверхность сопряжения. Подробнее...
#include <surf_smooth_surface.h>
Открытые члены | |
Функции инициализации | |
virtual void | Init0 (double tmin, double tmax, bool insertPoints=true)=0 |
Коррекция средней линии поверхности скругления. Подробнее... | |
Общие функции геометрического объекта | |
virtual MbeSpaceType | IsA () const =0 |
Получить тип объекта. | |
virtual MbeSpaceType | Type () const |
Получить групповой тип объекта. | |
virtual MbSpaceItem & | Duplicate (MbRegDuplicate *=c3d_null) const =0 |
Создать копию объекта. Подробнее... | |
virtual bool | IsSame (const MbSpaceItem &other, double accuracy=LENGTH_EPSILON) const =0 |
Определить, являются ли объекты равными. Подробнее... | |
virtual bool | SetEqual (const MbSpaceItem &)=0 |
Сделать объекты равным, если они подобны. Подробнее... | |
virtual void | Transform (const MbMatrix3D &, MbRegTransform *=c3d_null)=0 |
Преобразовать объект согласно матрице. Подробнее... | |
virtual void | Move (const MbVector3D &, MbRegTransform *=c3d_null)=0 |
Сдвинуть объект вдоль вектора. Подробнее... | |
virtual void | Rotate (const MbAxis3D &, double angle, MbRegTransform *=c3d_null)=0 |
Повернуть объект вокруг оси на заданный угол. Подробнее... | |
virtual void | GetProperties (MbProperties &properties)=0 |
Выдать свойства объекта. Подробнее... | |
virtual void | SetProperties (const MbProperties &properties)=0 |
Изменить свойства объекта. Подробнее... | |
Функции описания области определения поверхности | |
virtual double | GetUMin () const |
Вернуть минимальное значение параметра u. | |
virtual double | GetUMax () const |
Вернуть максимальное значение параметра u. | |
virtual double | GetVMin () const |
Вернуть минимальное значение параметра v. | |
virtual double | GetVMax () const |
Вернуть максимальное значение параметра v. | |
virtual bool | IsUClosed () const |
Определить, замкнута ли поверхность по параметру u. Подробнее... | |
virtual bool | IsVClosed () const |
Определить, замкнута ли поверхность по параметру v. Подробнее... | |
virtual double | GetUPeriod () const |
Вернуть период для гладко замкнутой поверхности или 0. | |
virtual bool | GetPoleUMin () const |
Существует ли полюс на границе параметрической области. | |
virtual bool | GetPoleUMax () const |
Существует ли полюс на границе параметрической области. | |
virtual bool | GetPoleVMin () const |
Существует ли полюс на границе параметрической области. | |
virtual bool | GetPoleVMax () const |
Существует ли полюс на границе параметрической области. | |
virtual bool | IsPole (double u, double v) const |
Является ли точка полюсом. | |
Функции для работы в области определения поверхности | |
Функции PointOn и Derive... поверхностей сопряжения не корректируют первый параметр при его выходе за пределы определения параметров. | |
virtual void | PointOn (double &u, double &v, MbCartPoint3D &) const =0 |
Вычислить точку на поверхности. Подробнее... | |
virtual void | DeriveU (double &u, double &v, MbVector3D &) const =0 |
Вычислить первую производную по u. | |
virtual void | DeriveV (double &u, double &v, MbVector3D &) const =0 |
Вычислить первую производную по v. | |
virtual void | DeriveUU (double &u, double &v, MbVector3D &) const =0 |
Вычислить вторую производную по u. | |
virtual void | DeriveVV (double &u, double &v, MbVector3D &) const =0 |
Вычислить вторую производную по v. | |
virtual void | DeriveUV (double &u, double &v, MbVector3D &) const =0 |
Вычислить вторую производную. | |
virtual void | DeriveUUU (double &u, double &v, MbVector3D &) const =0 |
Вычислить третью производную. | |
virtual void | DeriveUUV (double &u, double &v, MbVector3D &) const =0 |
Вычислить третью производную. | |
virtual void | DeriveUVV (double &u, double &v, MbVector3D &) const =0 |
Вычислить третью производную. | |
virtual void | DeriveVVV (double &u, double &v, MbVector3D &) const =0 |
Вычислить третью производную. | |
Функции доступа к группе данных для работы внутри и вне области определения параметров поверхности. | |
virtual void | Explore (double &u, double &v, bool ext, MbCartPoint3D &pnt, MbVector3D &uDer, MbVector3D &vDer, MbVector3D *uuDer, MbVector3D *vvDer, MbVector3D *uvDer, MbVector3D *nor) const =0 |
Вычислить значения точки и производных для заданных параметров. Подробнее... | |
Функции движения по поверхности | |
virtual size_t | GetUCount () const |
Количество разбиений по параметру u для проверки событий. | |
virtual size_t | GetVCount () const |
Количество разбиений по параметру v для проверки событий. | |
Общие функции поверхности | |
virtual MbeNewtonResult | CurveIntersectNewton (const MbCurve3D &, double funcEpsilon, size_t iterLimit, double &u0, double &v0, double &t1, bool ext0, bool ext1) const |
Решение системы уравнений для определения пересечения поверхности и кривой. Для внутреннего использования. | |
virtual double | GetParamDelta () const |
Дать максимальное приращение параметра. | |
virtual double | GetParamPrice () const |
Дать минимально различимую величину параметра. | |
virtual MbSurface * | NurbsSurface (const MbNurbsParameters &uParam, const MbNurbsParameters &vParam) const |
Построить NURBS копию поверхности. Подробнее... | |
Функции поверхности сопряжения | |
virtual MbSmoothSurface & | CurvesDuplicate () const =0 |
Копия с теми же опорными поверхностям. | |
MbSurface & | TotalDuplicate () const |
Сделать полное копирование поверхности. | |
virtual double | GetSmoothRadius () const =0 |
Дать радиус. | |
virtual void | GetDistances (double u, double &d1, double &d2) const =0 |
Дать радиусы со знаком. | |
virtual double | GetDistance (bool s) const =0 |
Дать радиус со знаком. | |
virtual bool | SurfacesCombine (const MbSurfaceIntersectionCurve &edge, const MbSurface &init, bool add, MbMatrix &matr, const MbSurfaceIntersectionCurve *seam) |
Объединить поверхности путём включения поверхности init в данную поверхность. Подробнее... | |
virtual double | DistanceRatio (bool firstCurve, MbCartPoint3D &p, double distance) const |
Дать коэффициент для радиуса. | |
const MbSurfaceCurve & | GetCurve1 () const |
Опорная кривая на первой поверхности. | |
const MbSurfaceCurve & | GetCurve2 () const |
Опорная кривая на второй поверхности. | |
MbSurfaceCurve & | SetCurve1 () const |
Дать опорную кривую на первой поверхности для изменения. | |
MbSurfaceCurve & | SetCurve2 () const |
Дать опорную кривую на второй поверхности для изменения. | |
MbCurve * | CreateBound (bool s) const |
Построить граничную кривую вдоль поверхности (V = const). Подробнее... | |
MbeCurveBuildType | GetBuildType () const |
Вид опорных кривых. Подробнее... | |
MbeSmoothForm | Form () const |
Форма поверхности. Подробнее... | |
virtual bool | InsertPoints (double &t1, const MbCartPoint &p1, bool add1, double &t2, const MbCartPoint &p2, bool add2) |
Добавить точку в опорные кривые границы. Подробнее... | |
bool | ProlongSurface (double u, const MbCartPoint &p1, const MbCartPoint &p2, bool anyCase) |
Продлить поверхность. Подробнее... | |
bool | CurveStraighten (double t1, double t2) |
Скорректировать кривые. Подробнее... | |
void | AddProperties (MbProperties &properties) |
Дать свойства объекта. | |
void | SetPole () |
Проверить полюса. | |
![]() | |
virtual | ~MbSurface () |
Деструктор. | |
VISITING_CLASS (MbSurface) | |
Реализация функции, инициирующей посещение объекта. | |
virtual MbeSpaceType | Family () const |
Получить семейство объекта. | |
virtual double | DistanceToPoint (const MbCartPoint3D &) const |
Определить расстояние до точки. Подробнее... | |
virtual void | AddYourGabaritTo (MbCube &c) const |
Расширить присланный габаритный куб так, чтобы он включал в себя данный объект. Подробнее... | |
virtual void | Refresh () |
Перевести все временные (mutable) данные объекта в неопределённое (исходное) состояние. | |
virtual void | PrepareIntegralData (const bool forced) const |
Рассчитать временные (mutable) данные объекта. Подробнее... | |
virtual void | CalculateMesh (const MbStepData &stepData, const MbFormNote ¬e, MbMesh &mesh) const |
Построить полигональную копию mesh. Подробнее... | |
virtual MbProperty & | CreateProperty (MbePrompt name) const |
Создать собственное свойство с заданием его имени. | |
virtual void | GetBasisPoints (MbControlData3D &) const |
Выдать контрольные точки объекта. | |
virtual void | SetBasisPoints (const MbControlData3D &) |
Изменить объект по контрольным точкам. | |
size_t | size () const |
Количество объектов при трактовке объекта как вектора объектов. | |
const MbSurface * | operator[] (size_t) const |
Оператор доступа. | |
virtual bool | IsUTouch () const |
Определить, замкнута ли фактически поверхность по u-параметру независимо от гладкости замыкания. Подробнее... | |
virtual bool | IsVTouch () const |
Определить, замкнута ли фактически поверхность по v-параметру независимо от гладкости замыкания. Подробнее... | |
virtual bool | IsUPeriodic () const |
Определить, замкнута ли поверхность по параметру u. Подробнее... | |
virtual bool | IsVPeriodic () const |
Определить, замкнута ли поверхность по параметру v. Подробнее... | |
virtual double | GetVPeriod () const |
Вернуть период для гладко замкнутой поверхности или 0. | |
virtual double | GetPeriod (ptrdiff_t i) const |
Вернуть период. Подробнее... | |
virtual size_t | Periodicity () const |
Определить периодичность. Подробнее... | |
bool | IsPole (const MbCartPoint &uv) const |
Является ли точка полюсом. | |
virtual void | TangentU (double &u, double &v, MbVector3D &) const |
Вычислить касательный вектор по u. | |
virtual void | TangentV (double &u, double &v, MbVector3D &) const |
Вычислить касательный вектор по v. | |
virtual void | Normal (double &u, double &v, MbVector3D &) const |
Вычислить нормаль. | |
virtual void | NormalU (double &u, double &v, MbVector3D &) const |
Вычислить производную нормали по U. | |
virtual void | NormalV (double &u, double &v, MbVector3D &) const |
Вычислить производную нормали по V. | |
virtual void | Explore (double &u, double &v, MbCartPoint3D &pnt, MbVector3D &uDer, MbVector3D &vDer) const |
Вычислить значения точки и первых производных по u и по v. Подробнее... | |
virtual void | _PointOn (double u, double v, MbCartPoint3D &p) const |
Вычислить точку на поверхности. Подробнее... | |
virtual void | _DeriveU (double u, double v, MbVector3D &) const |
Вычислить первую производную по u на расширенной поверхности. | |
virtual void | _DeriveV (double u, double v, MbVector3D &) const |
Вычислить первую производную по v на расширенной поверхности. | |
virtual void | _DeriveUU (double u, double v, MbVector3D &) const |
Вычислить вторую производную по u на расширенной поверхности. | |
virtual void | _DeriveVV (double u, double v, MbVector3D &) const |
Вычислить вторую производную по v на расширенной поверхности. | |
virtual void | _DeriveUV (double u, double v, MbVector3D &) const |
Вычислить вторую производную на расширенной поверхности. | |
virtual void | _DeriveUUU (double u, double v, MbVector3D &) const |
Вычислить третью производную на расширенной поверхности. | |
virtual void | _DeriveUUV (double u, double v, MbVector3D &) const |
Вычислить третью производную на расширенной поверхности. | |
virtual void | _DeriveUVV (double u, double v, MbVector3D &) const |
Вычислить третью производную на расширенной поверхности. | |
virtual void | _DeriveVVV (double u, double v, MbVector3D &) const |
Вычислить третью производную на расширенной поверхности. | |
virtual void | _TangentU (double u, double v, MbVector3D &) const |
Вычислить касательный вектор по u на расширенной поверхности. | |
virtual void | _TangentV (double u, double v, MbVector3D &) const |
Вычислить касательный вектор по v на расширенной поверхности. | |
virtual void | _Normal (double u, double v, MbVector3D &) const |
Вычислить нормаль на расширенной поверхности. | |
virtual void | _NormalU (double u, double v, MbVector3D &) const |
Вычислить производную нормали на расширенной поверхности. | |
virtual void | _NormalV (double u, double v, MbVector3D &) const |
Вычислить производную нормали на расширенной поверхности. | |
virtual void | _NormalUU (double u, double v, MbVector3D &) const |
Вычислить вторую производную нормали на расширенной поверхности. | |
virtual void | _NormalUV (double u, double v, MbVector3D &) const |
Вычислить вторую производную нормали на расширенной поверхности. | |
virtual void | _NormalVV (double u, double v, MbVector3D &) const |
Вычислить вторую производную нормали на расширенной поверхности. | |
virtual void | _NormalD (double u, double v, double du, double dv, MbVector3D &der) const |
Вычислить производную нормали в точке с параметрами u v вдоль линии du dv. | |
virtual void | _NormalDD (double u, double v, double du, double dv, MbVector3D &der) const |
Вычислить вторую производную нормали в точке с параметрами u v вдоль линии du dv. | |
virtual void | _PointNormal (double u, double v, MbCartPoint3D &pnt, MbVector3D &deru, MbVector3D &derv, MbVector3D &norm, MbVector3D &noru, MbVector3D &norv, MbVector3D &deruu, MbVector3D &dervv, MbVector3D &deruv) const |
Вычислить значения всех производных в точке. Подробнее... | |
virtual double | StepU (double u, double v, double sag) const |
Вычислить шаг параметра. Подробнее... | |
virtual double | StepV (double u, double v, double sag) const |
Вычислить шаг параметра. Подробнее... | |
virtual double | DeviationStepU (double u, double v, double angle) const |
Вычислить шаг параметра. Подробнее... | |
virtual double | DeviationStepV (double u, double v, double angle) const |
Вычислить шаг параметра. Подробнее... | |
virtual double | MetricStepU (double u, double v, double length) const |
Вычислить шаг параметра. Подробнее... | |
virtual double | MetricStepV (double u, double v, double length) const |
Вычислить шаг параметра. Подробнее... | |
double | SurfaceStep (const double &u, const double &v, bool alongU, const MbStepData &stepData) const |
Вычислить шаг параметра. Подробнее... | |
virtual const MbSurface & | GetSurface () const |
Дать себя (перегружена только у CurveBoundedSurface). | |
virtual const MbSurface & | GetBasisSurface () const |
Дать базовую поверхность, если есть, или себя. | |
virtual MbSurface & | SetSurface () |
Дать себя (перегружена только у CurveBoundedSurface). | |
virtual MbSurface & | SetBasisSurface () |
Дать базовую поверхность, если есть, или себя. | |
virtual void | GetLimitPoint (ptrdiff_t number, MbCartPoint3D &pnt) const |
Вычислить граничную точку. Подробнее... | |
virtual void | GetLimitPoint (ptrdiff_t number, MbCartPoint &pnt) const |
Вычислить двумерную граничную точку. Подробнее... | |
MbCartPoint3D | GetLimitPoint (ptrdiff_t number) const |
Вычислить граничную точку. Подробнее... | |
virtual double | CurvatureU (double u, double v) const |
Вычислить кривизну линии вдоль u. Подробнее... | |
virtual double | CurvatureV (double u, double v) const |
Вычислить кривизну линии вдоль v. Подробнее... | |
double | NormalCurvatureU (double u, double v) const |
Вычислить нормальную кривизну линии вдоль u. Подробнее... | |
double | NormalCurvatureV (double u, double v) const |
Вычислить нормальную кривизну линии вдоль v. Подробнее... | |
double | NormalCurvature (double u, double v, double du, double dv) const |
Вычислить нормальную кривизну поверхности. Подробнее... | |
bool | MeanGaussCurvature (double u, double v, double &mean, double &gauss) const |
Вычислить Среднюю и Гауссову кривизну. Подробнее... | |
virtual bool | IsSameBase (const MbSurface &) const |
Является ли базовая поверхность копией базовой поверхности данного объекта. | |
virtual bool | IsPlanar (double accuracy=METRIC_EPSILON) const |
Является ли поверхность плоской. | |
virtual double | GetRadius () const |
Дать физический радиус объекта или ноль, если это невозможно. Подробнее... | |
virtual double | GetFilletRadius (const MbCartPoint3D &p) const |
Дать радиус скругления, если поверхность является поверхностью скругления. | |
virtual MbeParamDir | GetFilletDirection () const |
Направление поверхности скругления. | |
virtual bool | GetCylinderAxis (MbAxis3D &) const |
Дать ось вращения для поверхности. | |
virtual bool | GetCentre (MbCartPoint3D &c) const |
Выдать центр сферической поверхности. | |
virtual bool | GetCenterLines (std::vector< MbCurve3D *> &clCurves) const |
Дать осевые (центральные) линии для поверхности. | |
virtual void | ChangeCarrier (const MbSpaceItem &item, MbSpaceItem &init) |
Изменение носителя. Подробнее... | |
virtual bool | ChangeCarrierBorne (const MbSurface &item, MbSurface &init, const MbMatrix &matr) |
Изменение носимых элементов. Подробнее... | |
virtual bool | IsSpinePeriodic () const |
Периодичность направляющей. Подробнее... | |
MbSplineSurface * | NurbsSurface (bool bmatch=false) const |
Построить NURBS копию поверхности. Подробнее... | |
virtual MbSplineSurface * | NurbsSurface (double u1, double u2, double v1, double v2, bool bmatch=false) const |
Построить NURBS копию усеченной поверхности. Подробнее... | |
bool | NurbsParam (const MbNurbsParameters &tParam, bool uParam, double op1, double op2, bool &isClosedNurbs, double &epsilon, SArray< double > ¶ms) const |
Подготовить параметры для преобразования в NURBS поверхность. Подробнее... | |
void | CheckApproxPointParamsOpen (bool isU, double par, size_t degree, size_t pCount, SArray< double > &tList, SArray< double > &aKnots) const |
Выбрать точки для аппроксимации вдоль параметра. Подробнее... | |
void | CheckApproxPointParamsClosed (bool isU, double par, size_t degree, size_t pCount, SArray< double > &tList, SArray< double > &aKnots) const |
Выбрать точки для аппроксимации вдоль параметра. Подробнее... | |
virtual MbSurface * | Offset (double d, bool same) const |
Построить эквидистантую поверхность. Подробнее... | |
virtual MbCurve3D * | CurveU (double v, MbRect1D *pRgn, bool bApprox=true) const |
Построить пространственную копию линии v = const. Подробнее... | |
virtual MbCurve3D * | CurveV (double u, MbRect1D *pRgn, bool bApprox=true) const |
Построить пространственную копию линии u = const. Подробнее... | |
virtual MbCurve3D * | CurveUV (const MbLineSegment &segm, bool bApprox=true) const |
Построить пространственную копию линии по параметрической линии. Подробнее... | |
virtual MbeItemLocation | PointRelative (const MbCartPoint3D &pnt, double eps=ANGLE_REGION) const |
Определить, с какой стороны от поверхности находится точка. Подробнее... | |
virtual MbeItemLocation | PointClassification (const MbCartPoint &pnt, bool ignoreClosed=false) const |
Находятся ли точка в области, принадлежащей поверхности. Подробнее... | |
virtual double | DistanceToBorder (const MbCartPoint &point, double &epsilon) const |
Вычислить параметрическое расстояние до ближайшей границы. Подробнее... | |
virtual size_t | CurveClassification (const MbCurve &curve, SArray< double > &tcurv, SArray< MbVector > &dir) const |
Определить точки пересечения кривoй с контурами поверхности. Подробнее... | |
size_t | SurfaceBorderIntersection (const MbCurve &curve, SArray< double > &tcurv, SArray< MbVector > &dir) const |
Определить точки пересечения кривoй с контурами поверхности. Подробнее... | |
virtual MbeNewtonResult | PointProjectionNewton (const MbCartPoint3D &p, size_t iterLimit, double &u, double &v, bool ext) const |
Нахождение проекции точки на поверхность. Для внутреннего использования. | |
virtual bool | NearPointProjection (const MbCartPoint3D &pnt, double &u, double &v, bool ext, MbRect2D *uvRange=c3d_null) const |
Найти проекцию точки на поверхность. Подробнее... | |
virtual MbeNewtonResult | DirectPointProjectionNewton (const MbCartPoint3D &p, const MbVector3D &vect, size_t iterLimit, double &u, double &v, double &w, bool ext) const |
Нахождение проекции точки на поверхность в направлении вектора. Для внутреннего использования. | |
virtual void | DirectPointProjection (const MbCartPoint3D &pnt, const MbVector3D &vect, SArray< MbCartPoint > &uv, bool ext, MbRect2D *uvRange=c3d_null) const |
Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. Подробнее... | |
virtual bool | NearDirectPointProjection (const MbCartPoint3D &pnt, const MbVector3D &vect, double &u, double &v, bool ext, MbRect2D *uvRange=c3d_null, bool onlyPositiveDirection=false) const |
Найти ближайшую проекцию точки на поверхность в направлении вектора. Подробнее... | |
virtual MbeNewtonResult | CurveTangentNewton (const MbCurve3D &curv1, double funcEpsilon, size_t iterLimit, double &u0, double &v0, double &t1, bool ext0, bool ext1) const |
Решение системы уравнений для определения касания поверхности и кривой. Для внутреннего использования. | |
virtual void | CurveIntersection (const MbCurve3D &curv, SArray< MbCartPoint > &uv, SArray< double > &tt, bool ext0, bool ext, bool touchInclude=false) const |
Определить точки пересечения поверхности и кривой. Подробнее... | |
virtual MbeNewtonResult | SurfaceIntersectNewton (const MbSurface &surf1, MbeParamDir switchPar, double funcEpsilon, size_t iterLimit, double &u0, double &v0, double &u1, double &v1, bool ext0, bool ext1) const |
Решение системы уравнений для определения пересечения поверхностей. Для внутреннего использования. | |
virtual MbeNewtonResult | SurfaceTangentNewton (const MbSurface &surf1, MbeParamDir switchPar, double funcEpsilon, size_t iterLimit, double &u0, double &v0, double &u1, double &v1, bool ext0, bool ext1) const |
Решение системы уравнений для определения касания поверхностей. Для внутреннего использования. | |
virtual MbeNewtonResult | SilhouetteNewton (const MbVector3D &eye, bool perspective, const MbAxis3D *axis, MbeParamDir switchPar, double funcEpsilon, size_t iterLimit, double &u, double &v, bool ext) const |
Решение системы уравнений для определение точек очерка поверхности. Для внутреннего использования. | |
virtual bool | IsSimilarToSurface (const MbSurface &surf, VERSION version, double precision=METRIC_PRECISION) const |
Определить, подобны ли поверхности для объединения. Подробнее... | |
virtual bool | IsSpecialSimilarToSurface (const MbSurface &surf, VERSION version, double precision=METRIC_PRECISION) const |
Подобные ли поверхности для объединения (слива). Специальный случай. Для внутреннего использования. | |
virtual bool | ProjectCurveOnSimilarSurface (const MbCurve3D &spaceCurve, const MbCurve &curve, const MbSurface &surfNew, MbCurve *&curveNew) const |
Построение проекции поверхностной кривой на совпадающую поверхность. Подробнее... | |
bool | ProjectCurveOnSimilarSurface (const MbCurve3D &spaceCurve, const MbCurve &curve, const MbSurface &surfNew, SPtr< MbCurve > &curveNew) const |
Построение проекции поверхностной кривой на совпадающую поверхность. Подробнее... | |
virtual bool | GetMatrixToSurface (const MbSurface &surf, MbMatrix &matr, VERSION version, double precision=METRIC_PRECISION) const |
Дать двумерную матрицу преобразования из своей параметрической области в параметрическую область surf. Подробнее... | |
virtual ThreeStates | Salient () const |
Определить, выпуклая ли поверхность. | |
virtual double | DistanceToCurve (const MbCurve3D &curve, double &u, double &v, double &t, bool tCalc=false) const |
Вычислить ближайшее расстояние до кривой. Подробнее... | |
virtual double | DistanceToSurface (const MbSurface &surf1, double &u0, double &v0, double &u1, double &v1) const |
Вычислить ближайшее расстояние до поверхности. Подробнее... | |
virtual bool | CreateNormalPlacements (const MbVector3D &axisZ, double angle, SArray< MbPlacement3D > &places) const |
Построить нормальные плейсменты конструктивных плоскостей. | |
virtual bool | CreateTangentPlacements (const MbVector3D &axisZ, SArray< MbPlacement3D > &places) const |
Построить касательные плейсменты конструктивных плоскостей. | |
MbeNewtonResult | PlacementNewton (const MbVector3D &vec, double angle, MbeParamDir switchPar, size_t iterLimit, double &u, double &v) const |
Построить касательные плейсменты конструктивных плоскостей. Для внутреннего использования. | |
bool | CreateVconstPlacements (const MbVector3D &axisZ, double angle, bool normalPlace, SArray< MbPlacement3D > &places) const |
Построить нормальные или касательные плейсменты на v-линиях. | |
bool | CreateUconstPlacements (const MbVector3D &axisZ, double angle, bool normalPlace, SArray< MbPlacement3D > &places) const |
Построить нормальные или касательные плейсменты на u-линиях. | |
virtual double | ParamArea () const |
Вычислить площадь области определения параметров. | |
virtual size_t | GetUPairs (double v, SArray< double > &u) const |
Вычислить U-пары от V. Подробнее... | |
virtual size_t | GetVPairs (double u, SArray< double > &v) const |
Вычислить V-пары от U. Подробнее... | |
MbeNewtonResult | IsoclinalNewton (const MbVector3D &dir, size_t iterLimit, double &u, double &v) const |
Определение параметров точки изоклины поверхности. Для внутреннего использования. | |
virtual void | GetIsoclinal (const MbVector3D &nor, SArray< MbCartPoint > &uv) const |
Найти все изоклины поверхности. Подробнее... | |
virtual void | CalculateGabarit (MbCube &cube) const |
Рассчитать габарит поверхности. Рекомендуется использовать GetGabarit. | |
virtual void | CalculateLocalGabarit (const MbMatrix3D &into, MbCube &cube) const |
Рассчитать габарит в локальной системе координат. | |
const MbCube & | GetGabarit () const |
Рассчитать габаритный куб поверхности. | |
const MbCube & | Cube () const |
Вернуть сохраненный габаритный куб. Он должен быть пустой. Рекомендуется использовать GetGabarit. | |
void | SetDirtyGabarit () const |
Сделать габарит пустым. Для внутреннего использования. | |
void | CopyGabarit (const MbSurface &s, const MbVector3D *to=c3d_null) |
Скопировать габаритный куб из копии. Подробнее... | |
double | GetGabDiagonal () const |
Вычислить диагональ габаритного куба. | |
void | CalculateRect (const MbPlacement3D &place, MbRect &rect) const |
Вычислить прямоугольный габарит поверхности в заданной плоскости. Подробнее... | |
virtual MbContour & | MakeContour (bool sense) const |
Вернуть граничный двумерный контур. Подробнее... | |
virtual MbCurve & | MakeSegment (size_t i, bool sense) const |
Вернуть сегмент граничного двумерного контура. Подробнее... | |
MbCurve & | MakeCurve (size_t number1, size_t number2) const |
Вернуть сегмент граничного двумерного контура. Подробнее... | |
virtual void | SetLimit (double u1, double v1, double u2, double v2) |
Установить пределы поверхности. Для внутреннего использования. | |
void | SetLimit (const MbRect &) |
Установить пределы поверхности. Для внутреннего использования. | |
virtual void | SetExtendedParamRegion (double u1, double v1, double u2, double v2) |
Установить расширенные пределы поверхности. Для внутреннего использования. | |
virtual void | IncludePoint (double u, double v) |
Включить точку в область определения. Для внутреннего использования. | |
double | GetMaxParamDeltaU () const |
Дать максимальное приращение параметра U. | |
double | GetMaxParamDeltaV () const |
Дать максимальное приращение параметра V. | |
virtual double | GetUParamToUnit () const |
Дать приращение параметра u, осреднённо соответствующее единичной длине в пространстве. | |
virtual double | GetVParamToUnit () const |
Дать приращение параметра v, осреднённо соответствующее единичной длине в пространстве. | |
virtual double | GetUParamToUnit (double u, double v) const |
Дать приращение параметра u, соответствующее единичной длине в пространстве. | |
virtual double | GetVParamToUnit (double u, double v) const |
Дать приращение параметра v, соответствующее единичной длине в пространстве. | |
double | GetUParamToUnit (const MbCartPoint &uv) const |
Дать приращение параметра u, соответствующее единичной длине в пространстве. | |
double | GetVParamToUnit (const MbCartPoint &uv) const |
Дать приращение параметра v, соответствующее единичной длине в пространстве. | |
virtual void | GetParamsToUnit (double u, double v, double &uParam, double &vParam) const |
Дать приращение параметра u и параметра v, соответствующее единичной длине в пространстве. | |
double | GetUEpsilon () const |
Дать минимально различимую величину параметра U. Соответствует длине в пространстве = Math::metricEpsilon. | |
double | GetVEpsilon () const |
Дать минимально различимую величину параметра V. Соответствует длине в пространстве = Math::metricEpsilon. | |
double | GetUEpsilon (double u, double v) const |
Дать минимально различимую величину параметра U. Соответствует длине в пространстве = Math::metricEpsilon. | |
double | GetVEpsilon (double u, double v) const |
Дать минимально различимую величину параметра V. Соответствует длине в пространстве = Math::metricEpsilon. | |
double | GetURegion () const |
Дать минимально различимую величину параметра U. Соответствует длине в пространстве = Math::metricRegion. | |
double | GetVRegion () const |
Дать минимально различимую величину параметра V. Соответствует длине в пространстве = Math::metricRegion. | |
double | GetURegion (double u, double v) const |
Дать минимально различимую величину параметра U. Соответствует длине в пространстве = Math::metricRegion. | |
double | GetVRegion (double u, double v) const |
Дать минимально различимую величину параметра V. Соответствует длине в пространстве = Math::metricRegion. | |
virtual size_t | GetUMeshCount () const |
Выдать количество разбиений по u. | |
virtual size_t | GetVMeshCount () const |
Выдать количество разбиений по v. | |
void | CalculatePolygon (double minPar, double maxPar, double constPar, MbeParamDir dir, const MbStepData &stepData, MbPolygon3D &polygon) const |
Рассчитать полигон по параметру U или V. Подробнее... | |
virtual void | CalculateSurfaceWire (const MbStepData &stepData, size_t beg, MbMesh &mesh, size_t uMeshCount=c3d::WIRE_MAX, size_t vMeshCount=c3d::WIRE_MAX) const |
Рассчитать сетку. Подробнее... | |
virtual void | GetTesselation (const MbStepData &stepData, double u1, double u2, double v1, double v2, SArray< double > &uu, SArray< double > &vv) const |
Определить разбивку параметрической области поверхности вертикалями и горизонталями. Подробнее... | |
void | AddTesselation (const MbStepData &stepData, MbeParamDir dir, double u1, double u2, double v1, double v2, SArray< double > &uu, SArray< double > &vv) const |
Определить разбивку параметрической области поверхности с учетом направления. Подробнее... | |
virtual void | CalculateSurfaceGrid (const MbStepData &stepData, bool sense, MbGrid &grid) const |
Аппроксимировать поверхность треугольными пластинами. Подробнее... | |
virtual bool | IsRectangular () const |
Определить, ортогональны ли производные по u и v. | |
virtual bool | IsLineU () const |
Проверить, что все производные поверхности по U выше первой равны нулю. | |
virtual bool | IsLineV () const |
Проверить, что все производные поверхности по V выше первой равны нулю. | |
virtual bool | IsShift (const MbSpaceItem &obj, MbVector3D &dir, bool &isSame, double accuracy=LENGTH_EPSILON) const |
Определить, является ли объект смещением. Подробнее... | |
virtual void | CheckSurfParams (double &u, double &v) const |
Проверить параметры. Аналог глобальной функции _CheckParams, оптимизированный под использование кэшей. Подробнее... | |
bool | GetPlacement (MbPlacement3D *place, bool exact=false) const |
Дать плоскость (или только возможность ее выдачи). | |
bool | GetPlanePlacement (MbPlacement3D &place) const |
Дать плоскость. | |
bool | GetControlPlacement (MbPlacement3D &place, bool sameSense=true) const |
Дать плейсмент поверхности в средней точке. | |
bool | OrientPlacement (MbPlacement3D &place, bool normalSense=true) const |
Сориентировать ось Х плейсмента вдоль линии его пересечения с поверхностью. | |
bool | IsPointOn (const MbCartPoint3D &, double eps=METRIC_PRECISION) const |
Определить, лежит ли точка на плоскости. | |
void | PointOn (MbCartPoint &uv, MbCartPoint3D &p) const |
Вычислить точку на поверхности в области определения поверхности. | |
void | _PointOn (const MbCartPoint &uv, MbCartPoint3D &p) const |
Вычислить точку на продолженной поверхности. | |
void | Normal (MbCartPoint &uv, MbVector3D &v) const |
Вычислить нормаль к поверхности в области определения поверхности. | |
bool | GetMatrix (double xMin, double xMax, double yMin, double yMax, MbMatrix &matr) const |
Найти матрицу преобразования для кривых на поверхности при изменении параметризации. Подробнее... | |
double | GetUMid () const |
Среднее значение параметра u. | |
double | GetVMid () const |
Среднее значение параметра v. | |
double | GetURange () const |
Параметрическая длина по u. | |
double | GetVRange () const |
Параметрическая длина по v. | |
void | GetRect (MbRect &r) const |
Получить параметрические границы поверхности. | |
void | GetRect (MbRect2D &r) const |
Получить параметрические границы поверхности. | |
![]() | |
virtual | ~MbSpaceItem () |
Деструктор. | |
void | PrepareWrite () const |
Регистрация объекта. Подробнее... | |
virtual MbeRefType | RefType () const |
Получить регистрационный тип (для копирования, дублирования). | |
virtual bool | IsFamilyRegistrable () const |
Принадлежит ли объект к регистрируемому семейству. | |
virtual bool | IsSimilar (const MbSpaceItem &item) const |
Определить, являются ли объекты подобными. Подробнее... | |
void | CalculateWire (const MbStepData &stepData, MbMesh &mesh) const |
void | CalculateWire (double sag, MbMesh &mesh) const |
virtual void | GetBasisItems (RPArray< MbSpaceItem > &) |
Выдать базовые объекты в присланный контейнер. | |
![]() | |
TapeBase (RegistrableRec regs=noRegistrable) | |
Конструктор. | |
TapeBase (const TapeBase &) | |
Конструктор копирования | |
virtual | ~TapeBase () |
Деструктор. | |
RegistrableRec | GetRegistrable () const |
Является ли потоковый класс регистрируемым. | |
void | SetRegistrable (RegistrableRec regs=registrable) const |
Установить состояние регистрации потокового класса. | |
virtual ClassDescriptor | GetClassDescriptor (const VersionContainer &) const =0 |
Получить дескриптор класса | |
virtual const char * | GetPureName (const VersionContainer &) const |
Получить имя класса. | |
![]() | |
MbRefItem () | |
Конструктор без параметров. | |
refcount_t | GetUseCount () const |
Выдать количество ссылок (выдать количество владельцев объекта). | |
refcount_t | AddRef () const |
Увеличить количество ссылок на единицу. | |
refcount_t | DecRef () const |
Уменьшить количество ссылок на единицу. | |
refcount_t | Release () const |
Уменьшить количество ссылок на единицу и, если количество ссылок стало равным нулю, удалить себя. | |
![]() | |
void | Lock () const |
Включить блокировку (блокировка происходит только при наличии параллельности). | |
void | Unlock () const |
Снять блокировку, если она была установлена. | |
CommonRecursiveMutex * | GetLock () const |
Выдать указатель на объект мьютекса. Возращает c3d_null, если параллельности нет. Для использования в ScopedLock. | |
Защищенные члены | |
MbSmoothSurface (MbSurfaceCurve &crv1, MbSurfaceCurve &crv2, MbeSmoothForm fm, double d1, double d2) | |
Конструктор по двум кривым и типу сопряжения. Подробнее... | |
MbSmoothSurface (MbSurface &surf1, MbCurve &curv1, MbSurface &surf2, MbCurve &curv2, MbeSmoothForm fm, double d1, double d2) | |
Конструктор по двум кривым и типу сопряжения. Подробнее... | |
MbSmoothSurface (const MbSmoothSurface &, MbRegDuplicate *) | |
Конструктор копирования. | |
MbSmoothSurface (const MbSmoothSurface *) | |
Конструктор копирования с теми же опорными поверхностями. | |
void | CheckParam (double &u, double &v) const |
Корректировка параметров. | |
![]() | |
MbSurface () | |
Конструктор. | |
MbSurface (const MbSurface &) | |
Конструктор копирования. | |
void | MoveGabarit (const MbVector3D &v) |
Сдвинуть габарит. | |
void | NormalCalculation (const MbVector3D &uDer, const MbVector3D &vDer, double u, double v, bool ext, MbVector3D &nor) const |
Вычислить нормаль по известным производным uDer и vDer в точке с параметрами u, v. | |
double | StepAlong (double u, double v, double sag, bool alongU, double stepMinCoeff, const MbVector3D &der, const MbVector3D &sec) const |
Вычислить шаг по параметру для заданного прогиба. | |
double | DeviationStepAlong (double u, double v, double angle, bool alongU, const MbVector3D &der, const MbVector3D &sec) const |
Вычислить шаг по параметру для заданного углового отклонения нормали. | |
![]() | |
MbSpaceItem () | |
Конструктор без параметров. | |
Защищенные данные | |
MbSurfaceCurve * | curve1 |
Опорная кривая на первой поверхности (всегда не c3d_null). | |
MbSurfaceCurve * | curve2 |
Опорная кривая на второй поверхности (всегда не c3d_null). | |
MbeSmoothForm | form |
Тип сопряжения. | |
double | distance1 |
Радиус скругления или "катет" фаски со знаком для поверхности кривой curve1. | |
double | distance2 |
Радиус скругления или "катет" фаски со знаком для поверхности кривой curve2. | |
double | umin |
Минимальное значение параметра u. | |
double | umax |
Максимальное значение параметра u. | |
double | vmin |
Минимальное значение параметра v. | |
double | vmax |
Максимальное значение параметра v. | |
bool | uclosed |
Признак замкнутости по параметру u. | |
bool | poleMin |
Наличие полюса при umin. | |
bool | poleMax |
Наличие полюса при umax. | |
![]() | |
MbCube | cube |
Габаритный куб поверхности. Подробнее... | |
Поверхность сопряжения.
Поверхность сопряжения соединяет две кривые curve1 и curve2 на сопрягаемых поверхностях. Поверхность сопряжения является родительским классом поверхности скругления MbFilletSurface и поверхности фаски MbCamferSurface. В отличие от других поверхностей Функции PointOn и Derive... поверхностей сопряжения не корректируют первый параметр (u) при его выходе за пределы определения параметров (umin umax).
|
protected |
Конструктор по двум кривым и типу сопряжения.
Конструктор по двум кривым и типу сопряжения.
[in] | crv1 | - Опорная кривая на первой поверхности |
[in] | crv2 | - Опорная кривая на второй поверхности |
[in] | fm | - Тип сопряжения (0 - скругление, 1 - фаска) |
|
protected |
Конструктор по двум кривым и типу сопряжения.
Конструктор по двум кривым и типу сопряжения.
[in] | surf1 | - Первая поверхность |
[in] | curv1 | - Кривая в области определения первой поверхности |
[in] | surf2 | - Вторая поверхность |
[in] | curv2 | - Кривая в области определения второй поверхности |
[in] | fm | - Тип сопряжения (0 - скругление, 1 - фаска) |
|
pure virtual |
Коррекция средней линии поверхности скругления.
Коррекция средней линии поверхности скругления.
[in] | tmin | - Новый минимальный параметр средней линии |
[in] | tmax | - Новый максимальный параметр средней линии |
[in] | insertPoints | - Увеличить число контрольных точек средней кривоф. |
Замещается в MbFilletSurface и MbChamferSurface.
|
pure virtual |
Создать копию объекта.
Создать копию объекта с использованием регистратора. Регистратор используется для предотвращения многократного копирования объекта. Если объект содержит ссылки на другие объекты, то вложенные объекты так же копируются. Допустимо не передавать регистратор в функцию. Тогда будет создана новая копия объекта. При копировании одиночного объекта или набора не связанных между собой объектов допустимо не использовать регистратор. Регистратор необходимо использовать, если надо последовательно копировать несколько взаимосвязанных объектов. Возможно, что связь объектов обусловлена наличием в них ссылок на общие объекты. Тогда, при копировании без использования регистратора, можно получить набор копий, содержащих ссылки на разные копии одного и того же вложенного объекта, что ведет к потере связи между копиями.
[in] | iReg | - Регистратор. |
Замещает MbSurface.
Замещается в MbFilletSurface, MbChannelSurface и MbChamferSurface.
|
pure virtual |
Определить, являются ли объекты равными.
Равными считаются однотипные объекты, все данные которых одинаковы (равны).
[in] | item | - Объект для сравнения. |
[in] | accuracy | - Точность сравнения. |
Замещает MbSurface.
Замещается в MbFilletSurface, MbChannelSurface и MbChamferSurface.
|
pure virtual |
Сделать объекты равным, если они подобны.
Равными можно сделать только подобные объекты. Подобный объект приравнивается присланному путем изменения численных данных.
[in] | item | - Объект для инициализации. |
Замещает MbSurface.
Замещается в MbFilletSurface, MbChannelSurface и MbChamferSurface.
|
pure virtual |
Преобразовать объект согласно матрице.
Преобразовать исходный объект согласно матрице c использованием регистратора. Если объект содержит ссылки на другие геометрические объекты, то вложенные объекты так же преобразуются согласно матрице. Регистратор служит для предотвращения многократного преобразования объекта. Допустимо использовать функцию без регистратора, если надо преобразовать одиночный объект. Если надо преобразовать набор взаимосвязанных объектов, необходимо использовать регистратор для предотвращения повторного преобразования вложенных объектов, поскольку не исключена ситуация, когда несколько объектов из набора содержат ссылки на один или несколько общих объектов, подлежащих трансформации.
[in] | matr | - Матрица преобразования. |
[in] | iReg | - Регистратор. |
Замещает MbSurface.
Замещается в MbFilletSurface и MbChamferSurface.
|
pure virtual |
Сдвинуть объект вдоль вектора.
Сдвинуть геометрический объект вдоль вектора с использованием регистратора. Если объект содержит ссылки на другие геометрические объекты, то к вложенным объектам так же применяется операция сдвига. Регистратор служит для предотвращения многократного преобразования объекта. Допустимо использовать функцию без регистратора, если надо преобразовать одиночный объект. Если надо преобразовать набор взаимосвязанных объектов, необходимо использовать регистратор для предотвращения повторного преобразования вложенных объектов, поскольку не исключена ситуация, когда несколько объектов из набора содержат ссылки на один или несколько общих объектов, подлежащих сдвигу.
[in] | to | - Вектор сдвига. |
[in] | iReg | - Регистратор. |
Замещает MbSurface.
Замещается в MbFilletSurface и MbChamferSurface.
|
pure virtual |
Повернуть объект вокруг оси на заданный угол.
Повернуть объект вокруг оси на заданный угол с использованием регистратора. Если объект содержит ссылки на другие геометрические объекты, то к вложенным объектам так же применяется операция поворота. Регистратор служит для предотвращения многократного преобразования объекта. Допустимо использовать функцию без регистратора, если надо преобразовать одиночный объект. Если надо преобразовать набор взаимосвязанных объектов, необходимо использовать регистратор для предотвращения повторного преобразования вложенных объектов, поскольку не исключена ситуация, когда несколько объектов из набора содержат ссылки на один или несколько общих объектов, подлежащих повороту.
[in] | axis | - Ось поворота. |
[in] | angle | - Угол поворота. |
[in] | iReg | - Регистратор. |
Замещает MbSurface.
Замещается в MbFilletSurface и MbChamferSurface.
|
pure virtual |
Выдать свойства объекта.
Выдать внутренние данные (свойства) объекта для их просмотра и модификации.
[in] | properties | - Контейнер для внутренних данных объекта. |
Замещает MbSurface.
Замещается в MbFilletSurface, MbChannelSurface и MbChamferSurface.
|
pure virtual |
Изменить свойства объекта.
Изменение внутренних данных (свойств) объекта выполняется копированием соответствующих значений из присланного объекта.
[in] | properties | - Контейнер для внутренних данных объекта. |
Замещает MbSurface.
Замещается в MbFilletSurface и MbChamferSurface.
|
virtual |
Определить, замкнута ли поверхность по параметру u.
Определить, замкнута ли гладко поверхность по u-параметру без учета граничного контура. Всегда false для MbCurveBoundSurface. Рекомендуется использовать IsUPeriodic.
Замещает MbSurface.
|
virtual |
Определить, замкнута ли поверхность по параметру v.
Определить, замкнута ли гладко поверхность по v-параметру без учета граничного контура. Всегда false для MbCurveBoundSurface. Рекомендуется использовать IsVPeriodic.
Замещает MbSurface.
|
pure virtual |
Вычислить точку на поверхности.
Скорректировать параметры при выходе их за пределы прямоугольной области определения и вычислить точку на поверхности.
[in] | u | - Первый параметр поверхности. |
[in] | v | - Второй параметр поверхности. |
[out] | p | - Вычисленная точка на поверхности. |
Замещает MbSurface.
Замещается в MbFilletSurface и MbChamferSurface.
|
pure virtual |
Вычислить значения точки и производных для заданных параметров.
Значения точки и производных вычисляются в пределах области определения и на расширенной поверхности.
[in] | u | - Параметр. |
[in] | v | - Параметр. |
[in] | ext | - В пределах области определения (false), на расширенной поверхности (true). |
[out] | pnt | - Точка. |
[out] | uDer | - Производная по u. |
[out] | vDer | - Производная по v. |
[out] | uuDer | - Вторая производная по u, если не ноль. |
[out] | vvDer | - Вторая производная по v, если не ноль. |
[out] | uvDer | - Вторая производная по u и по v, если не ноль. |
Переопределяет метод предка MbSurface.
Замещается в MbFilletSurface и MbChamferSurface.
|
virtual |
Построить NURBS копию поверхности.
Строит NURBS поверхность, аппроксимирующую исходную с заданными параметрами по каждому направлению. В параметрах можно задать степень и количество узлов сплайна, диапазон изменения параметра кривой. Если в параметрах не задан флаг точной аппроксимации, то строит NURBS без кратных узлов.
[in] | uParam | - Параметры построения по направлению u. |
[in] | vParam | - Параметры построения по направлению v. |
Переопределяет метод предка MbSurface.
Переопределяется в MbFilletSurface.
|
virtual |
Объединить поверхности путём включения поверхности init в данную поверхность.
Объединить поверхности путём включения поверхности init в данную поверхность.
[in] | edge | - Кривая разделяющего ребра |
[in] | init | - Поверхность, которую нужно добавить в данную |
[in] | add | - Добавить в конец (true), добавить в начало (false) |
[in] | matr | - Матрица преобразования объектов с init в данную поверхность, |
[in] | seam | - Кривая другого разделяющего ребра (может быть c3d_null) |
Переопределяется в MbFilletSurface и MbChamferSurface.
MbCurve* MbSmoothSurface::CreateBound | ( | bool | s | ) | const |
Построить граничную кривую вдоль поверхности (V = const).
Построить граничную кривую вдоль поверхности (V = const).
[in] | s | - Если true, то вдоль минимального значения V, если false, то вдоль максимального значения V |
MbeCurveBuildType MbSmoothSurface::GetBuildType | ( | ) | const |
Вид опорных кривых.
Вид опорных кривых.
|
inline |
Форма поверхности.
Форма поверхности.
|
virtual |
Добавить точку в опорные кривые границы.
Добавить точку в опорные кривые границы.
Точка будет добавлена в кривую, если она имеет тип pt_LineSegment, pt_CubicSpline или pt_Hermit.
[out] | t1 | - Параметр точки на первой кривой (если add1 = true) |
[in] | p1 | - Точка на первой кривой |
[in] | add1 | - Нужно ли добавлять точку в первую кривую |
[out] | t2 | - Параметр точки на второй кривой (если add2 = true) |
[in] | p2 | - Точка на второй кривой |
[in] | add2 | - Нужно ли добавлять точку во вторую кривую |
Переопределяется в MbChannelSurface.
bool MbSmoothSurface::ProlongSurface | ( | double | u, |
const MbCartPoint & | p1, | ||
const MbCartPoint & | p2, | ||
bool | anyCase | ||
) |
Продлить поверхность.
Построить и добавить точки в опорные кривые до или после границы, удлиннив поверхность.
Точки будут построены и добавлены в кривые, если они имеют тип pt_Hermit.
[in] | t | - Первый параметр поверхности |
[in] | p1 | - Точка на первой кривой |
[in] | p2 | - Точка на второй кривой |
[in] | anyCase | - Штатная работа со значением false (true исключение). |
bool MbSmoothSurface::CurveStraighten | ( | double | t1, |
double | t2 | ||
) |
Скорректировать кривые.
Скорректировать опорные кривые после вставки точек.
Кривая будет скорректирована, если поверхность имеет полюс на краю, опорная кривая имеет тип pt_Hermit и содержит опорную точку с заданным параметром. Корректируется опорная точка кривой, ближайшая к точке с заданным параметром со стороны полюса поверхности.
[in] | t1 | - Параметр точки на первой опорной кривой. |
[in] | t2 | - Параметр точки на второй опорной кривой. |