C3D Kernel  104065
Открытые члены | Защищенные члены | Защищенные данные

Вставка двумерных объектов эскиза. Подробнее...

Граф наследования:MbPlaneInstance:
Inheritance graph
[см. легенду]
Граф связей класса MbPlaneInstance:
Collaboration graph
[см. легенду]

Полный список членов класса

Открытые члены

 MbPlaneInstance (MbPlaneItem &, const MbPlacement3D &)
 Конструктор по двумерному объекту и локальной системе координат.
template<class PlaneItems >
 MbPlaneInstance (const MbPlacement3D &, const PlaneItems &)
 Конструктор по двумерным объектам и локальной системе координат.
virtual ~MbPlaneInstance ()
 Деструктор
 VISITING_CLASS (MbPlaneInstance)
virtual MbeSpaceType IsA () const
 Получить тип объекта.
virtual MbSpaceItemDuplicate (MbRegDuplicate *iReg=NULL) const
 Создать копию объекта.
virtual void Transform (const MbMatrix3D &, MbRegTransform *iReg=NULL)
 Преобразовать объект согласно матрице.
virtual void Move (const MbVector3D &, MbRegTransform *iReg=NULL)
 Сдвинуть объект вдоль вектора.
virtual void Rotate (const MbAxis3D &, double angle, MbRegTransform *iReg=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 CalculateLocalGabarit (const MbMatrix3D &into, MbCube &cube) const
 Рассчитать габарит в локальной системы координат.
virtual void CalculateWire (const MbStepData &stepData, MbMesh &) const
 Создать полигональную копию.
virtual MbPropertyCreateProperty (MbePrompt n) const
 Создать собственное свойство с заданием его имени.
virtual void GetProperties (MbProperties &)
 Выдать свойства атрибутов.
virtual void SetProperties (const MbProperties &)
 Установить свойства атрибутов.
virtual void GetBasisPoints (MbControlData &) const
virtual void SetBasisPoints (const MbControlData &)
virtual bool GetPlacement (MbPlacement3D &) const
 Получить систему координат объекта, если она есть. Функция вернет true, если объект имеет собственную подсистему координат, иначе считается, что ЛСК объекта всегда "стандартная" (MbPlacement3D::global).
virtual bool SetPlacement (const MbPlacement3D &)
 Установить систему координат объекта, если возможно.
virtual MbItemCreateMesh (const MbStepData &stepData, const MbFormNote &note, MbRegDuplicate *iReg) const
 Создать полигональный объект.
virtual const MbItemFindItem (const MbPlaneItem *s, MbPath &path, MbMatrix3D &from) const
 Найти объект по геометрическому объекту.
Общие функции вставки двумерного объекта.
size_t PlaneItemsCount () const
 Выдать число двумерных геометрических объектов.
const MbPlaneItemGetPlaneItem (size_t ind=0) const
 Выдать двумерный геометрический объект.
MbPlaneItemSetPlaneItem (size_t ind=0)
 Выдать двумерный геометрический объект для возможного редактирования.
void SetPlaneItem (MbPlaneItem *init, size_t ind=0)
 Заменить двумерный геометрический объект.
void AddPlaneItem (MbPlaneItem *init)
 Добавить двумерный геометрический объект.
const MbPlacement3DGetPlacement () const
 Выдать локальную систему координат объекта.
MbPlacement3DSetPlacement ()
 Выдать локальную систему координат объекта для редактирования.
void Transform (const MbMatrix &, MbRegTransform *iReg=NULL)
 Преобразовать двумерный объект согласно матрице.
void Move (const MbVector &, MbRegTransform *iReg=NULL)
 Сдвинуть двумерный объект вдоль вектора.
void Rotate (const MbCartPoint &pnt, const MbDirection &angle, MbRegTransform *iReg=NULL)
 Повернуть двумерный объект вокруг точки на заданный угол.
void Rotate (const MbCartPoint &pnt, double angle, MbRegTransform *iReg=NULL)
 Повернуть двумерный объект вокруг точки на заданный угол.
void DeleteItems ()
 Удалить все объекты эскиза.
void DeleteItem (size_t ind)
 Удалить объект эскиза.
MbPlaneItemDetachItem (size_t ind)
 Удалить объект эскиза.
bool ReplaceItem (const MbPlaneItem &item, MbPlaneItem &newItem)
 Заменить объект.
template<class PlaneItems >
void GetItems (PlaneItems &) const
 Выдать все объекты.

Защищенные члены

 MbPlaneInstance (const MbPlaneInstance &, MbRegDuplicate *)
 Конструктор копирования с регистратором.

Защищенные данные

MbPlacement3D place
 Локальная система координат объекта.
std::vector< MbPlaneItem * > planeItems
 Множество двумерных объектов эскиза.

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

Вставка позволяет работать с двумерными геометрическими объектами как с объектом геометрической модели. Двумерные геометрические объекты MbPlaneItem располагаются в плоскости XOY локальной системы координат MbPlacement3D.


Методы

virtual MbSpaceItem& MbPlaneInstance::Duplicate ( MbRegDuplicate iReg = NULL) const [virtual]

Создать копию объекта с использованием регистратора. Регистратор используется для предотвращения многократного копирования объекта. Если объект содержит ссылки на другие объекты, то вложенные объекты так же копируются. Допустимо не передавать регистратор в функцию. Тогда будет создана новая копия объекта. При копировании одиночного объекта или набора не связанных между собой объектов допустимо не использовать регистратор. Регистратор необходимо использовать, если надо последовательно копировать несколько взаимосвязанных объектов. Возможно, что связь объектов обусловлена наличием в них ссылок на общие объекты. Тогда, при копировании без использования регистратора, можно получить набор копий, содержащих ссылки на разные копии одного и того же вложенного объекта, что ведет к потере связи между копиями.

Аргументы:
[in]iReg- Регистратор.
Возвращает:
Копия объекта.

Замещает MbItem.

virtual void MbPlaneInstance::Transform ( const MbMatrix3D matr,
MbRegTransform iReg = NULL 
) [virtual]

Преобразовать исходный объект согласно матрице c использованием регистратора. Если объект содержит ссылки на другие геометрические объекты, то вложенные объекты так же преобразуются согласно матрице. Регистратор служит для предотвращения многократного преобразования объекта. Допустимо использовать функцию без регистратора, если надо преобразовать одиночный объект. Если надо преобразовать набор взаимосвязанных объектов, необходимо использовать регистратор для предотвращения повторного преобразования вложенных объектов, поскольку не исключена ситуация, когда несколько объектов из набора содержат ссылки на один или несколько общих объектов, подлежащих трансформации.

Аргументы:
[in]matr- Матрица преобразования.
[in]iReg- Регистратор.

Замещает MbItem.

virtual void MbPlaneInstance::Move ( const MbVector3D to,
MbRegTransform iReg = NULL 
) [virtual]

Сдвинуть геометрический объект вдоль вектора с использованием регистратора. Если объект содержит ссылки на другие геометрические объекты, то к вложенным объектам так же применяется операция сдвига. Регистратор служит для предотвращения многократного преобразования объекта. Допустимо использовать функцию без регистратора, если надо преобразовать одиночный объект. Если надо преобразовать набор взаимосвязанных объектов, необходимо использовать регистратор для предотвращения повторного преобразования вложенных объектов, поскольку не исключена ситуация, когда несколько объектов из набора содержат ссылки на один или несколько общих объектов, подлежащих сдвигу.

Аргументы:
[in]to- Вектор сдвига.
[in]iReg- Регистратор.

Замещает MbItem.

virtual void MbPlaneInstance::Rotate ( const MbAxis3D axis,
double  angle,
MbRegTransform iReg = NULL 
) [virtual]

Повернуть объект вокруг оси на заданный угол с использованием регистратора. Если объект содержит ссылки на другие геометрические объекты, то к вложенным объектам так же применяется операция поворота. Регистратор служит для предотвращения многократного преобразования объекта. Допустимо использовать функцию без регистратора, если надо преобразовать одиночный объект. Если надо преобразовать набор взаимосвязанных объектов, необходимо использовать регистратор для предотвращения повторного преобразования вложенных объектов, поскольку не исключена ситуация, когда несколько объектов из набора содержат ссылки на один или несколько общих объектов, подлежащих повороту.

Аргументы:
[in]axis- Ось поворота.
[in]angle- Угол поворота.
[in]iReg- Регистратор.

Замещает MbItem.

virtual bool MbPlaneInstance::IsSame ( const MbSpaceItem other,
double  accuracy = LENGTH_EPSILON 
) const [virtual]

Равными считаются однотипные объекты, все данные которых одинаковы (равны).

Аргументы:
[in]item- Объект для сравнения.
[in]accuracy- Точность сравнения.
Возвращает:
Равны ли объекты.

Замещает MbItem.

virtual bool MbPlaneInstance::IsSimilar ( const MbSpaceItem item) const [virtual]

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

Аргументы:
[in]item- Объект для сравнения.
Возвращает:
Подобны ли объекты.

Переопределяет метод предка MbSpaceItem.

virtual bool MbPlaneInstance::SetEqual ( const MbSpaceItem item) [virtual]

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

Аргументы:
[in]item- Объект для инициализации.
Возвращает:
Сделан ли объект равным присланному.

Замещает MbItem.

virtual double MbPlaneInstance::DistanceToPoint ( const MbCartPoint3D point) const [virtual]

Определить расстояние до точки.

Аргументы:
[in]point- Точка.
Возвращает:
Расстояние от объекта до точки.

Замещает MbItem.

virtual void MbPlaneInstance::AddYourGabaritTo ( MbCube cube) const [virtual]

Расширить присланный габаритный куб так, чтобы он включал в себя данный объект.

Аргументы:
[in,out]cube- Принимающий габаритный куб с информацией по габаритам.

Замещает MbItem.

virtual void MbPlaneInstance::CalculateLocalGabarit ( const MbMatrix3D into,
MbCube cube 
) const [virtual]

Для получения габарита объекта относительно локальной системы координат, присланный куб делается пустым. Затем вычисляются габариты объекта в локальной системе координат и сохраняются в кубе cube.

Аргументы:
[in]into- Матрица перехода от текущей для объекта системы координат к локальной системе координат.
[in,out]cube- Куб с информацией по габаритам.

Замещает MbItem.

virtual void MbPlaneInstance::CalculateWire ( const MbStepData stepData,
MbMesh mesh 
) const [virtual]

Создать полигональную копию данного объекта, представленную полигонами. Полигональный объект будет содержать только полигоны MbPolygon3D.

Аргументы:
[in]sag- Максимальное отклонение полигонального объекта от оригинала по прогибу.
[in,out]mesh- Принимающий полигональный объект.

Замещает MbItem.

virtual MbItem* MbPlaneInstance::CreateMesh ( const MbStepData stepData,
const MbFormNote note,
MbRegDuplicate iReg 
) const [virtual]

Создать полигональный объект - упрощенную копию данного объекта.

Аргументы:
[in]stepData- Данные для вычисления шага при триангуляции.
[in]note- Способ построения полигонального объекта.
Возвращает:
Построенный полигональный объект.

Замещает MbItem.

virtual const MbItem* MbPlaneInstance::FindItem ( const MbPlaneItem s,
MbPath path,
MbMatrix3D from 
) const [virtual]

Найти объект по геометрическому объекту, а также получить путь к объекту в модели и матрицу преобразования в глобальную систему координат.

Аргументы:
[in]s- Геометрический объект.
[out]path- Путь к объекту в модели.
[out]from- Матрица преобразования объекта в глобальную систему координат.
Возвращает:
Найден ли путь и матрица объекта.

Переопределяет метод предка MbItem.

bool MbPlaneInstance::ReplaceItem ( const MbPlaneItem item,
MbPlaneItem newItem 
)

Заменить объект новым.

Аргументы:
[in]item- Заменяемый объект.
[in]newItem- Новый объект.
Возвращает:
Возвращает true, если замена была выполнена.

Объявления и описания членов класса находятся в файле:
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Макросы