C3D Toolkit  Kernel - 105122, Vision - 0.181114.105122

Данные об образующей. Подробнее...

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

 MbSweptData ()
 Конструктор по умолчанию.
 
 MbSweptData (const MbSweptData &, MbRegDuplicate *ireg=NULL)
 Конструктор копирования.
 
 MbSweptData (const MbPlacement3D &place, MbContour &contour)
 Конструктор плоской образующей. Подробнее...
 
 MbSweptData (MbSurface &_surface, RPArray< MbContour > &_contours)
 Конструктор. Подробнее...
 
 MbSweptData (MbSurface &_surface, std::vector< SPtr< MbContour > > &_contours)
 Конструктор. Подробнее...
 
 MbSweptData (RPArray< MbContour3D > &_contours3d)
 Конструктор. Подробнее...
 
 MbSweptData (std::vector< SPtr< MbContour3D > > &_contours3d)
 Конструктор. Подробнее...
 
 MbSweptData (MbSolid &_solid)
 Конструктор. Подробнее...
 
 MbSweptData (MbSurface *_surface, RPArray< MbContour > &_contours, RPArray< MbContour3D > &_contours3d, MbSolid *_solid)
 Конструктор. Подробнее...
 
 ~MbSweptData ()
 Деструктор.
 
bool AddData (MbSurface &_surface, const RPArray< MbContour > &_contours)
 Добавить данные. Подробнее...
 
bool AddData (MbSurface &_surface, std::vector< SPtr< MbContour > > &_contours)
 Добавить данные. Подробнее...
 
size_t CurvesCount () const
 Количество всех кривых. Подробнее...
 
SPtr< MbCurve3DGetCurve3D (size_t i) const
 Получить кривую по индексу. Подробнее...
 
bool IsSurfaceCurvesData () const
 Есть данные о двумерных кривых на поверхности?
 
bool IsSpaceCurvesData () const
 Есть данные о пространственных кривых?
 
bool IsSolidData () const
 Есть данные о теле?
 
const MbSurfaceGetSurface () const
 Выдать поверхность.
 
MbSurfaceSetSurface ()
 Выдать поверхность для изменения.
 
const std::vector< SPtr< MbContour > > & GetContours () const
 Выдать набор двумерных контуров.
 
const std::vector< SPtr< MbContour3D > > & GetContours3D () const
 Выдать набор трехмерных контуров.
 
const MbSolidGetSolid () const
 Выдать тело.
 
MbSolidSetSolid () const
 Выдать тело для изменения.
 
void Transform (const MbMatrix3D &matr, MbRegTransform *iReg=NULL)
 Преобразовать объект. Подробнее...
 
void Move (const MbVector3D &to, MbRegTransform *iReg=NULL)
 Сдвинуть объект. Подробнее...
 
void Rotate (const MbAxis3D &axis, double angle, MbRegTransform *iReg=NULL)
 Повернуть объект. Подробнее...
 
bool IsSame (const MbSweptData &other, double accuracy) const
 Определить, являются ли объекты равными. Подробнее...
 
bool IsSimilar (const MbSweptData &other) const
 Определить, являются ли объекты подобными. Подробнее...
 
bool SetEqual (const MbSweptData &other)
 Сделать объекты равным. Подробнее...
 
bool IsContoursClosed () const
 Замкнуты ли все контуры. Подробнее...
 
bool CheckSurfaceContourConnection (double eps) const
 Проверить, что нет разрывов между сегментами поверхностных контуров.
 
bool CheckSpaceContourConnection (double eps) const
 Проверить, что нет разрывов между сегментами пространственных контуров.
 

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

Данные об образующей.

Данные об образующей операции движения.
Образующая операции выдавливания, вращения или кинематической операции может включать в себя набор двумерных контуров, набор трехмерных контуров, тело.
Для набора двумерных контуров на поверхности существуют следующие ограничения:
– может быть один или несколько контуров;
– если контуров несколько, они должны быть либо все замкнуты, либо все разомкнуты;

  • если контуры замкнуты, они могут быть вложенными друг в друга, уровень вложенности не ограничивается;
    – контуры не должны пересекаться между собой или самопересекаться.
    Для двумерных контуров на не плоской поверхности есть дополнительное ограничение: все контуры должны быть замкнуты.
    Построение операции по двумерным контурам на не плоской поверхности рассчитано на указание пользователем грани тела в качестве образующей. В этом случае данные для образующей можно получить с помощью метода грани MbFace::GetSurfaceCurvesData.
    Ограничения для трехмерных контуров:
    – контуры не должны пересекаться между собой или самопересекаться.

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

◆ MbSweptData() [1/7]

MbSweptData::MbSweptData ( const MbPlacement3D place,
MbContour contour 
)

