C3D Toolkit  Kernel - 105122, Vision - 0.181114.105122

Размножение по сетке. Подробнее...

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

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

 DuplicationMeshValues (bool polar=false)
 Конструктор по типу. Подробнее...
 
 DuplicationMeshValues (bool isPolar, const MbVector3D &dir1, const double step1, const unsigned int num1, const MbVector3D &dir2, const double step2, const unsigned int num2, const MbCartPoint3D *center=NULL, bool isAlongAxis=false)
 Конструктор по параметрам и типу. Подробнее...
 
virtual ~DuplicationMeshValues ()
 Деструктор.
 
void Init (const DuplicationMeshValues &other)
 Функция копирования.
 
virtual bool Init (const DuplicationValues &other)
 Функция копирования.
 
virtual MbeDuplicatesType Type () const
 Тип параметров.
 
virtual void Transform (const MbMatrix3D &, MbRegTransform *ireg=NULL)
 Преобразовать сетку согласно матрице.
 
virtual void Move (const MbVector3D &, MbRegTransform *ireg=NULL)
 Сдвинуть сетку вдоль вектора.
 
virtual void Rotate (const MbAxis3D &, double ang, MbRegTransform *ireg=NULL)
 Повернуть сетку вокруг оси на заданный угол.
 
virtual void GetProperties (MbProperties &)
 Выдать свойства объекта
 
virtual void SetProperties (const MbProperties &)
 Записать свойства объекта
 
virtual bool IsSame (const DuplicationValues &, double accuracy) const
 Являются ли объекты равными? Подробнее...
 
virtual DuplicationValuesDuplicate (MbRegDuplicate *ireg=NULL) const
 Построить копию объекта.
 
virtual void GenerateTransformMatrices (SArray< MbMatrix3D > &tfMatr) const
 Сгенерировать матрицы трансформации.
 
virtual size_t Count () const
 Количество создаваемых копий.
 
void SetDirection (bool first, const MbVector3D &dir)
 Установить одно из направлений сетки. Подробнее...
 
void GetDirection (bool first, MbVector3D &dir) const
 Получить одно из направлений сетки. Подробнее...
 
void SetStep (bool first, const double step)
 Установить шаг по одному из направлений сетки. Подробнее...
 
void GetStep (bool first, double &step) const
 Получить шаг по одному из направлений сетки. Подробнее...
 
void SetNumStep (bool first, const uint num)
 Установить количество шагов по одному из направлений сетки. Подробнее...
 
bool IsPolar () const
 Полярная ли сетка? Подробнее...
 
void SetPolar (bool p)
 Задать тип сетки. Подробнее...
 
void GetNumStep (bool first, uint &num) const
 Получить количество шагов по одному из направлений сетки. Подробнее...
 
bool IsAlongAxis () const
 Тело вдоль радиальной оси? Подробнее...
 
MbCartPoint3D GetCenter () const
 Вернуть центр полярной системы. Подробнее...
 
void SetCenter (MbCartPoint3D &cntr)
 Установить центр полярной системы. Подробнее...
 
- Открытые члены унаследованные от DuplicationValues
virtual ~DuplicationValues ()
 Деструктор.
 

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

MbVector3D axis1
 Направление размножения (dt_Grid и dt_Polar).
 
MbVector3D axis2
 Направление размножения (dt_Grid), направление оси вращения (dt_Polar).
 
double step1
 Шаг по направлению axis1 (dt_Grid и dt_Polar).
 
double step2
 Шаг по направлению axis2 (dt_Grid), угол поворота (dt_Polar).
 
uint num1
 Кол-во шагов по направлению axis1 (dt_Grid и dt_Polar).
 
uint num2
 Кол-во шагов по направлению axis2 (dt_Grid), кол-во угловых шагов (dt_Polar).
 
bool isPolar
 Тип сетки, false - dt_Grid, true - dt_Polar. Type of grid, false - dt_Grid, true - dt_Polar.
 
bool isAlongAxis
 true - тела расположены вдоль радиальной оси, false - параллельно исходному телу.
 
MbCartPoint3D center
 Центр локальной системы координат (и точка приложения оси вращения в случае подярной системы).
 

Дополнительные унаследованные члены

- Защищенные члены унаследованные от DuplicationValues
 DuplicationValues ()
 Конструктор по умолчанию.
 

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

