C3D Toolkit
Kernel - 105435, Vision - 121811.105435
|
Маркер со свойствами геометрического объекта. Подробнее...
#include <marker.h>
Открытые члены | |
MbMarker (const MbMarker &) | |
Конструктор копирования. | |
MbMarker (const MbCartPoint3D &, const MbVector3D &) | |
Конструктор по точке и вектору. | |
MbMarker (const MbCartPoint3D &, const MbVector3D &, const MbVector3D &) | |
Конструктор по точке и векторам. | |
virtual | ~MbMarker () |
Деструктор. | |
virtual MbeSpaceType | IsA () const |
Получить тип объекта. | |
virtual MbeSpaceType | Type () const |
Получить групповой тип объекта. | |
virtual MbSpaceItem & | Duplicate (MbRegDuplicate *=NULL) const |
Создать копию объекта. Подробнее... | |
virtual void | Transform (const MbMatrix3D &, MbRegTransform *=NULL) |
Преобразовать объект согласно матрице. Подробнее... | |
virtual void | Move (const MbVector3D &, MbRegTransform *=NULL) |
Сдвинуть объект вдоль вектора. Подробнее... | |
virtual void | Rotate (const MbAxis3D &, double angle, MbRegTransform *=NULL) |
Повернуть объект вокруг оси на заданный угол. Подробнее... | |
virtual bool | IsSame (const MbSpaceItem &other, double accuracy=LENGTH_EPSILON) const |
Определить, являются ли объекты равными. Подробнее... | |
virtual bool | IsSimilar (const MbSpaceItem &init) const |
Определить, являются ли объекты подобными. Подробнее... | |
virtual bool | SetEqual (const MbSpaceItem &init) |
Сделать объекты равным, если они подобны. Подробнее... | |
virtual double | DistanceToPoint (const MbCartPoint3D &) const |
Определить расстояние до точки. Подробнее... | |
virtual void | AddYourGabaritTo (MbCube &r) const |
Расширить присланный габаритный куб так, чтобы он включал в себя данный объект. Подробнее... | |
virtual void | CalculateMesh (const MbStepData &stepData, const MbFormNote ¬e, MbMesh &mesh) const |
Построить полигональную копию mesh. Подробнее... | |
virtual MbProperty & | CreateProperty (MbePrompt n) const |
Создать собственное свойство с заданием его имени. | |
virtual void | GetProperties (MbProperties &properties) |
Выдать свойства объекта. Подробнее... | |
virtual void | SetProperties (const MbProperties &properties) |
Изменить свойства объекта. Подробнее... | |
virtual void | GetBasisPoints (MbControlData3D &) const |
Выдать контрольные точки объекта. | |
virtual void | SetBasisPoints (const MbControlData3D &) |
Изменить объект по контрольным точкам. | |
Функции маркера. | |
const MbCartPoint3D & | GetOrigin () const |
Получить точку маркера. | |
const MbVector3D & | GetAxisX () const |
Получить ось маркера. | |
const MbVector3D & | GetAxisZ () const |
Получить вторую ось маркера. | |
void | SetNullX () |
Задать нулевую ось X. | |
MbMarker & | InvertZ () |
Перевернуть ось Z. | |
![]() | |
virtual | ~MbLegend () |
Деструктор. | |
virtual MbeSpaceType | Family () const |
Получить семейство объекта. | |
virtual void | CalculateLocalGabarit (const MbMatrix3D &into, MbCube &cube) const |
Рассчитать габарит в локальной системы координат. Подробнее... | |
![]() | |
virtual | ~MbSpaceItem () |
Деструктор. | |
void | PrepareWrite () |
Регистрация объекта. Подробнее... | |
virtual MbeRefType | RefType () const |
Получить регистрационный тип (для копирования, дублирования). | |
virtual bool | IsFamilyRegistrable () const |
Принадлежит ли объект к регистрируемому семейству. | |
virtual void | Refresh () |
Перевести все временные (mutable) данные объекта в неопределённое (исходное) состояние. | |
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 &other) | |
Конструктор копирования | |
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 |
Уменьшить количество ссылок на единицу и, если количество ссылок стало равным нулю, удалить себя. | |
Дополнительные унаследованные члены | |
![]() | |
MbLegend () | |
Конструктор. | |
![]() | |
MbSpaceItem () | |
Конструктор без параметров. | |
Маркер со свойствами геометрического объекта.
Термин "Маркер" позаимствован из книги Г.Крамера, Geometric constraint solving in kinematics.
С помощью маркера можно задавать вспомогательные построения, передавать геометрию кинематических соединений или сопряжений. Маркер всегда принадлежит какому-то подпространству, например, ЛСК твердого тела.
Для маркера всегда выполняется требование; его вектора (в отличие от локальной системы координат) всегда ортонормированы. Ось Z всегда нормирована, ось X всегда ортогональна Z (может быть, что X = 0). Маркер может задавать любые геометрические объекты, которые удобно задать точкой или векторами; это унифицированная форма записи таких объектов, как точка, прямая, плоскость, ортонормированная правая СК и т.д. При дополнении маркера радиусом он используется, как сжатая форма записи цилиндра, окружности, сферы, тора и т.д.
|
virtual |
Создать копию объекта.
Создать копию объекта с использованием регистратора. Регистратор используется для предотвращения многократного копирования объекта. Если объект содержит ссылки на другие объекты, то вложенные объекты так же копируются. Допустимо не передавать регистратор в функцию. Тогда будет создана новая копия объекта. При копировании одиночного объекта или набора не связанных между собой объектов допустимо не использовать регистратор. Регистратор необходимо использовать, если надо последовательно копировать несколько взаимосвязанных объектов. Возможно, что связь объектов обусловлена наличием в них ссылок на общие объекты. Тогда, при копировании без использования регистратора, можно получить набор копий, содержащих ссылки на разные копии одного и того же вложенного объекта, что ведет к потере связи между копиями.
[in] | iReg | - Регистратор. |
Замещает MbLegend.
|
virtual |
Преобразовать объект согласно матрице.
Преобразовать исходный объект согласно матрице c использованием регистратора. Если объект содержит ссылки на другие геометрические объекты, то вложенные объекты так же преобразуются согласно матрице. Регистратор служит для предотвращения многократного преобразования объекта. Допустимо использовать функцию без регистратора, если надо преобразовать одиночный объект. Если надо преобразовать набор взаимосвязанных объектов, необходимо использовать регистратор для предотвращения повторного преобразования вложенных объектов, поскольку не исключена ситуация, когда несколько объектов из набора содержат ссылки на один или несколько общих объектов, подлежащих трансформации.
[in] | matr | - Матрица преобразования. |
[in] | iReg | - Регистратор. |
Замещает MbLegend.
|
virtual |
Сдвинуть объект вдоль вектора.
Сдвинуть геометрический объект вдоль вектора с использованием регистратора. Если объект содержит ссылки на другие геометрические объекты, то к вложенным объектам так же применяется операция сдвига. Регистратор служит для предотвращения многократного преобразования объекта. Допустимо использовать функцию без регистратора, если надо преобразовать одиночный объект. Если надо преобразовать набор взаимосвязанных объектов, необходимо использовать регистратор для предотвращения повторного преобразования вложенных объектов, поскольку не исключена ситуация, когда несколько объектов из набора содержат ссылки на один или несколько общих объектов, подлежащих сдвигу.
[in] | to | - Вектор сдвига. |
[in] | iReg | - Регистратор. |
Замещает MbLegend.
|
virtual |
Повернуть объект вокруг оси на заданный угол.
Повернуть объект вокруг оси на заданный угол с использованием регистратора. Если объект содержит ссылки на другие геометрические объекты, то к вложенным объектам так же применяется операция поворота. Регистратор служит для предотвращения многократного преобразования объекта. Допустимо использовать функцию без регистратора, если надо преобразовать одиночный объект. Если надо преобразовать набор взаимосвязанных объектов, необходимо использовать регистратор для предотвращения повторного преобразования вложенных объектов, поскольку не исключена ситуация, когда несколько объектов из набора содержат ссылки на один или несколько общих объектов, подлежащих повороту.
[in] | axis | - Ось поворота. |
[in] | angle | - Угол поворота. |
[in] | iReg | - Регистратор. |
Замещает MbLegend.
|
virtual |
Определить, являются ли объекты равными.
Равными считаются однотипные объекты, все данные которых одинаковы (равны).
[in] | item | - Объект для сравнения. |
[in] | accuracy | - Точность сравнения. |
Замещает MbLegend.
|
virtual |
Определить, являются ли объекты подобными.
Подобными считаются однотипные объекты, данные которых можно приравнять или данные так же являются подобными (указатели). Подобный объект можно инициализировать по данным подобного ему объекта (приравнять один другому без изменения адресов).
[in] | item | - Объект для сравнения. |
Замещает MbLegend.
|
virtual |
Сделать объекты равным, если они подобны.
Равными можно сделать только подобные объекты. Подобный объект приравнивается присланному путем изменения численных данных.
[in] | item | - Объект для инициализации. |
Замещает MbLegend.
|
virtual |
Определить расстояние до точки.
Определить расстояние до точки.
[in] | point | - Точка. |
Замещает MbLegend.
|
virtual |
Расширить присланный габаритный куб так, чтобы он включал в себя данный объект.
Расширить присланный габаритный куб так, чтобы он включал в себя данный объект.
[in,out] | cube | - Принимающий габаритный куб с информацией по габаритам. |
Замещает MbLegend.
|
virtual |
Построить полигональную копию mesh.
Построить полигональную копию данного объекта, представленную полигонами, или/и плоскими пластинами.
[in] | stepData | - Данные для вычисления шага при построении полигонального. |
[in] | note | - Способ построения полигонального объекта. |
[in,out] | mesh | - Построенный полигональный объект. |
Замещает MbLegend.
|
virtual |
Выдать свойства объекта.
Выдать внутренние данные (свойства) объекта для их просмотра и модификации.
[in] | properties | - Контейнер для внутренних данных объекта. |
Замещает MbLegend.
|
virtual |
Изменить свойства объекта.
Изменение внутренних данных (свойств) объекта выполняется копированием соответствующих значений из присланного объекта.
[in] | properties | - Контейнер для внутренних данных объекта. |
Замещает MbLegend.