C3D Kernel  102057
Классы | Перечисления | Функции
Поверхности
Геометрические объекты
Граф связей класса Поверхности:

Классы

class  MbChamferSurface
 Поверхность фаски. Подробнее...
class  MbChannelSurface
 Поверхность скругления с переменным радиусом обычная или с сохранением кромки. Подробнее...
class  MbConeSurface
 Kоническая поверхность. Подробнее...
class  MbCoonsPatchSurface
 Поверхность Кунса на четырех кривых. Подробнее...
class  MbCornerSurface
 Треугольная поверхность на кривых. Подробнее...
class  MbCoverSurface
 Четырёхугольная поверхность на кривых. Подробнее...
class  MbCurveBoundedSurface
 Ограниченная кривыми поверхность. Подробнее...
class  MbCylinderSurface
 Цилиндрическая поверхность. Подробнее...
class  MbElementarySurface
 Элементарная поверхность. Подробнее...
class  MbElevationSurface
 Поверхность, проходящая через заданное семейство кривых, с направляющей. Подробнее...
class  MbEvolutionSurface
 Кинематическая поверхность. Подробнее...
class  MbExactionSurface
 Кинематическая поверхность с адаптацией. Подробнее...
class  MbExpansionSurface
 Поверхность плоскопараллельного движения. Подробнее...
class  MbExtrusionSurface
 Поверхность выдавливания. Подробнее...
class  MbFilletSurface
 Поверхность скругления с постоянными радиусами обычная или с сохранением кромки. Подробнее...
class  MbGregorySurface
 Поверхность на ограничивающем контуре. Подробнее...
class  MbGridSurface
 Поверхность на базе триангуляции. Подробнее...
class  MbJoinSurface
 Поверхность соединения. Подробнее...
class  MbLoftedSurface
 Поверхность, проходящая через заданное семейство кривых. Подробнее...
class  MbMeshSurface
 Поверхность на сетке кривых. Подробнее...
class  MbOffsetSurface
 Эквидистантная поверхность. Подробнее...
class  MbPlane
 Плоскость. Подробнее...
class  MbPolySurface
 Поверхность, заданная прямоугольной матрицей точек. Подробнее...
class  MbRevolutionSurface
 Поверхность вращения. Подробнее...
class  MbRuledSurface
 Линейчатая поверхность. Подробнее...
class  MbSectorSurface
 Секториальная поверхность. Подробнее...
class  MbSmoothSurface
 Поверхность сопряжения. Подробнее...
class  MbSphereSurface
 Cферическая поверхность. Подробнее...
class  MbSpiralSurface
 Спиральная поверхность. Подробнее...
class  MbSplineSurface
 NURBS поверхность. Подробнее...
class  MbSweptSurface
 Поверхность движения. Подробнее...
class  MbTorusSurface
 Tороидальная поверхность. Подробнее...
class  MbSurface
 Поверхность в трехмерном пространстве. Подробнее...

Перечисления

enum  MbeCoonsSurfaceCalcType { mcsv_DefaultType = 0, mcsv_LoftSurfType }
 Способ расчёта поверхности Кунса. Подробнее...
enum  MbeMeshSurfaceVersion { msv_Ver0 = 0, msv_Ver1, msv_Ver2, msv_Count }
 Версия реализации поверхности на сетке кривых. Подробнее...

Функции

MbeNewtonResult NearestPoints (const MbSurface &surface, bool ext0, const MbCurve3D &curve, bool ext1, double &u0, double &v0, double &t0, double &dmin, bool t0Calculated=false)
 Вычислить параметры ближайших точек поверхности и кривой.
MbeNewtonResult NearestPoints (const MbSurface &surface0, bool ext0, const MbSurface &surface1, bool ext1, double &u0, double &v0, double &u1, double &v1, double &dmin, bool checkCurvilinearBounds)
 Вычислить параметры ближайших точек поверхностей.
DEPRECATE_DECLARE MbeNewtonResult NearestPoints (const MbSurface &surface0, bool ext0, const MbSurface &surface1, bool ext1, double &u0, double &v0, double &u1, double &v1, double &dmin)
 Вычислить параметры ближайших точек поверхностей.

Функции для работы в области определения поверхности