Размножение по сетке.

Параметры размножение по размножение по декартовой сетке или по полярной сетке.
Тип сетки определяется флагом 'isPolar':
false - dt_Grid, true - dt_Polar.
Исходное тело находится в центре сетки.
Вектор 'axis1' задает одно из направлений декартовой сетки или направление луча в полярной сетке.
Вектор 'axis2' задает другое направление декартовой сетки или ось вращения в полярной сетке, точка оси не важна т.к. поворачиваются только вектора.
'step1' и step2' задают шаги по направлениям декартовой сетки.
'step1' - задает шаг по лучу полярной сетки, 'step2' задает угол поворота.
'num1' и 'num2' задают кол-во шагов 'step1' и 'step2' соответственно.
Ориентация тел на сетке определяется флагом 'isAlongAxis'.
Если флаг 'isAlongAxis' = true, то тела ориентированы вдоль радиальной оси, false - параллельно исходному телу.
'center' задает центр локальной системы коолдинат.
ВАЖНО! У векторов 'axis1', 'axis2' учитываются только направления, при инициализации или изменении происходит нормирование.

Конструктор(ы)

◆ DuplicationMeshValues() [1/2]

DuplicationMeshValues::DuplicationMeshValues ( bool  polar = false)

Конструктор по типу.

Конструктор размножения по сетке.
Вектора и значения инициализируются нулевыми, тип сетки инициализируется параметром, по умолчанию 'false'.

◆ DuplicationMeshValues() [2/2]

DuplicationMeshValues::DuplicationMeshValues ( bool  isPolar,
const MbVector3D dir1,
const double  step1,
const unsigned int  num1,
const MbVector3D dir2,
const double  step2,
const unsigned int  num2,
const MbCartPoint3D center = NULL,
bool  isAlongAxis = false 
)

Конструктор по параметрам и типу.

Конструктор размножения по сетке.
Тип сетки, направления осей, шаги и кол-во шагов инициализируются параметрами.

Методы

◆ IsSame()

virtual bool DuplicationMeshValues::IsSame ( const DuplicationValues ,
double  accuracy 
) const
virtual

Являются ли объекты равными?

Являются ли объекты равными?

Замещает DuplicationValues.

◆ SetDirection()

void DuplicationMeshValues::SetDirection ( bool  first,
const MbVector3D dir 
)

Установить одно из направлений сетки.

Установить одно из направлений сетки.

◆ GetDirection()

void DuplicationMeshValues::GetDirection ( bool  first,
MbVector3D dir 
) const

Получить одно из направлений сетки.

Получить одно из направлений сетки.

◆ SetStep()

void DuplicationMeshValues::SetStep ( bool  first,
const double  step 
)

Установить шаг по одному из направлений сетки.

Установить шаг по одному из направлений сетки.

◆ GetStep()

void DuplicationMeshValues::GetStep ( bool  first,
double &  step 
) const

Получить шаг по одному из направлений сетки.

Получить шаг по одному из направлений сетки.

◆ SetNumStep()

void DuplicationMeshValues::SetNumStep ( bool  first,
const uint  num 
)

Установить количество шагов по одному из направлений сетки.

Установить количество шагов по одному из направлений сетки.

◆ IsPolar()

bool DuplicationMeshValues::IsPolar ( ) const
inline

Полярная ли сетка?

Задана ли сетка в полярной системе координат?

◆ SetPolar()

void DuplicationMeshValues::SetPolar ( bool  p)
inline

Задать тип сетки.

Задать сетку в полярной или декартовой системе координат.

◆ GetNumStep()

void DuplicationMeshValues::GetNumStep ( bool  first,
uint &  num 
) const

Получить количество шагов по одному из направлений сетки.

Получить количество шагов по одному из направлений сетки.

◆ IsAlongAxis()

bool DuplicationMeshValues::IsAlongAxis ( ) const
inline

Тело вдоль радиальной оси?

Тело вдоль радиальной оси?

◆ GetCenter()

MbCartPoint3D DuplicationMeshValues::GetCenter ( ) const
inline

Вернуть центр полярной системы.

Вернуть центр полярной системы.

◆ SetCenter()

void DuplicationMeshValues::SetCenter ( MbCartPoint3D cntr)
inline

Установить центр полярной системы.

Установить центр полярной системы.


Объявления и описания членов класса находятся в файле: