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

Константы и переменные. Подробнее...

Классы

class  Math
 Общие статические данные алгоритмов и функций. Подробнее...
 

Пространства имен

 c3d
 Объявление пространства имен C3D.
 

Макросы

Общие константы
#define MB_MAXDOUBLE   (1.0E+300)
 Максимальное значение double 1.7976931348623158E+308.
 
#define MB_MINDOUBLE   (1.0E-300)
 Минимальное значение double 2.2250738585072014E-308.
 
#define M_E   2.71828182845904523536
 Экспонента.
 
#define M_LOG2E   1.44269504088896340736
 Логарифм M_E по основанию 2.
 
#define M_LOG10E   0.434294481903251827651
 Логарифм M_E по основанию 10.
 
#define M_LN2   0.693147180559945309417
 Натуральный логарифм 2.
 
#define M_PI_4   0.785398163397448309616
 M_PI / 4.0.
 
#define M_1_PI   0.318309886183790671538
 1.0 / M_PI
 
#define M_2_PI   0.636619772367581343076
 2.0 / M_PI
 
#define M_SQRT1_2   0.707106781186547524401
 Корень из одной второй, sqrt(1/2).
 
#define M_LN10   2.30258509299404568402
 Натуральный логарифм 10, ln(10).
 
#define M_PI   3.14159265358979323846
 Отношение длины окружности к её диаметру, pi.
 
#define M_PI_2   1.57079632679489661923
 M_PI / 2.0.
 
#define M_2_SQRTPI   1.12837916709551257390
 Два разделить на корень из числа пи, 2/sqrt(pi).
 
#define M_SQRT2   1.41421356237309504880
 Корень из двух, sqrt(2).
 
#define M_1_SQRTPI   0.564189583547756286948
 Единица, деленная на корень из числа пи, 1/sqrt(pi).
 
#define M_PI2   (M_PI*2.0)
 Отношение длины окружности к её радиусу, 2.0 * M_PI, 6.28318530717958647692.
 
#define M_DEGRAD   (M_PI/180.0)
 Коэффициент перевода градусов в радианы.
 
#define M_RADDEG   (180.0/M_PI)
 Коэффициент перевода радиан в градусы.
 
#define M_FI   1.61803398874989484
 Число золотого сечения, 1/M_FI = 0.6180339887499.
 
#define MM_INCH   25.4
 Количество миллиметров в дюйме.
 
#define EPSILON   1E-10
 Погрешность.
 
#define MAXIMON   1E+10
 10 в 10-й степени.
 
#define MAX_OVERALL_DIM   1E+12
 Максимальное значение габарита.
 
#define DETERMINANT_MAX   1E+137
 Максимальная величина.
 
#define DETERMINANT_MIN   1E-171
 Минимальная величина.
 
#define UNDEFINED_DBL   -MB_MAXDOUBLE
 Неопределенный double.
 
#define UNDEFINED_INT_T   SYS_MIN_ST
 Неопределенный int.
 
#define DEVIATION_SAG   M_PI * 0.04
 Угловая толерантность.
 
#define NULL_EPSILON   1E-30
 Погрешность для проверки на равенство нулю.
 
#define NULL_REGION   1E-20
 Погрешность для проверки на равенство нулю.
 
#define DOUBLE_EPSILON   1E-16
 Погрешность.
 
#define DOUBLE_REGION   1E-15
 Погрешность.
 
#define EXTENT_EQUAL   1E-14
 Погрешность.
 
#define EXTENT_EPSILON   1E-12
 Погрешность.
 
#define EXTENT_REGION   1E-11
 Погрешность.
 
#define LENGTH_EPSILON   1E-10
 Погрешность длины.
 
#define LENGTH_REGION   1E-9
 Погрешность региона.
 
#define METRIC_EPSILON   1E-8
 Погрешность расстояния в итерационных функциях.
 
#define METRIC_REGION   1E-7
 Неразличимая метрическая область.
 
#define METRIC_PRECISION   1E-6
 Метрическая погрешность.
 
#define METRIC_ACCURACY   1E-5
 Наибольшая метрическая погрешность (абсолютная точность в мм ("размер" атома 5e-8 мм)).
 
