C3D Kernel  104598
Открытые типы | Открытые члены | Защищенные члены
Класс MbAttribute

Атрибуты объекта. Подробнее...

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

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

Открытые типы

enum  OnChangeOwnerAction { chn_Self = 0, chn_Free, chn_Keep, chn_ActCount }
enum  OnConvertOwnerAction {
  cnv_Self = 0, cnv_Free, cnv_Keep, cnv_Copy,
  cnv_Convert, cnv_ActCount
}
enum  OnTransformOwnerAction { trn_Self = 0, trn_Free, trn_Keep, trn_ActCount }
enum  OnCopyOwnerAction {
  cpy_Self = 0, cpy_Free, cpy_Keep, cpy_Copy,
  cpy_ActCount
}
enum  OnMergeOwnerAction {
  mrg_Self = 0, mrg_Free, mrg_Keep, mrg_KeepAll,
  mrg_KeepRep, mrg_ActCount
}
enum  OnReplaceOwnerAction {
  rep_Self = 0, rep_Free, rep_Keep, rep_KeepAll,
  rep_KeepRep, rep_ActCount
}
enum  OnSplitOwnerAction {
  spl_Self = 0, spl_Free, spl_Keep, spl_Copy,
  spl_ActCount
}
enum  OnDeleteOwnerAction { del_Self = 0, del_Free, del_ActCount }

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

virtual ~MbAttribute ()
 Деструктор.
OnChangeOwnerAction GetActionForChange () const
 Выдать поведение атрибута при изменении владельца.
OnConvertOwnerAction GetActionForConvert () const
 Выдать поведение атрибута при конвертации владельца.
OnTransformOwnerAction GetActionForTransform () const
 Выдать поведение атрибута при трансформировании владельца.
OnCopyOwnerAction GetActionForCopy () const
 Выдать поведение атрибута при копировании владельца.
OnMergeOwnerAction GetActionForMerge () const
 Выдать поведение атрибута при объединении владельца.
OnReplaceOwnerAction GetActionForReplace () const
 Выдать поведение атрибута при замене владельца.
OnSplitOwnerAction GetActionForSplit () const
 Выдать поведение атрибута при разделении владельца.
OnDeleteOwnerAction GetActionForDelete () const
 Выдать поведение атрибута при удалении владельца.
void SetActionForChange (OnChangeOwnerAction a)
 Задать поведение атрибута при изменении владельца.
void SetActionForConvert (OnConvertOwnerAction a)
 Задать поведение атрибута при конвертации владельца.
void SetActionForTransform (OnTransformOwnerAction a)
 Задать поведение атрибута при трансформировании владельца.
void SetActionForCopy (OnCopyOwnerAction a)
 Задать поведение атрибута при копировании владельца.
void SetActionForMerge (OnMergeOwnerAction a)
 Задать поведение атрибута при объедении владельца.
void SetActionForReplace (OnReplaceOwnerAction a)
 Задать поведение атрибута при замене владельца.
void SetActionForSplit (OnSplitOwnerAction a)
 Задать поведение атрибута при разбиении владельца.
void SetActionForDelete (OnDeleteOwnerAction a)
 Задать поведение атрибута при удалении владельца.
void InitActions (const MbAttribute &)
 Определить поведение атрибута по другому атрибуту.
bool CanBeFree () const
bool CanBeCopied () const
void SetCanBeFree (bool b)
void SetCanBeCopied (bool b)
virtual void GetProperties (MbProperties &)
 Выдать свойства объекта.
virtual size_t SetProperties (const MbProperties &)
 Установить свойства объекта.
virtual MbePrompt GetPropertyName ()=0
 Выдать заголовок свойства объекта.
Общие функции атрибутов
virtual MbeRefType RefType () const
 Выдать регистрационный тип (для копирования, дублирования).
virtual MbeImplicationType ImplicationType () const
 Выдать тип контейнера атрибутов.
virtual MbeAttributeType AttributeFamily () const =0
 Выдать тип атрибута.
virtual MbeAttributeType AttributeType () const =0
 Выдать подтип атрибута.
virtual MbAttributeDuplicate (MbRegDuplicate *iReg=NULL) const =0
 Сделать копию элемента.
virtual bool IsSame (const MbAttribute &item, double accuracy) const =0
 Определить, являются ли объекты равными.
virtual bool Init (const MbAttribute &)=0
 Инициализировать данные по присланным.
bool IsA (MbeAttributeType t) const
 Проверить тип атрибута.
Действия над объектами геометрического ядра, влияющие на состояние атрибутов
virtual void OnChangeOwner (const MbAttributeContainer &owner)=0
 Выполнить действия при изменении владельца, не связанное с другими действиями.