Функции PointOn, Derive... поверхностей корректируют параметры при выходе их за пределы прямоугольной области определения параметров.
Исключения составляют:
1. MbPlane (плоскость)
Функции PointOn, Derive... плоскости не корректируют параметры при выходе их за пределы прямоугольной области определения параметров.
2. MbSmoothSurface и её наследники (поверхности скругления или фаски)
Функции PointOn и Derive... поверхностей сопряжения не корректируют первый параметр при его выходе за пределы определения параметров.

virtual void MbSurface::PointOn (double &u, double &v, MbCartPoint3D &p) const =0
 Вычислить точку на поверхности.
virtual void MbSurface::DeriveU (double &u, double &v, MbVector3D &) const =0
 Вычислить первую производную по u.
virtual void MbSurface::DeriveV (double &u, double &v, MbVector3D &) const =0
 Вычислить первую производную по v.
virtual void MbSurface::DeriveUU (double &u, double &v, MbVector3D &) const =0
 Вычислить вторую производную по u.
virtual void MbSurface::DeriveVV (double &u, double &v, MbVector3D &) const =0
 Вычислить вторую производную по v.
virtual void MbSurface::DeriveUV (double &u, double &v, MbVector3D &) const =0
 Вычислить вторую производную.
virtual void MbSurface::DeriveUUU (double &u, double &v, MbVector3D &) const =0
 Вычислить третью производную.
virtual void MbSurface::DeriveUUV (double &u, double &v, MbVector3D &) const =0
 Вычислить третью производную.
virtual void MbSurface::DeriveUVV (double &u, double &v, MbVector3D &) const =0
 Вычислить третью производную.
virtual void MbSurface::DeriveVVV (double &u, double &v, MbVector3D &) const =0
 Вычислить третью производную.
virtual void MbSurface::TangentU (double &u, double &v, MbVector3D &) const
 Вычислить касательный вектор по u.
virtual void MbSurface::TangentV (double &u, double &v, MbVector3D &) const
 Вычислить касательный вектор по v.
virtual void MbSurface::Normal (double &u, double &v, MbVector3D &) const
 Вычислить нормаль.
virtual void MbSurface::NormalU (double &u, double &v, MbVector3D &) const
 Вычислить производную нормали по U.
virtual void MbSurface::NormalV (double &u, double &v, MbVector3D &) const
 Вычислить производную нормали по V.

Функции для работы внутри и вне области определения поверхности

функции _PointOn, _Derive... поверхностей не корректируют параметры при выходе их за пределы прямоугольной области определения параметров.

virtual void MbSurface::_PointOn (double u, double v, MbCartPoint3D &p) const
 Вычислить точку на поверхности.
virtual void MbSurface::Explore (double &u, double &v, bool ext, MbCartPoint3D &pnt, MbVector3D &uDer, MbVector3D &vDer, MbVector3D *uuDer, MbVector3D *vvDer, MbVector3D *uvDer, MbVector3D *nor) const
 Вычислить значения точки и производных для заданных параметров.
virtual void MbSurface::_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 void MbSurface::_DeriveU (double u, double v, MbVector3D &) const
 Вычислить первую производную по u на расширенной поверхности.
virtual void MbSurface::_DeriveV (double u, double v, MbVector3D &) const
 Вычислить первую производную по v на расширенной поверхности.
virtual void MbSurface::_DeriveUU (double u, double v, MbVector3D &) const
 Вычислить вторую производную по u на расширенной поверхности.
virtual void MbSurface::_DeriveVV (double u, double v, MbVector3D &) const
 Вычислить вторую производную по v на расширенной поверхности.
virtual void MbSurface::_DeriveUV (double u, double v, MbVector3D &) const
 Вычислить вторую производную на расширенной поверхности.
virtual void MbSurface::_DeriveUUU (double u, double v, MbVector3D &) const
 Вычислить третью производную на расширенной поверхности.
virtual void MbSurface::_DeriveUUV (double u, double v, MbVector3D &) const
 Вычислить третью производную на расширенной поверхности.
virtual void MbSurface::_DeriveUVV (double u, double v, MbVector3D &) const
 Вычислить третью производную на расширенной поверхности.
virtual void MbSurface::_DeriveVVV (double u, double v, MbVector3D &) const
 Вычислить третью производную на расширенной поверхности.
virtual void MbSurface::_TangentU (double u, double v, MbVector3D &) const
 Вычислить касательный вектор по u на расширенной поверхности.
