Extern :
- C3d eliminati file obsoleti.
This commit is contained in:
@@ -1,302 +0,0 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/**
|
||||
\file
|
||||
\brief \ru Подтип обобщенные атрибуты.
|
||||
\en Common attributes subtype. \~
|
||||
|
||||
*/
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef __ATTR_COMMON_ATTRIBUE_H
|
||||
#define __ATTR_COMMON_ATTRIBUE_H
|
||||
|
||||
|
||||
#include <attribute.h>
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru Обобщенный атрибут - базовый класс.
|
||||
\en Common attribute - the base class. \~
|
||||
\details \ru Обобщенный атрибут - базовый класс. \n
|
||||
\en Common attribute - the base class. \n \~
|
||||
\ingroup Model_Attributes
|
||||
*/
|
||||
class MATH_CLASS MbCommonAttribute : public MbAttribute {
|
||||
protected :
|
||||
c3d::string_t prompt_; ///< \ru Строка описания. \en String of description.
|
||||
bool changeable; ///< \ru Признак редактируемости. \en Attribute of editability.
|
||||
|
||||
protected :
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
MbCommonAttribute( const c3d::string_t & prompt, bool change );
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
explicit MbCommonAttribute( bool change );
|
||||
/// \ru Деструктор. \en Destructor.
|
||||
virtual ~MbCommonAttribute();
|
||||
|
||||
public :
|
||||
virtual MbeAttributeType AttributeFamily() const; // \ru Выдать тип атрибута. \en Get attribute type.
|
||||
virtual MbeAttributeType AttributeType() const = 0; // \ru Выдать подтип атрибута. \en Get subtype of an attribute.
|
||||
virtual MbAttribute & Duplicate( MbRegDuplicate * = NULL ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element.
|
||||
virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal.
|
||||
virtual bool Init( const MbAttribute & ) = 0; // \ru Инициализировать данные по присланным. \en Initialize data.
|
||||
|
||||
// \ru Выполнить действия при изменении владельца, не связанное с другими действиями. \en Perform actions which are not associated with other actions when changing the owner.
|
||||
virtual void OnChangeOwner( const MbAttributeContainer & owner );
|
||||
// \ru Выполнить действия при конвертации владельца. \en Perform actions when converting the owner.
|
||||
virtual void OnConvertOwner( const MbAttributeContainer & owner, MbAttributeContainer & other );
|
||||
// \ru Выполнить действия при трансформировании владельца. \en Perform actions when transforming the owner.
|
||||
virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D & matr, MbRegTransform * iReg = NULL );
|
||||
// \ru Выполнить действия при перемещении владельца. \en Perform actions when moving the owner.
|
||||
virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D & to, MbRegTransform * iReg = NULL );
|
||||
// \ru Выполнить действия при вращении владельца. \en Perform actions when rotating the owner.
|
||||
virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D & axis, double angle, MbRegTransform * iReg = NULL );
|
||||
// \ru Выполнить действия при копировании владельца. \en Perform actions when copying the owner.
|
||||
virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * iReg = NULL );
|
||||
// \ru Выполнить действия при объединении владельца. \en Perform actions when merging he owner.
|
||||
virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other );
|
||||
// \ru Выполнить действия при замене владельца. \en Perform actions when replacing the owner.
|
||||
virtual void OnReplaceOwner( const MbAttributeContainer & owner, MbAttributeContainer & other );
|
||||
// \ru Выполнить действия при разделении владельца. \en Perform actions when splitting the owner.
|
||||
virtual void OnSplitOwner( const MbAttributeContainer & owner, const std::vector<MbAttributeContainer*> & others );
|
||||
// \ru Выполнить действия при удалении владельца. \en Perform actions when deleting the owner.
|
||||
virtual void OnDeleteOwner( const MbAttributeContainer & owner );
|
||||
|
||||
virtual void GetCharValue( TCHAR * v ) const = 0; // \ru Выдать строковое значение свойства. \en Get a string value of the property.
|
||||
virtual void GetProperties( MbProperties & ) = 0; // \ru Выдать свойства объекта. \en Get properties of the object.
|
||||
virtual size_t SetProperties( const MbProperties & ) = 0; // \ru Установить свойства объекта. \en Set properties of object.
|
||||
virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта. \en Get a name of object property.
|
||||
|
||||
/** \brief \ru Выдать подсказку атрибута. \en Get a prompt of attribute.
|
||||
\details \ru Строковое значение, которое может быть использовано, как совего рода тэг, имя или пометка атрибута.
|
||||
\en String value which can be used as some kind of tag, name or label of an attribute.
|
||||
*/
|
||||
const c3d::string_t & GetPrompt() const;
|
||||
/// \ru Выдать признак изменяемости. \en Get an attribute of changeability.
|
||||
bool IsChangeable() const;
|
||||
|
||||
DECLARE_PERSISTENT_CLASS( MbCommonAttribute )
|
||||
OBVIOUS_PRIVATE_COPY( MbCommonAttribute )
|
||||
};
|
||||
|
||||
IMPL_PERSISTENT_OPS( MbCommonAttribute )
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru bool атрибут.
|
||||
\en Bool attribute. \~
|
||||
\details \ru bool атрибут. \n
|
||||
\en Bool attribute. \n \~
|
||||
\ingroup Model_Attributes
|
||||
*/
|
||||
class MATH_CLASS MbBoolAttribute : public MbCommonAttribute {
|
||||
private:
|
||||
bool value_; ///< \ru Значение. \en The value.
|
||||
|
||||
public:
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
explicit MbBoolAttribute( const c3d::string_t & prompt, bool change, bool initValue );
|
||||
/// \ru Деструктор. \en Destructor.
|
||||
virtual ~MbBoolAttribute();
|
||||
|
||||
public:
|
||||
virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute.
|
||||
virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property.
|
||||
virtual MbAttribute & Duplicate( MbRegDuplicate * = NULL ) const; // \ru Сделать копию элемента. \en Create a copy of the element.
|
||||
virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal.
|
||||
virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data.
|
||||
virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object.
|
||||
virtual size_t SetProperties( const MbProperties & ); // \ru Установить свойства объекта. \en Set properties of object.
|
||||
virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта. \en Get a name of object property.
|
||||
|
||||
bool GetValue() const; // \ru Выдать значение свойства. \en Get a value of the property.
|
||||
bool SetValue( bool val ); // \ru Установить новое значение свойства. \en Set new value of the property.
|
||||
|
||||
DECLARE_PERSISTENT_CLASS_NEW_DEL( MbBoolAttribute )
|
||||
OBVIOUS_PRIVATE_COPY( MbBoolAttribute )
|
||||
};
|
||||
|
||||
IMPL_PERSISTENT_OPS( MbBoolAttribute )
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru int атрибут.
|
||||
\en Int attribute. \~
|
||||
\details \ru int атрибут. \n
|
||||
\en Int attribute. \n \~
|
||||
\ingroup Model_Attributes
|
||||
*/
|
||||
class MATH_CLASS MbIntAttribute : public MbCommonAttribute {
|
||||
private:
|
||||
int value_; ///< \ru Значение. \en The value.
|
||||
|
||||
public:
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
explicit MbIntAttribute( const c3d::string_t & prompt, bool change, int initValue );
|
||||
/// \ru Деструктор. \en Destructor.
|
||||
virtual ~MbIntAttribute();
|
||||
|
||||
public:
|
||||
virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute.
|
||||
virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property.
|
||||
virtual MbAttribute & Duplicate( MbRegDuplicate * = NULL ) const; // \ru Сделать копию элемента. \en Create a copy of the element.
|
||||
virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal.
|
||||
virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data.
|
||||
virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object.
|
||||
virtual size_t SetProperties( const MbProperties & ); // \ru Установить свойства объекта. \en Set properties of object.
|
||||
virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта. \en Get a name of object property.
|
||||
|
||||
int GetValue() const; // \ru Выдать значение свойства. \en Get a value of the property.
|
||||
bool SetValue( int val ); // \ru Установить новое значение свойства. \en Set new value of the property.
|
||||
|
||||
DECLARE_PERSISTENT_CLASS_NEW_DEL( MbIntAttribute )
|
||||
OBVIOUS_PRIVATE_COPY( MbIntAttribute )
|
||||
};
|
||||
|
||||
IMPL_PERSISTENT_OPS( MbIntAttribute )
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru int64 атрибут.
|
||||
\en Int64 attribute. \~
|
||||
\details \ru int64 атрибут. \n
|
||||
\en Int64 attribute. \n \~
|
||||
\ingroup Model_Attributes
|
||||
*/
|
||||
class MATH_CLASS MbInt64Attribute : public MbCommonAttribute {
|
||||
private:
|
||||
int64 value_; ///< \ru Значение. \en The value.
|
||||
|
||||
public:
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
explicit MbInt64Attribute( const c3d::string_t & prompt, bool change, int64 initValue );
|
||||
/// \ru Деструктор. \en Destructor.
|
||||
virtual ~MbInt64Attribute();
|
||||
|
||||
public:
|
||||
virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute.
|
||||
virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property.
|
||||
virtual MbAttribute & Duplicate( MbRegDuplicate * = NULL ) const; // \ru Сделать копию элемента. \en Create a copy of the element.
|
||||
virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal.
|
||||
virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data.
|
||||
virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object.
|
||||
virtual size_t SetProperties( const MbProperties & ); // \ru Установить свойства объекта. \en Set properties of object.
|
||||
virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта. \en Get a name of object property.
|
||||
|
||||
int64 GetValue() const; // \ru Выдать значение свойства. \en Get a value of the property.
|
||||
bool SetValue( int64 val ); // \ru Установить новое значение свойства. \en Set new value of the property.
|
||||
|
||||
DECLARE_PERSISTENT_CLASS_NEW_DEL( MbInt64Attribute )
|
||||
OBVIOUS_PRIVATE_COPY( MbInt64Attribute )
|
||||
};
|
||||
|
||||
IMPL_PERSISTENT_OPS( MbInt64Attribute )
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru double атрибут.
|
||||
\en Double attribute. \~
|
||||
\details \ru double атрибут. \n
|
||||
\en Double attribute. \n \~
|
||||
\ingroup Model_Attributes
|
||||
*/
|
||||
class MATH_CLASS MbDoubleAttribute : public MbCommonAttribute {
|
||||
private:
|
||||
double value_; ///< \ru Значение. \en The value.
|
||||
|
||||
public:
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
explicit MbDoubleAttribute( const c3d::string_t & prompt, bool change, double initValue );
|
||||
/// \ru Деструктор. \en Destructor.
|
||||
virtual ~MbDoubleAttribute();
|
||||
|
||||
public:
|
||||
virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute.
|
||||
virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property.
|
||||
virtual MbAttribute & Duplicate( MbRegDuplicate * = NULL ) const; // \ru Сделать копию элемента. \en Create a copy of the element.
|
||||
virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal.
|
||||
virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data.
|
||||
virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object.
|
||||
virtual size_t SetProperties( const MbProperties & ); // \ru Установить свойства объекта. \en Set properties of object.
|
||||
virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта. \en Get a name of object property.
|
||||
|
||||
double GetValue() const; // \ru Выдать значение свойства. \en Get a value of the property.
|
||||
bool SetValue( double val ); // \ru Установить новое значение свойства. \en Set new value of the property.
|
||||
|
||||
DECLARE_PERSISTENT_CLASS_NEW_DEL( MbDoubleAttribute )
|
||||
OBVIOUS_PRIVATE_COPY( MbDoubleAttribute )
|
||||
};
|
||||
|
||||
IMPL_PERSISTENT_OPS( MbDoubleAttribute )
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru String атрибут.
|
||||
\en String attribute. \~
|
||||
\details \ru String атрибут. \n
|
||||
\en String attribute. \n \~
|
||||
\ingroup Model_Attributes
|
||||
*/
|
||||
class MATH_CLASS MbStringAttribute : public MbCommonAttribute {
|
||||
private:
|
||||
c3d::string_t value_; ///< \ru Значение. \en The value.
|
||||
|
||||
public:
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
explicit MbStringAttribute( const c3d::string_t & prompt, bool change, const c3d::string_t & string );
|
||||
|
||||
public:
|
||||
virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute.
|
||||
virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property.
|
||||
virtual MbAttribute & Duplicate( MbRegDuplicate * = NULL ) const; // \ru Сделать копию элемента. \en Create a copy of the element.
|
||||
virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal.
|
||||
virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data.
|
||||
virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object.
|
||||
virtual size_t SetProperties( const MbProperties & ); // \ru Установить свойства объекта. \en Set properties of object.
|
||||
virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта. \en Get a name of object property.
|
||||
|
||||
c3d::string_t GetValue() const; // \ru Выдать значение свойства. \en Get a value of the property.
|
||||
bool SetValue( c3d::string_t & val ); // \ru Установить новое значение свойства. \en Set new value of the property.
|
||||
|
||||
protected:
|
||||
virtual ~MbStringAttribute(); // Use AddRef/Release or smart pointer SPtr<MbAttribute> to destruct it correctly.
|
||||
|
||||
DECLARE_PERSISTENT_CLASS_NEW_DEL( MbStringAttribute )
|
||||
OBVIOUS_PRIVATE_COPY( MbStringAttribute )
|
||||
};
|
||||
|
||||
IMPL_PERSISTENT_OPS( MbStringAttribute )
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru Бинарный атрибут.
|
||||
\en Binary attribute. \~
|
||||
\details \ru Бинарный атрибут. \n
|
||||
\en Binary attribute. \n \~
|
||||
\ingroup Model_Attributes
|
||||
*/
|
||||
class MATH_CLASS MbBinaryAttribute : public MbCommonAttribute {
|
||||
private:
|
||||
std::vector<unsigned char> value_; ///< \ru Значение. \en The value.
|
||||
|
||||
public:
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
explicit MbBinaryAttribute( const c3d::string_t & prompt, bool change, const std::vector<unsigned char> & value );
|
||||
|
||||
public:
|
||||
virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute.
|
||||
virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property.
|
||||
virtual MbAttribute & Duplicate( MbRegDuplicate * = NULL ) const; // \ru Сделать копию элемента. \en Create a copy of the element.
|
||||
virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal.
|
||||
virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data.
|
||||
virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object.
|
||||
virtual size_t SetProperties( const MbProperties & ); // \ru Установить свойства объекта. \en Set properties of object.
|
||||
virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта. \en Get a name of object property.
|
||||
|
||||
std::vector<unsigned char> GetValue() const; // \ru Выдать значение свойства. \en Get a value of the property.
|
||||
bool SetValue( std::vector<unsigned char> & val ); // \ru Установить новое значение свойства. \en Set new value of the property.
|
||||
|
||||
protected:
|
||||
virtual ~MbBinaryAttribute(); // Use AddRef/Release or smart pointer SPtr<MbAttribute> to destruct it correctly.
|
||||
|
||||
DECLARE_PERSISTENT_CLASS_NEW_DEL( MbBinaryAttribute )
|
||||
OBVIOUS_PRIVATE_COPY( MbBinaryAttribute )
|
||||
};
|
||||
|
||||
IMPL_PERSISTENT_OPS( MbBinaryAttribute )
|
||||
|
||||
#endif // __ATTR_COMMON_ATTRIBUE_H
|
||||
@@ -1,68 +0,0 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/**
|
||||
\file
|
||||
\brief \ru Подтип элементарные атрибуты.
|
||||
\en Elementary attributes subtype. \~
|
||||
|
||||
*/
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef __ATTR_ELEMENTARY_ATTRIBUTE_H
|
||||
#define __ATTR_ELEMENTARY_ATTRIBUTE_H
|
||||
|
||||
|
||||
#include <attribute.h>
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru Элементарный атрибут - базовый класс.
|
||||
\en Elementary attribute - the base class. \~
|
||||
\details \ru Элементарный атрибут - базовый класс. \n
|
||||
\en Elementary attribute - the base class. \n \~
|
||||
\ingroup Model_Attributes
|
||||
*/
|
||||
class MATH_CLASS MbElementaryAttribute : public MbAttribute {
|
||||
protected:
|
||||
MbElementaryAttribute();
|
||||
public:
|
||||
virtual ~MbElementaryAttribute();
|
||||
|
||||
public :
|
||||
virtual MbeAttributeType AttributeFamily() const; // \ru Тип атрибута \en Type of an attribute
|
||||
virtual MbeAttributeType AttributeType() const = 0; // \ru Выдать подтип атрибута \en Get subtype of an attribute.
|
||||
virtual MbAttribute & Duplicate( MbRegDuplicate * = NULL ) const = 0; // \ru Сделать копию элемента \en Create a copy of the element.
|
||||
virtual bool IsSame( const MbAttribute &, double accuracy ) const = 0; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal.
|
||||
virtual bool Init( const MbAttribute & ) = 0; // \ru Инициализировать данные по присланным \en Initialize data.
|
||||
|
||||
// \ru Действия при изменении владельца, не связанное с другими действиями. \en Actions which are not associated with other actions when changing the owner.
|
||||
virtual void OnChangeOwner( const MbAttributeContainer & owner );
|
||||
// \ru Действия при конвертации владельца. \en Actions when converting the owner.
|
||||
virtual void OnConvertOwner( const MbAttributeContainer & owner, MbAttributeContainer & other );
|
||||
/// \ru Действия при трансформировании владельца. \en Actions when transforming the owner.
|
||||
virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D & matr, MbRegTransform * iReg = NULL );
|
||||
// \ru Действия при перемещении владельца. \en Actions when moving the owner.
|
||||
virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D & to, MbRegTransform * iReg = NULL );
|
||||
// \ru Действия при вращении владельца. \en Actions when rotating the owner.
|
||||
virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D & axis, double angle, MbRegTransform * iReg = NULL );
|
||||
// \ru Действия при копировании владельца. \en Actions when copying the owner.
|
||||
virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * iReg = NULL );
|
||||
// \ru Действия при объединении владельца. \en Actions when merging the owner.
|
||||
virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other );
|
||||
// \ru Действия при замене владельца. \en Actions when replacing the owner.
|
||||
virtual void OnReplaceOwner( const MbAttributeContainer & owner, MbAttributeContainer & other );
|
||||
// \ru Действия при разделении владельца. \en Actions when splitting the owner.
|
||||
virtual void OnSplitOwner( const MbAttributeContainer & owner, const std::vector<MbAttributeContainer*> & others );
|
||||
// \ru Действия при удалении владельца. \en Actions when merging the owner.
|
||||
virtual void OnDeleteOwner( const MbAttributeContainer & owner );
|
||||
|
||||
virtual void GetProperties( MbProperties & ) = 0; // \ru Выдать свойства объекта \en Get properties of the object
|
||||
virtual size_t SetProperties( const MbProperties & ) = 0; // \ru Установить свойства объекта \en Set properties of object
|
||||
virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property
|
||||
|
||||
DECLARE_PERSISTENT_CLASS( MbElementaryAttribute )
|
||||
OBVIOUS_PRIVATE_COPY( MbElementaryAttribute )
|
||||
};
|
||||
|
||||
IMPL_PERSISTENT_OPS( MbElementaryAttribute )
|
||||
|
||||
#endif // __ATTR_ELEMENTARY_ATTRIBUTE_H
|
||||
@@ -1,89 +0,0 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/**
|
||||
\file
|
||||
\brief \ru Геометрический атрибут.
|
||||
\en Geometric attribute. \~
|
||||
|
||||
*/
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef __ATTR_GEOMETRIC_ATTRIBUTE_H
|
||||
#define __ATTR_GEOMETRIC_ATTRIBUTE_H
|
||||
|
||||
|
||||
#include <attr_common_attribut.h>
|
||||
#include <attr_registry.h>
|
||||
#include <math_define.h>
|
||||
#include <creator.h>
|
||||
|
||||
|
||||
class MATH_CLASS MbSpaceItem;
|
||||
class MATH_CLASS MbProperty;
|
||||
class MATH_CLASS MbProperties;
|
||||
class MbRegTransform;
|
||||
class MbRegDuplicate;
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru Геометрический атрибут.
|
||||
\en Geometric attribute. \~
|
||||
\details \ru Геометрический атрибут. \n
|
||||
\en Geometric attribute. \n \~
|
||||
\ingroup Model_Attributes
|
||||
*/
|
||||
class MATH_CLASS MbGeomAttribute : public MbCommonAttribute {
|
||||
protected :
|
||||
MbSpaceItem * spaceItem; ///< \ru Геометрический объект. \en A geometric object.
|
||||
MbeCreatorType type; ///< \ru Тип операции. \en Operation type.
|
||||
bool keepItem; ///< \ru Сохранять исходный объект при копировании. \en Save the initial object when copying.
|
||||
|
||||
private:
|
||||
// \ru Конструктор копирования. \en Copy constructor.
|
||||
MbGeomAttribute( const MbGeomAttribute & init, MbRegDuplicate * iReg );
|
||||
public :
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
MbGeomAttribute( const MbSpaceItem & item, MbeCreatorType t, bool keepItem );
|
||||
/// \ru Конструктор. \en Constructor.
|
||||
MbGeomAttribute( const MbSpaceItem & item, MbeCreatorType t, bool keepItem, const c3d::string_t & itemPrompt );
|
||||
/// \ru Деструктор. \en Destructor.
|
||||
virtual ~MbGeomAttribute();
|
||||
|
||||
public:
|
||||
// \ru Выдать подтип атрибута. \en Get subtype of an attribute.
|
||||
virtual MbeAttributeType AttributeType() const;
|
||||
// \ru Сделать копию элемента. \en Create a copy of the element.
|
||||
virtual MbAttribute & Duplicate( MbRegDuplicate * = NULL ) const;
|
||||
// \ru Определить, являются ли объекты равными. \en Determine whether objects are equal.
|
||||
virtual bool IsSame( const MbAttribute &, double accuracy ) const;
|
||||
// \ru Инициализировать данные по присланным. \en Initialize data.
|
||||
virtual bool Init( const MbAttribute & );
|
||||
// \ru Выполнить действия при трансформировании владельца. \en Perform actions when transforming the owner.
|
||||
virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D & matr, MbRegTransform * iReg );
|
||||
// \ru Выполнить действия при перемещении владельца. \en Perform actions when moving the owner.
|
||||
virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D & to, MbRegTransform * iReg = NULL );
|
||||
// \ru Выполнить действия при вращении владельца. \en Perform actions when rotating the owner.
|
||||
virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D & axis, double angle, MbRegTransform * iReg = NULL );
|
||||
// \ru Выполнить действия при копировании владельца. \en Perform actions when copying the owner.
|
||||
virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * iReg );
|
||||
// \ru Выполнить действия при объединении владельца. \en Perform actions when merging the owner.
|
||||
virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other );
|
||||
|
||||
virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property.
|
||||
virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object.
|
||||
virtual size_t SetProperties( const MbProperties & ); // \ru Установить свойства объекта. \en Set properties of object.
|
||||
virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта. \en Get a name of object property.
|
||||
/// \ru Дать геометрический объект. \en Get geometric object.
|
||||
const MbSpaceItem * GetSpaceItem() const { return spaceItem; }
|
||||
MbSpaceItem * SetSpaceItem() { return spaceItem; }
|
||||
/// \ru Заменить геометрический объект. \en Replace geometric object.
|
||||
void ChangeSpaceItem( MbSpaceItem & init );
|
||||
/// \ru Дать тип операции. \en Get operation type.
|
||||
MbeCreatorType GetOperationType() const { return type; }
|
||||
|
||||
DECLARE_PERSISTENT_CLASS_NEW_DEL( MbGeomAttribute )
|
||||
OBVIOUS_PRIVATE_COPY( MbGeomAttribute )
|
||||
};
|
||||
|
||||
IMPL_PERSISTENT_OPS( MbGeomAttribute )
|
||||
|
||||
#endif // __ATTR_GEOMETRIC_ATTRIBUTE_H
|
||||
Reference in New Issue
Block a user