virtual void OnConvertOwner (const MbAttributeContainer &owner, MbAttributeContainer &other)=0
virtual void OnTransformOwner (const MbAttributeContainer &owner, const MbMatrix3D &matr, MbRegTransform *iReg=NULL)=0
virtual void OnMoveOwner (const MbAttributeContainer &owner, const MbVector3D &to, MbRegTransform *iReg=NULL)=0
virtual void OnRotateOwner (const MbAttributeContainer &owner, const MbAxis3D &axis, double angle, MbRegTransform *iReg=NULL)=0
virtual void OnCopyOwner (const MbAttributeContainer &owner, MbAttributeContainer &other, MbRegDuplicate *iReg=NULL)=0
virtual void OnMergeOwner (const MbAttributeContainer &owner, MbAttributeContainer &other)=0
virtual void OnReplaceOwner (const MbAttributeContainer &owner, MbAttributeContainer &other)=0
virtual void OnSplitOwner (const MbAttributeContainer &owner, const std::vector< MbAttributeContainer * > &others)=0
virtual void OnDeleteOwner (const MbAttributeContainer &owner)=0

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

 MbAttribute ()
 Конструктор без параметров для наследников.

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

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


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

Поведение атрибута при изменении владельца, не связанном с другими описанными действия.

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

Поведение, определяемое виртуальной функцией OnChangeOwner.

chn_Free 

Освободить атрибут, если это возможно, в противном случае удалить.

chn_Keep 

Сохранить атрибут, т.е. ничего с ним не делать.

chn_ActCount 

Количество элементов в перечислении (добавлять перед данным значением).

Поведение атрибута при перерождении объекта в другой объект.

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

Поведение, определяемое виртуальной функцией OnConvertOwner.

cnv_Free 

Освободить атрибут, если это возможно, в противном случае удалить.

cnv_Keep 

Сохранить атрибут, т.е. ничего с ним не делать.

cnv_Copy 

Скопировать атрибут и прицепить его копию к копии владельца.

cnv_Convert 

Конвертировать атрибут и прицепить результат к копии владельца.

cnv_ActCount 

Количество элементов в перечислении (добавлять перед данным значением).

Поведение атрибута при преобразовании владельца (по матрице).

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

Поведение, определяемое виртуальной функцией OnTransformOwner.

trn_Free 

Освободить атрибут, если это возможно, в противном случае удалить.

trn_Keep 

Сохранить атрибут, т.е. ничего с ним не делать.

trn_ActCount 

Количество элементов в перечислении (добавлять перед данным значением).

Поведение атрибута при копировании владельца.

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

Поведение, определяемое виртуальной функцией OnCopyOwner.

cpy_Free 

Освободить атрибут, если это возможно, в противном случае удалить.

cpy_Keep 

Сохранить атрибут, т.е. ничего с ним не делать.

cpy_Copy 

Скопировать атрибут и прицепить его копию к копии владельца.

cpy_ActCount 

Количество элементов в перечислении (добавлять перед данным значением).

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

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

Поведение, определяемое виртуальной функцией OnMergeOwner.

mrg_Free 

Освободить атрибут, если это возможно, в противном случае удалить.

mrg_Keep 

Сохранить атрибут, т.е. ничего с ним не делать.

mrg_KeepAll 

Передать атрибут от поглощаемого объекта поглощающему объекту без замещения.

mrg_KeepRep 

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

mrg_ActCount 

Количество элементов в перечислении (добавлять перед данным значением).

Поведение атрибута при замещении владельца с другим объектом.

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

Поведение, определяемое виртуальной функцией OnReplaceOwner.

rep_Free 

Освободить атрибут, если это возможно, в противном случае удалить.

rep_Keep 

Сохранить атрибут, т.е. ничего с ним не делать.

rep_KeepAll 

Передать атрибут от замещаемого объекта замещающему объекту без замещения.

rep_KeepRep 

Передать атрибут от замещаемого объекта замещающему объекту с замещением.

rep_ActCount 

Количество элементов в перечислении (добавлять перед данным значением).

Поведение атрибута при разделении владельца.

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

Поведение, определяемое виртуальной функцией OnSplitOwner.

spl_Free 

Освободить атрибут, если это возможно, в противном случае удалить.

spl_Keep 

Сохранить атрибут, т.е. ничего с ним не делать.

spl_Copy 

Размножить(скопировать) атрибут для каждого результата разбиения.

spl_ActCount 

Количество элементов в перечислении (добавлять перед данным значением).

Поведение атрибута при удалении владельца.

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

Поведение, определяемое виртуальной функцией OnDeleteOwner.

del_Free 

Освободить атрибут, если это возможно, в противном случае удалить.

del_ActCount 

Количество элементов в перечислении (добавлять перед данным значением).


Методы

virtual bool MbAttribute::IsSame ( const MbAttribute item,
double  accuracy 
) const [pure virtual]

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

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