virtual void MbSurface::_TangentV (double u, double v, MbVector3D &) const
 Вычислить касательный вектор по v на расширенной поверхности.
virtual void MbSurface::_Normal (double u, double v, MbVector3D &) const
 Вычислить нормаль на расширенной поверхности.
virtual void MbSurface::_NormalU (double u, double v, MbVector3D &) const
 Вычислить производную нормали на расширенной поверхности.
virtual void MbSurface::_NormalV (double u, double v, MbVector3D &) const
 Вычислить производную нормали на расширенной поверхности.
virtual void MbSurface::_NormalUU (double u, double v, MbVector3D &) const
 Вычислить вторую производную нормали на расширенной поверхности.
virtual void MbSurface::_NormalUV (double u, double v, MbVector3D &) const
 Вычислить вторую производную нормали на расширенной поверхности.
virtual void MbSurface::_NormalVV (double u, double v, MbVector3D &) const
 Вычислить вторую производную нормали на расширенной поверхности.
virtual void MbSurface::_NormalD (double u, double v, double du, double dv, MbVector3D &der) const
 Вычислить производную нормали в точке с параметрами u v вдоль линии du dv.

Функции движения по поверхности

virtual double MbSurface::StepU (double u, double v, double sag) const
 Вычислить шаг параметра.
virtual double MbSurface::StepV (double u, double v, double sag) const
 Вычислить шаг параметра.
virtual double MbSurface::DeviationStepU (double u, double v, double angle) const
 Вычислить шаг параметра.
virtual double MbSurface::DeviationStepV (double u, double v, double angle) const
 Вычислить шаг параметра.
virtual double MbSurface::MetricStepU (double u, double v, double length) const
 Вычислить шаг параметра.
virtual double MbSurface::MetricStepV (double u, double v, double length) const
 Вычислить шаг параметра.
double MbSurface::SurfaceStep (const double &u, const double &v, bool alongU, const MbStepData &stepData) const
 Вычислить шаг параметра.
virtual size_t MbSurface::GetUCount () const
 Количество разбиений по параметру u для проверки событий.
virtual size_t MbSurface::GetVCount () const
 Количество разбиений по параметру v для проверки событий.

Перечисления

Способ расчёта поверхности Кунса.

Элементы перечислений:
mcsv_DefaultType 

Способ по умолчанию.

mcsv_LoftSurfType 

Способ расчёта для построения поверхности по сечениям.

Версия реализации поверхности на сетке кривых.

Элементы перечислений:
msv_Ver0 

Первая версия.

msv_Ver1 

Вторая версия.

msv_Ver2 

Третья версия.

msv_Count 

Количество версий.


Функции

virtual void MbSurface::PointOn ( double &  u,
double &  v,
MbCartPoint3D p 
) const [pure virtual]

Скорректировать параметры при выходе их за пределы прямоугольной области определения и вычислить точку на поверхности.

Аргументы:
[in]u- Первый параметр поверхности.
[in]v- Второй параметр поверхности.
[out]p- Вычисленная точка на поверхности.

Замещается в MbChamferSurface, MbConeSurface, MbCoonsPatchSurface, MbCornerSurface, MbCoverSurface, MbCurveBoundedSurface, MbCylinderSurface, MbElementarySurface, MbElevationSurface, MbEvolutionSurface, MbExactionSurface, MbExpansionSurface, MbExtrusionSurface, MbFilletSurface, MbGregorySurface, MbGridSurface, MbJoinSurface, MbLoftedSurface, MbMeshSurface, MbOffsetSurface, MbPlane, MbPolySurface, MbRevolutionSurface, MbRuledSurface, MbSectorSurface, MbSmoothSurface, MbSphereSurface, MbSpiralSurface, MbSplineSurface, MbSweptSurface и MbTorusSurface.

virtual void MbSurface::_PointOn ( double  u,
double  v,
MbCartPoint3D p 
) const [virtual]

Вычислить точку на поверхности в том числе и за пределами области определения параметров.

Аргументы:
[in]u- Первый параметр поверхности.
[in]v- Второй параметр поверхности.
[out]p- Вычисленная точка на поверхности.