#define METRIC_NEAR   1E-4
 Метрическая близость.
 
#define PARAM_EPSILON   1E-8
 Погрешность параметра в итерационных функциях.
 
#define PARAM_REGION   1E-7
 Неразличимая параметрическая область.
 
#define PARAM_PRECISION   1E-6
 Параметрическая погрешность.
 
#define PARAM_ACCURACY   1E-5
 Наибольшая параметрическая погрешность.
 
#define PARAM_NEAR   1E-4
 Параметрическая близость.
 
#define ANGLE_EPSILON   PARAM_EPSILON*M_PI
 Погрешность угла.
 
#define ANGLE_REGION   ANGLE_EPSILON*40
 Погрешность угла, при которой углы считаются равными.
 
#define MB_AMBIENT   0.4
 Коэффициент рассеянного освещения (фон).
 
#define MB_DIFFUSE   0.7
 Коэффициент диффузного отражения.
 
#define MB_SPECULARITY   0.8
 Коэффициент зеркального отражения.
 
#define MB_SHININESS   50.0
 Блеск (показатель степени в законе зеркального отражения).
 
#define MB_OPACITY   1.0
 Коэффициент суммарного отражения (коэффициент непрозрачности).
 
#define MB_EMISSION   0.0
 Коэффициент излучения.
 
#define MB_DEFCOLOR   0x7F7F7F
 Цвет по умолчанию при импорте и экспорте (серый).
 
#define MB_C3DCOLOR   0xFF7F00
 Цвет по умолчанию для геометрических объектов.
 
#define MB_IDENTITY   0x00
 Битовые флаги для матрицы и локальной системы координат. Подробнее...
 
#define MB_TRANSLATION   0x01
 Присутствует смещение.
 
#define MB_ROTATION   0x02
 Присутствует вращение.
 
#define MB_SCALING   0x04
 Присутствует масштабирование (компонент не 1.0).
 
#define MB_REFLECTION   0x08
 Присутствует зеркальная инверсия.
 
#define MB_LEFT   0x08
 Присутствует зеркальная инверсия (признак левой системы координат).
 
#define MB_ORTOGONAL   0x10
 Присутствует ортогональность, взводится только в случае аффинности.
 
#define MB_AFFINE   0x20
 Отсутствует ортогональность и нормированность (аффинное преобразование).
 
#define MB_PERSPECTIVE   0x40
 Присутствует вектор перспективы (не нулевой).
 
#define MB_UNSET   0x80
 Битовые флаги не установлены.
 

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

Способ информирования о нарушении требований.~
enum  c3d::eAssertViolationNotify { c3d::avn_Mute, c3d::avn_CERR, c3d::avn_ASSERT }
 

Переменные

const double c3d::METRIC_DELTA = 0.05
 Величина отшагивания.
 
const double c3d::PARAM_DELTA_MIN = 0.005
 Минимальная доля приращения параметра.
 
const double c3d::PARAM_DELTA_MAX = 1.0
 Максимальная доля приращения параметра.
 
const double c3d::MIN_LENGTH = 1.0E-4
 Минимальная длина объекта.
 
const double c3d::MAX_LENGTH = 5.0E+7
 Максимальная длина объекта.
 
const double c3d::MIN_RADIUS = 1.0E-4
 Минимальный радиус объекта.
 
const double c3d::MAX_RADIUS = 2.5E+7
 Максимальный радиус объекта.
 
const double c3d::DELTA_MIN = 1E-3
 Коэффициент уменьшения.
 
const double c3d::DELTA_MID = 1E-2
 Коэффициент уменьшения.
 
const double c3d::DELTA_MOD = 1E-1
 Коэффициент уменьшения.
 
const double c3d::DELTA_MAX = 1E+3
 Коэффициент увеличения.
 
const double c3d::POWER_1 = 1E+1
 Коэффициент увеличения.
 
const double c3d::POWER_2 = 1E+2
 Коэффициент увеличения.
 
const double c3d::POWER_3 = 1E+3
 Коэффициент увеличения.
 
const double c3d::POWER_4 = 1E+4
 Коэффициент увеличения.
 
const double c3d::POWER_5 = 1E+5
 Коэффициент увеличения.
 