Конструктор плоской образующей.

Конструктор плоской образующей из одного контура.

Аргументы
[in]place- Локальная система координат.
[in]contour- Контур в параметрах заданной системы координат. Используется оригинал.

◆ MbSweptData() [2/7]

MbSweptData::MbSweptData ( MbSurface _surface,
RPArray< MbContour > &  _contours 
)

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

Конструктор по набору контуров на поверхности.

Аргументы
[in]_surface- Поверхность. Используется оригинал.
[in]_contours- Набор контуров. Используются оригиналы.

◆ MbSweptData() [3/7]

MbSweptData::MbSweptData ( MbSurface _surface,
std::vector< SPtr< MbContour > > &  _contours 
)

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

Конструктор по набору контуров на поверхности.

Аргументы
[in]_surface- Поверхность. Используется оригинал.
[in]_contours- Набор контуров. Используются оригиналы.

◆ MbSweptData() [4/7]

MbSweptData::MbSweptData ( RPArray< MbContour3D > &  _contours3d)

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

Конструктор по набору пространственных контуров.

Аргументы
[in]_contours3d- Набор контуров. Используются оригиналы.

◆ MbSweptData() [5/7]

MbSweptData::MbSweptData ( std::vector< SPtr< MbContour3D > > &  _contours3d)

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

Конструктор по набору пространственных контуров.

Аргументы
[in]_contours3d- Набор контуров. Используются оригиналы.

◆ MbSweptData() [6/7]

MbSweptData::MbSweptData ( MbSolid _solid)

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

Конструктор по телу.

Аргументы
[in]_solid- Тело. Используется оригинал объекта.

◆ MbSweptData() [7/7]

MbSweptData::MbSweptData ( MbSurface _surface,
RPArray< MbContour > &  _contours,
RPArray< MbContour3D > &  _contours3d,
MbSolid _solid 
)

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

Конструктор смешанной образующей.

Аргументы
[in]_surface- Поверхность. Используется оригинал.
[in]_contours- Набор двумерных контуров в параметрах заданной поверхности. Используются оригиналы.
[in]_contours3d- Набор трехмерных контуров. Используются оригиналы.
[in]_solid- Тело. Используется оригинал объекта.

Методы

◆ AddData() [1/2]

bool MbSweptData::AddData ( MbSurface _surface,
const RPArray< MbContour > &  _contours 
)

Добавить данные.

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

Аргументы
[in]_surface- Поверхность. Добавляется оригинал объекта.
[in]_contours- Набор контуров. Добавляются оригиналы.

◆ AddData() [2/2]

bool MbSweptData::AddData ( MbSurface _surface,
std::vector< SPtr< MbContour > > &  _contours 
)

Добавить данные.

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

Аргументы
[in]_surface- Поверхность. Добавляется оригинал объекта.
[in]_contours- Набор контуров. Добавляются оригиналы.

◆ CurvesCount()

size_t MbSweptData::CurvesCount ( ) const

Количество всех кривых.

Общее количество двумерных и трехмерных кривых.

◆ GetCurve3D()

SPtr<MbCurve3D> MbSweptData::GetCurve3D ( size_t  i) const

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

Получить кривую из множества кривых на поверхности и трехмерных кривых.

Аргументы
[in]i- Номер кривой в пределах от 0 до CurvesCount().
Возвращает
Кривую на поверхности или трехмерную кривую.

◆ Transform()

void MbSweptData::Transform ( const MbMatrix3D matr,
MbRegTransform iReg = NULL 
)

Преобразовать объект.

Преобразовать исходный объект согласно матрице c использованием регистратора.

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

◆ Move()

void MbSweptData::Move ( const MbVector3D to,
MbRegTransform iReg = NULL 
)

Сдвинуть объект.

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

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

◆ Rotate()

void MbSweptData::Rotate ( const MbAxis3D axis,
double  angle,
MbRegTransform iReg = NULL 
)

Повернуть объект.

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

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

◆ IsSame()

bool MbSweptData::IsSame ( const MbSweptData other,
double  accuracy 
) const

Определить, являются ли объекты равными.

Определить, являются ли объекты равными с заданной точностью.

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

◆ IsSimilar()

bool MbSweptData::IsSimilar ( const MbSweptData other) const

Определить, являются ли объекты подобными.

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

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

◆ SetEqual()

bool MbSweptData::SetEqual ( const MbSweptData other)

Сделать объекты равным.

Равными можно сделать только подобные объекты.

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

◆ IsContoursClosed()

bool MbSweptData::IsContoursClosed ( ) const

Замкнуты ли все контуры.

Замкнуты ли все контуры.

Возвращает
Возвращает true, если все контуры замкнуты.

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