Переопределяется в MbChamferSurface, MbConeSurface, MbCoonsPatchSurface, MbCornerSurface, MbCoverSurface, MbCurveBoundedSurface, MbCylinderSurface, MbElevationSurface, MbEvolutionSurface, MbExactionSurface, MbExpansionSurface, MbExtrusionSurface, MbFilletSurface, MbGregorySurface, MbGridSurface, MbJoinSurface, MbLoftedSurface, MbMeshSurface, MbOffsetSurface, MbPlane, MbRevolutionSurface, MbRuledSurface, MbSectorSurface, MbSphereSurface, MbSpiralSurface, MbSplineSurface и MbTorusSurface.

virtual void MbSurface::Explore ( double &  u,
double &  v,
bool  ext,
MbCartPoint3D pnt,
MbVector3D uDer,
MbVector3D vDer,
MbVector3D uuDer,
MbVector3D vvDer,
MbVector3D uvDer,
MbVector3D nor 
) const [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, если не ноль.

Переопределяется в MbChamferSurface, MbConeSurface, MbCoonsPatchSurface, MbCornerSurface, MbCoverSurface, MbCurveBoundedSurface, MbCylinderSurface, MbElementarySurface, MbElevationSurface, MbEvolutionSurface, MbExactionSurface, MbExpansionSurface, MbExtrusionSurface, MbFilletSurface, MbGregorySurface, MbGridSurface, MbJoinSurface, MbLoftedSurface, MbMeshSurface, MbOffsetSurface, MbPlane, MbPolySurface, MbRevolutionSurface, MbRuledSurface, MbSectorSurface, MbSmoothSurface, MbSphereSurface, MbSpiralSurface, MbSplineSurface, MbSweptSurface и MbTorusSurface.

virtual void MbSurface::_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]

Значения точки и производных вычисляются на расширенной поверхности.

Аргументы:
[in]u- Параметр.
[in]v- Параметр.
[out]pnt- Точка.
[out]deru- Производная по u.
[out]derv- Производная по v.
[out]norm- Нормаль.
[out]noru- Производная нормали по u.
[out]norv- Производная нормали по v.
[out]deruu- Вторая производная по u.
[out]dervv- Вторая производная по v.
[out]deruv- Вторая производная по u и по v.

Переопределяется в MbConeSurface, MbCurveBoundedSurface, MbCylinderSurface, MbFilletSurface, MbOffsetSurface, MbPlane, MbSphereSurface и MbTorusSurface.

virtual double MbSurface::StepU ( double  u,
double  v,
double  sag 
) const [virtual]

Вычислить шаг параметра для аппроксимации поверхности по величине прогиба вдоль линии с постоянным значением v. Вычисление шага проходит с учетом радиуса кривизны. Шаг аппроксимации вдоль кривой выбирается таким образом, чтобы отклонение кривой от ее полигона не превышало заданную величину прогиба.

Аргументы:
[in]u- Параметр, определяющий точку на поверхности.
[in]v- Параметр, определяющий точку на поверхности.
[in]sag- Максимально допустимая величина прогиба.
Возвращает:
Величина шага по параметру в заданной точке.

Переопределяется в MbChamferSurface, MbConeSurface, MbCornerSurface, MbCoverSurface, MbCurveBoundedSurface, MbCylinderSurface, MbElementarySurface, MbEvolutionSurface, MbExpansionSurface, MbExtrusionSurface, MbFilletSurface, MbGregorySurface, MbGridSurface, MbJoinSurface, MbLoftedSurface, MbMeshSurface, MbOffsetSurface, MbPlane, MbRevolutionSurface, MbRuledSurface, MbSectorSurface, MbSphereSurface, MbSpiralSurface, MbSplineSurface и MbTorusSurface.

virtual double MbSurface::StepV ( double  u,
double  v,
double  sag 
) const [virtual]

Вычислить шаг параметра для аппроксимации поверхности по величине прогиба вдоль линии с постоянным значением u. Вычисление шага проходит с учетом радиуса кривизны. Шаг аппроксимации вдоль кривой выбирается таким образом, чтобы отклонение кривой от ее полигона не превышало заданную величину прогиба.

Аргументы:
[in]u- Параметр, определяющий точку на поверхности.
[in]v- Параметр, определяющий точку на поверхности.
[in]sag- Максимально допустимая величина прогиба.
Возвращает:
Величина шага по параметру в заданной точке.