const double c3d::ONE_THIRD = 0.33333333333333333333
 1/3.
 
const double c3d::TWO_THIRD = 0.66666666666666666666
 2/3.
 
const double c3d::ONE_SIXTH = 0.166666666666666666667
 1/6.
 
const double c3d::ONE_FIFTH = 0.2
 1/5.
 
const double c3d::TWO_FIFTH = 0.4
 2/5.
 
const double c3d::ONE_QUARTER = 0.25
 1/4.
 
const double c3d::ONE_EIGHTH = 0.125
 1/8.
 
const double c3d::ONE_HALF = 0.5
 1/2.
 
const double c3d::_CONIC_MIN_ = 0.05
 Минимальный коэффициент полноты сечения поверхности сопряжения (при 0.5 - парабола, меньше - эллипс).
 
const double c3d::_CONIC_MAX_ = 0.95
 Максимальный коэффициент полноты сечения поверхности сопряжения (при 0.5 - парабола, больше - гипербола).
 
const double c3d::_ARC_ = 0.0
 Коэффициент полноты сечения поверхности скругления при u = const соответствует дуге окружности.
 
const int32 c3d::TEN = 10
 Число 10.
 
const int32 c3d::TWENTY = 20
 Число 20.
 
const int32 c3d::TESSERA_MAX = 4000
 Максимальное количество ячеек в строке и ряду триангуляционной сетки.
 
const int32 c3d::COUNT_MAX = 512
 Коэффициент увеличения.
 
const int32 c3d::COUNT_MID = 256
 Коэффициент увеличения.
 
const int32 c3d::COUNT_MIN = 128
 Коэффициент увеличения.
 
const int32 c3d::COUNT_BIN = 64
 Уровень вложенности.
 
const int32 c3d::WIRE_MAX = 256
 Максимальное количество линий отрисовочной сетки.
 
const int32 c3d::ITERATE_COUNT = 16
 Число приближений в итерационном методе.
 
const int32 c3d::ITERATE_LIMIT = 32
 Количество итераций для построения касательных окружностей.
 
const int32 c3d::NEWTON_COUNT = 8
 Число приближений в итерационном методе.
 
const int32 c3d::NEWTON_COUNT_2X = 16
 Число приближений в итерационном методе.
 
const int32 c3d::NEWTON_COUNT_3X = 24
 Число приближений в итерационном методе.
 
const int32 c3d::NEWTON_COUNT_4X = 32
 Число приближений в итерационном методе.
 
const int32 c3d::NEWTON_COUNT_8X = 64
 Число приближений в итерационном методе.
 
const int32 c3d::LIMIT_COUNT = 4
 Число приближений в итерационном методе.
 
const int32 c3d::COUNT_DELTA = 10
 Коэффициент увеличения или уменьшения.
 
const int32 c3d::COUNT_DELTA_2X = 20
 Коэффициент увеличения или уменьшения.
 
const int32 c3d::ITEMS_COUNT = 12
 Число точек в шаговом методе.
 
const int32 c3d::BEZIER_DEGREE = 4
 Порядок Безье-сплайна по умолчанию.
 
const int32 c3d::NURBS_DEGREE = 4
 Порядок NURBS по умолчанию.
 
const int32 c3d::NURBS_POINTS_COUNT = 6
 Число точек для NURBS по умолчанию для прямого редактирования.
 
const int32 c3d::NURBS_POINTS_MAX_COUNT = 100
 Максимальное число точек для NURBS по умолчанию для прямого редактирования.
 
const int32 c3d::APPROX_POINTS_MUL_COEFF = 3
 Коэффициент увеличения количества точек для метода наименьших квадратов.
 
const int32 c3d::SPACE_DIM = 3
 Размерность 3D-пространства.
 
const int32 c3d::TRT_FREE = 0
 Сопряжение отсутствует.
 
const int32 c3d::TRT_TANGENT = 1
 Сопряжение по касательной.
 
const int32 c3d::TRT_NORMAL = 2
 Сопряжение по нормали.
 

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

Константы и переменные.

Макросы

◆ MB_IDENTITY

#define MB_IDENTITY   0x00

Битовые флаги для матрицы и локальной системы координат.

Единичная матрица.