Замещается в MbColor, MbWidth, MbStyle, MbVisual, MbWireCount, MbCommonAttribute, MbBoolAttribute, MbIntAttribute, MbInt64Attribute, MbDoubleAttribute, MbStringAttribute, MbBinaryAttribute, MbDencity, MbElementaryAttribute, MbGeomAttribute, MbIdentifier, MbNameAttribute, MbUpdateStamp, MbAnchorAttribute, MbProductAttribute, MbPersonOrganizationInfo, MbProductInfo, MbSelected, MbVisible, MbChanged, MbStampRibAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnChangeOwner ( const MbAttributeContainer owner) [pure virtual]

Действия при изменении владельца, не связанное с другими действиями.
Вызывается после изменения владеющего объекта при условии GetActionForChange() == chn_Self.

Замещается в MbCommonAttribute, MbElementaryAttribute, MbAnchorAttribute, MbProductAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnConvertOwner ( const MbAttributeContainer owner,
MbAttributeContainer other 
) [pure virtual]

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

Замещается в MbCommonAttribute, MbElementaryAttribute, MbAnchorAttribute, MbProductAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnTransformOwner ( const MbAttributeContainer owner,
const MbMatrix3D matr,
MbRegTransform iReg = NULL 
) [pure virtual]

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

Замещается в MbCommonAttribute, MbElementaryAttribute, MbGeomAttribute, MbAnchorAttribute, MbProductAttribute, MbStampRibAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnMoveOwner ( const MbAttributeContainer owner,
const MbVector3D to,
MbRegTransform iReg = NULL 
) [pure virtual]

Выполнить действия при перемещении владельца.
Вызывается после перемещения владеющего объекта при условии GetActionForTransform() == trn_Self. В качестве входного параметра может передаваться регистратор трансформированных объектов.

Замещается в MbCommonAttribute, MbElementaryAttribute, MbGeomAttribute, MbAnchorAttribute, MbProductAttribute, MbStampRibAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnRotateOwner ( const MbAttributeContainer owner,
const MbAxis3D axis,
double  angle,
MbRegTransform iReg = NULL 
) [pure virtual]

Выполнить действия при вращении владельца.
Вызывается после вращения владеющего объекта при условии GetActionForTransform() == trn_Self. В качестве входного параметра может передаваться регистратор трансформированных объектов.

Замещается в MbCommonAttribute, MbElementaryAttribute, MbGeomAttribute, MbAnchorAttribute, MbProductAttribute, MbStampRibAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnCopyOwner ( const MbAttributeContainer owner,
MbAttributeContainer other,
MbRegDuplicate iReg = NULL 
) [pure virtual]

Выполнить действия при копировании владельца.
Вызывается после копирования владеющего объекта при условии GetActionForCopy() == cpy_Self.
В качестве входных параметров передаются: копия владеющего объекта и регистратор скопированных объектов.

Замещается в MbCommonAttribute, MbElementaryAttribute, MbGeomAttribute, MbAnchorAttribute, MbProductAttribute, MbStampRibAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnMergeOwner ( const MbAttributeContainer owner,
MbAttributeContainer other 
) [pure virtual]

Выполнить действия при объединении владельца.
Вызывается перед слиянием владельца при условии GetActionForMerge() == mrg_Self.
В качестве входного параметра передается объект который будет поглощен.

Замещается в MbCommonAttribute, MbElementaryAttribute, MbGeomAttribute, MbNameAttribute, MbAnchorAttribute, MbProductAttribute, MbStampRibAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnReplaceOwner ( const MbAttributeContainer owner,
MbAttributeContainer other 
) [pure virtual]

Выполнить действия при замене владельца.
Вызывается перед выполнением замены владельца при условии GetActionForReplace() == rep_Self.
В качестве входного параметра передается объект - заместитель.

Замещается в MbCommonAttribute, MbElementaryAttribute, MbAnchorAttribute, MbProductAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnSplitOwner ( const MbAttributeContainer owner,
const std::vector< MbAttributeContainer * > &  others 
) [pure virtual]

Выполнить действия при разделении владельца.
Вызывается после разбиения владеющего объекта при условии GetActionForSplit() == spl_Self.
В качестве входного параметра передается контейнер результатов разбиения.

Замещается в MbCommonAttribute, MbElementaryAttribute, MbAnchorAttribute, MbProductAttribute, MbUserAttribute и MbExternalAttribute.

virtual void MbAttribute::OnDeleteOwner ( const MbAttributeContainer owner) [pure virtual]

Выполнить действия при удалении владельца.
Вызывается перед удалением объекта при условии GetActionForDelete() == spl_Self.

Замещается в MbCommonAttribute, MbElementaryAttribute, MbAnchorAttribute, MbProductAttribute, MbUserAttribute и MbExternalAttribute.


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