Переопределяется в MbChamferSurface, MbConeSurface, MbCornerSurface, MbCoverSurface, MbCurveBoundedSurface, MbCylinderSurface, MbElementarySurface, MbElevationSurface, MbEvolutionSurface, MbExpansionSurface, MbExtrusionSurface, MbFilletSurface, MbGridSurface, MbJoinSurface, MbLoftedSurface, MbMeshSurface, MbOffsetSurface, MbPlane, MbRevolutionSurface, MbRuledSurface, MbSectorSurface, MbSphereSurface, MbSpiralSurface, MbSplineSurface и MbTorusSurface.

virtual double MbSurface::DeviationStepU ( double  u,
double  v,
double  angle 
) const [virtual]

Вычислить шаг параметра для аппроксимации поверхности по углу отклонения касательной вдоль линии с постоянным значением u. Шаг аппроксимации вдоль кривой выбирается таким образом, чтобы угловое отклонение касательной к кривой в следующей точке не превышало заданную величину ang.

Аргументы:
[in]u- Параметр, определяющий точку на поверхности.
[in]v- Параметр, определяющий точку на поверхности.
[in]ang- Максимально допустимый угол отклонения касательной.
Возвращает:
Величина шага по параметру в заданной точке.

Переопределяется в MbChamferSurface, MbConeSurface, MbCornerSurface, MbCoverSurface, MbCurveBoundedSurface, MbCylinderSurface, MbElementarySurface, MbEvolutionSurface, MbExpansionSurface, MbExtrusionSurface, MbFilletSurface, MbGregorySurface, MbGridSurface, MbJoinSurface, MbLoftedSurface, MbMeshSurface, MbOffsetSurface, MbPlane, MbRevolutionSurface, MbRuledSurface, MbSectorSurface, MbSphereSurface, MbSpiralSurface, MbSplineSurface и MbTorusSurface.

virtual double MbSurface::DeviationStepV ( double  u,
double  v,
double  angle 
) const [virtual]

Вычислить шаг параметра для аппроксимации поверхности по углу отклонения касательной вдоль линии с постоянным значением v. Шаг аппроксимации вдоль кривой выбирается таким образом, чтобы угловое отклонение касательной к кривой в следующей точке не превышало заданную величину ang.

Аргументы:
[in]u- Параметр, определяющий точку на поверхности.
[in]v- Параметр, определяющий точку на поверхности.
[in]ang- Максимально допустимый угол отклонения касательной.
Возвращает:
Величина шага по параметру в заданной точке.

Переопределяется в MbChamferSurface, MbConeSurface, MbCornerSurface, MbCoverSurface, MbCurveBoundedSurface, MbCylinderSurface, MbElementarySurface, MbElevationSurface, MbEvolutionSurface, MbExpansionSurface, MbExtrusionSurface, MbFilletSurface, MbGridSurface, MbJoinSurface, MbLoftedSurface, MbMeshSurface, MbOffsetSurface, MbPlane, MbRevolutionSurface, MbRuledSurface, MbSectorSurface, MbSphereSurface, MbSpiralSurface, MbSplineSurface и MbTorusSurface.

virtual double MbSurface::MetricStepU ( double  u,
double  v,
double  length 
) const [virtual]

Вычислить шаг параметра для аппроксимации поверхности по заданной метрической длине шага вдоль линии с постоянным значением u.

Аргументы:
[in]u- Параметр, определяющий точку на поверхности.
[in]v- Параметр, определяющий точку на поверхности.
[in]len- Заданная метрическая длина.
Возвращает:
Величина шага по параметру в заданной точке.

Переопределяется в MbConeSurface, MbCurveBoundedSurface, MbCylinderSurface, MbElementarySurface, MbEvolutionSurface, MbExtrusionSurface, MbJoinSurface, MbPlane, MbRevolutionSurface, MbSphereSurface, MbSpiralSurface и MbTorusSurface.

virtual double MbSurface::MetricStepV ( double  u,
double  v,
double  length 
) const [virtual]

Вычислить шаг параметра для аппроксимации поверхности по заданной метрической длине шага вдоль линии с постоянным значением v.

Аргументы:
[in]u- Параметр, определяющий точку на поверхности.
[in]v- Параметр, определяющий точку на поверхности.
[in]len- Заданная метрическая длина.
Возвращает:
Величина шага по параметру в заданной точке.

