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

Точечный каркас. Подробнее...

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

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

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

 MbPointFrame ()
 Конструктор.
 MbPointFrame (const MbVertex &, bool same)
 Конструктор по вершине и флагу использования этого объекта, а не его копии.
 MbPointFrame (const MbCartPoint3D &)
 Конструктор по точке.
 MbPointFrame (double x, double y, double z)
 Конструктор по координатам.
 MbPointFrame (const RPArray< MbVertex > &, bool same)
 Конструктор по массиву вершин и флагу использования этих объектов, а не их копий.
template<class Points >
 MbPointFrame (const Points &pnts)
 Конструктор по массиву точек.
virtual ~MbPointFrame ()
 Деструктор.
 VISITING_CLASS (MbPointFrame)
virtual MbeSpaceType IsA () const
 Получить тип объекта.
virtual MbeSpaceType Type () const
 Получить групповой тип объекта.
virtual MbSpaceItemDuplicate (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 CalculateLocalGabarit (const MbMatrix3D &into, MbCube &cube) const
 Рассчитать габарит в локальной системы координат.
virtual void CalculateMesh (const MbStepData &stepData, const MbFormNote &note, MbMesh &mesh) const
 Построить полигональную копию mesh.
virtual MbPropertyCreateProperty (MbePrompt n) const
 Создать собственное свойство с заданием его имени.
virtual void GetProperties (MbProperties &)
 Выдать свойства атрибутов.
virtual void SetProperties (const MbProperties &)
 Установить свойства атрибутов.
virtual void GetBasisItems (RPArray< MbSpaceItem > &)
 Выдать базовые объекты в присланный контейнер.
virtual void GetBasisPoints (MbControlData3D &) const
 Выдать контрольные точки объекта.
virtual void SetBasisPoints (const MbControlData3D &)
 Изменить объект по контрольным точкам.
virtual bool RebuildItem (MbeCopyMode sameShell, RPArray< MbSpaceItem > *items, IProgressIndicator *progInd)
 Перестроить объект по журналу построения.
virtual MbItemCreateMesh (const MbStepData &stepData, const MbFormNote &note, MbRegDuplicate *iReg) const
 Создать полигональный объект.
void SetOwnChangedThrough (MbeChangedType)
 Установить заданный флаг измененности для всех вершин.
Общие функции каркаса.
size_t GetVerticesCount () const
 Выдать количество вершин.
const MbVertexGetVertex (size_t k) const
 Получить вершину по индексу.
MbVertexGetVertex (size_t k)
 Получить вершину по индексу для модификации.
void AddVertex (const MbCartPoint3D &)
 Добавить вершину по точке.
void AddVertex (const MbVertex &, bool same)
 Добавить вершину или ее копию, что определяется флагом использования самого объекта.
void InsertVertex (size_t k, const MbCartPoint3D &)
 Вставить вершину по номеру и точке.
void InsertVertex (size_t k, const MbVertex &, bool same)
 Вставить по номеру вершину или ее копию, что определяется флагом использования самого объекта.
bool DeleteVertex (size_t k)
 Удалить вершину с заданным номером.
void DeleteVertices ()
 Удалить все вершины.
bool GetCartPoint (MbCartPoint3D &) const
 Дать декартову точку начальной вершины.
bool GetCartPoint (size_t k, MbCartPoint3D &) const
 Дать декартову точку вершины с заданным номером.
bool operator== (const MbPointFrame &) const
 Проверка на равенство с каркасом.
bool operator!= (const MbPointFrame &) const
 Проверка на неравенство с каркасом.

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

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

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

std::vector< MbVertex * > vertices
 Множество вершин каркаса.

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

Точечный каркас состоит из множества декартовых точек, представленных в виде вершин MbVertex.


Методы

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

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

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

Замещает MbItem.

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

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

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

Замещает MbItem.

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

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

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

Замещает MbItem.

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

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

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

Замещает MbItem.

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

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

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

Замещает MbItem.

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

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

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

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

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

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

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

Замещает MbItem.

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

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

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

Замещает MbItem.

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

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

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

Замещает MbItem.

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

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

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

Замещает MbItem.

virtual void MbPointFrame::CalculateMesh ( const MbStepData stepData,
const MbFormNote note,
MbMesh mesh 
) const [virtual]

Построить полигональную копию данного объекта, представленную полигонами, или/и плоскими пластинами.

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

Замещает MbItem.

virtual bool MbPointFrame::RebuildItem ( MbeCopyMode  sameShell,
RPArray< MbSpaceItem > *  items,
IProgressIndicator progInd 
) [virtual]

Создать заново объект по журналу построения.

Аргументы:
[in]sameShell- Полнота копирования элементов.
[out]items- Контейнер для складывания элементов невыполненных построений (может быть NULL).
Возвращает:
Перестроен ли объект.

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

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

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

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

Замещает MbItem.


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