C3D Toolkit  Kernel - 105122, Vision - 0.181114.105122

Граф построения контуров. Подробнее...

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

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

 MpGraph ()
 Конструктор.
 
 MpGraph (MpLoop *init)
 Конструктор по циклу.
 
 MpGraph (RPArray< MpLoop > &init)
 Конструктор по набору циклов.
 
 MpGraph (const MpGraph &)
 Копирующий конструктор.
 
virtual ~MpGraph ()
 Деструктор.
 
Функции доступа к данным.
size_t GetLoopsCount () const
 Количество границ.
 
MpLoopGetLoop (size_t index) const
 Цикл по индексу. Подробнее...
 
int GetMode () const
 Направление обхода.
 
bool GetPointIn (const RPArray< MbCurve > &curveList, SArray< MbCrossPoint > &cross, MbCartPoint &p, double epsilon=Math::LengthEps *c3d::METRIC_DELTA) const
 Выдать точку. Подробнее...
 
void GetUsedCurves (const RPArray< MbCurve > &curveList, RPArray< MbCurve > &usedCurves)
 Выдать использованные кривые. Подробнее...
 
bool GetLoopOrientation (size_t i) const
 Ориентация цикла по индексу. Подробнее...
 
Функции изменения данных.
void AddLoop (MpLoop *newLoop)
 Добавить новую границу грани.
 
void InsertLoop (MpLoop *newLoop)
 Добавить новую границу грани в начало списка границ.
 
void SetMode (int m)
 Установить направление обхода.
 
void MakeContours (RPArray< MbContour > &contours) const
 Выдать контуры циклов.
 
void SetAllName (const RPArray< MbCurve > &curveList, MpGraph *g)
 Запомнить неиспользованные ребра. Подробнее...
 
void SetEdgeName (const RPArray< MbCurve > &curveList)
 Дать имена ребрам. Подробнее...
 
void SetLoopsOrientation (const RPArray< MbContour > &contourArray)
 Определить ориентацию контуров. Подробнее...
 
void ConvertEdgesParams (const SArray< ptrdiff_t > &unchangeCurve, const SArray< ptrdiff_t > &changeCurve, const RPArray< MbCurve > &curveList) const
 Перевести параметры ребер в параметры кривых. Подробнее...
 
Операции преобразования.
void Transform (const MbMatrix &matr)
 Преобразование. Подробнее...
 
void Move (const MbVector &to)
 Переместить. Подробнее...
 
void Rotate (const MbCartPoint &pnt, const MbDirection &angle)
 Повернуть. Подробнее...
 
- Открытые члены унаследованные от TapeBase
 TapeBase (RegistrableRec regs=noRegistrable)
 Конструктор.
 
 TapeBase (const TapeBase &other)
 Конструктор копирования
 
virtual ~TapeBase ()
 Деструктор.
 
RegistrableRec GetRegistrable () const
 Является ли потоковый класс регистрируемым.
 
void SetRegistrable (RegistrableRec regs=registrable) const
 Установить состояние регистрации потокового класса.
 
virtual ClassDescriptor GetClassDescriptor (const VersionContainer &) const =0
 Получить дескриптор класса
 
virtual const char * GetPureName (const VersionContainer &) const
 Получить имя класса.
 
virtual bool IsFamilyRegistrable () const
 Принадлежит ли объект к регистрируемому семейству.
 

Открытые атрибуты

PArray< MpLooploops
 Список границ.
 
int mode
 Направление обхода.
 
ptrdiff_t nameCount
 Количество имен ребер.
 
PArray< MpEdgeunusedEdges
 Список ребер.
 

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

Граф построения контуров.

Граф построения контуров.
Содержит список границ - циклов.

Методы

◆ GetLoop()

MpLoop* MpGraph::GetLoop ( size_t  index) const
inline

Цикл по индексу.

Цикл по индексу без проверки индекса.

Аргументы
[in]index- Индекс цикла.

◆ GetPointIn()

bool MpGraph::GetPointIn ( const RPArray< MbCurve > &  curveList,
SArray< MbCrossPoint > &  cross,
MbCartPoint p,
double  epsilon = Math::LengthEps *c3d::METRIC_DELTA 
) const

Выдать точку.

Выдать точку для сборки графа.

Аргументы
[in]curveList- Набор кривых (без совпадений) для создания графа.
[in]cross- Набор точек пересечения кривых из curveList.


Аргументы
[out]p- Результат - двумерная точка.

◆ GetUsedCurves()

void MpGraph::GetUsedCurves ( const RPArray< MbCurve > &  curveList,
RPArray< MbCurve > &  usedCurves 
)

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

Выдать использованные кривые и переименовать в соответствии с последними.

Аргументы
[in]curveList- Набор кривых.


Аргументы
[out]usedCurves- Результат - использованные кривые.

◆ GetLoopOrientation()

bool MpGraph::GetLoopOrientation ( size_t  i) const
inline

Ориентация цикла по индексу.

Ориентация цикла по индексу без проверки индекса.

Аргументы
[in]i- Индекс цикла.
Возвращает
Ориентацию цикла.

◆ SetAllName()

void MpGraph::SetAllName ( const RPArray< MbCurve > &  curveList,
MpGraph g 
)

Запомнить неиспользованные ребра.

Запомнить неиспользованные ребра, установив им имена.

Аргументы
[in]curveList- Список неиспользованных кривых для установки имен.
[in]g- Граф для поиска неиспользованных ребер.
Если в нем или в его массиве неиспользованных ребер нашлось ребро с только что установленным именем, то оно запоминается в массиве неиспользованных ребер unusedEdges.

◆ SetEdgeName()

void MpGraph::SetEdgeName ( const RPArray< MbCurve > &  curveList)

Дать имена ребрам.

Дать имена ребрам по списку кривых.

Аргументы
[in]curveList- Список кривых для именования.

◆ SetLoopsOrientation()

void MpGraph::SetLoopsOrientation ( const RPArray< MbContour > &  contourArray)

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

Определить ориентацию контуров по их вложенности.

Аргументы
[in]contourArray- Список контуров, по которым строился граф.

◆ ConvertEdgesParams()

void MpGraph::ConvertEdgesParams ( const SArray< ptrdiff_t > &  unchangeCurve,
const SArray< ptrdiff_t > &  changeCurve,
const RPArray< MbCurve > &  curveList 
) const

Перевести параметры ребер в параметры кривых.

Перевести параметры ребер в параметры кривых, если кривые ребер нашлись в списках.

Аргументы
[in]unchangeCurve- Список имен кривых для изменения.


Аргументы
[in]changeCurve- Список имен кривых для изменения.
[in]curveList- Список кривых для изменения параметризации.
Предупреждения
Для внутреннего использования.

◆ Transform()

void MpGraph::Transform ( const MbMatrix matr)

Преобразование.

Преобразование в соответствии с матрицей.

Аргументы
[in]matr- Матрица трансформации.

◆ Move()

void MpGraph::Move ( const MbVector to)

Переместить.

Переместить на вектор.

Аргументы
[in]to- Вектор перемещения.

◆ Rotate()

void MpGraph::Rotate ( const MbCartPoint pnt,
const MbDirection angle 
)

Повернуть.

Повернуть на угол вокруг точки.

Аргументы
[in]pnt- Точка - центр поворота.
[in]angle- Двумерный нормализованный вектор, задающий угол вращения.

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