Переопределяется в MbChamferSurface, MbConeSurface, MbCurveBoundedSurface, MbCylinderSurface, MbElementarySurface, MbEvolutionSurface, MbExtrusionSurface, MbFilletSurface, MbPlane, MbRevolutionSurface, MbRuledSurface, MbSectorSurface, MbSphereSurface, MbSpiralSurface и MbTorusSurface.

double MbSurface::SurfaceStep ( const double &  u,
const double &  v,
bool  alongU,
const MbStepData stepData 
) const

Вычислить шаг одного из параметров для аппроксимации поверхности или по угловому отклонению нормали, или по величине прогиба, или по метрической длине.

Аргументы:
[in]u- Первый параметр поверхности.
[in]v- Второй параметр поверхности.
[in]alongU- Вдоль первого (true) или второго (false) параметра поверхности.
[in]stepData- Данные для вычисления шага.
Возвращает:
Величина шага по параметру в заданной точке.
MbeNewtonResult NearestPoints ( const MbSurface surface,
bool  ext0,
const MbCurve3D curve,
bool  ext1,
double &  u0,
double &  v0,
double &  t0,
double &  dmin,
bool  t0Calculated = false 
)

Вычислить параметры ближайших точек поверхности и кривой и расстояние между этими точками.

Аргументы:
[in]surface- Поверхность.
[in]ext0- Признак поиска на продолжении поверхности.
[in]curve- Кривая.
[in]ext1- Признак поиска на продолжении кривой.
[in,out]u0- Параметр u точки поверхности.
[in,out]v0- Параметр v точки поверхности.
[in,out]t0- Параметр точки кривой.
[out]dmin- Расстояние между точками.
[in]tCalc- Флаг инициялизации t0
если true, то входные параметры u0, v0, t0 считаются начальными приближениями.
Возвращает:
Возвращает nr_Success (+1) или nr_Special(0) в случае успешного определения, в случае неудачи возвращает nr_Failure(-1).
MbeNewtonResult NearestPoints ( const MbSurface surface0,
bool  ext0,
const MbSurface surface1,
bool  ext1,
double &  u0,
double &  v0,
double &  u1,
double &  v1,
double &  dmin,
bool  checkCurvilinearBounds 
)

Вычислить параметры ближайших точек поверхностей и расстояние между этими точками.

Аргументы:
[in]surface0- Поверхность.
[in]ext0- Признак поиска на продолжении поверхности surface0.
[in]surface1- Поверхность.
[in]ext1- Признак поиска на продолжении поверхности surface1.
[out]u0- Параметр u точки поверхности surface0.
[out]v0- Параметр v точки поверхности surface0.
[out]u1- Параметр u точки поверхности surface1.
[out]v1- Параметр v точки поверхности surface1.
[out]dmin- Расстояние между точками поверхностей.
[in]checkCurvilinearBounds- Всегда проверять по криволинейным границам (если они есть).
Возвращает:
Возвращает nr_Success (+1) или nr_Special(0) в случае успешного определения, в случае неудачи возвращает nr_Failure(-1).
DEPRECATE_DECLARE MbeNewtonResult NearestPoints ( const MbSurface surface0,
bool  ext0,
const MbSurface surface1,
bool  ext1,
double &  u0,
double &  v0,
double &  u1,
double &  v1,
double &  dmin 
) [inline]

Вычислить параметры ближайших точек поверхностей и расстояние между этими точками. Криволинейные границы поверхностей не учитываются.

Аргументы:
[in]surface0- Поверхность.
[in]ext0- Признак поиска на продолжении поверхности surface0.
[in]surface1- Поверхность.
[in]ext1- Признак поиска на продолжении поверхности surface1.
[out]u0- Параметр u точки поверхности surface0.
[out]v0- Параметр v точки поверхности surface0.
[out]u1- Параметр u точки поверхности surface1.
[out]v1- Параметр v точки поверхности surface1.
[out]dmin- Расстояние между точками поверхностей.
[in]checkCurvilinearBounds- Всегда проверять по криволинейным границам (если они есть).
Возвращает:
Возвращает nr_Success (+1) или nr_Special(0) в случае успешного определения, в случае неудачи возвращает nr_Failure(-1).
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Макросы