C3D Toolkit  Kernel - 105122, Vision - 0.181114.105122

Ребро. Подробнее...

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

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

 MbEdge (const MbCurve3D &initCurve, bool sense, const MbVertex &beg, const MbVertex &end)
 Конструктор по кривой, ее ориентации и вершинам.
 
 MbEdge (const MbCurve3D &initCurve, bool sense, const MbVertex *beg, const MbVertex *end)
 Конструктор по кривой, ее ориентации и вершинам. Подробнее...
 
 MbEdge (const MbCurve3D &initCurve, bool sense)
 Конструктор по кривой и ее ориентации. Подробнее...
 
 MbEdge (const MbEdge &other, const MbCurve3D &newCurve)
 Конструктор копирования с использованием другой кривой.
 
virtual ~MbEdge ()
 Деструктор.
 
virtual MbeTopologyType IsA () const
 Тип элемента.
 
virtual MbEdgeDataDuplicate (MbRegDuplicate *=NULL) const
 Создать новое ребро копированием всех данных исходного ребра.
 
virtual void Transform (const MbMatrix3D &, MbRegTransform *=NULL)
 Преобразовать согласно матрице. Подробнее...
 
virtual void Move (const MbVector3D &, MbRegTransform *=NULL)
 Сдвинуть вдоль вектора. Подробнее...
 
virtual void Rotate (const MbAxis3D &, double angle, MbRegTransform *=NULL)
 Повернуть вокруг оси. Подробнее...
 
virtual double DistanceToPoint (const MbCartPoint3D &) const
 Вычислить расстояние до точки.
 
virtual void AddYourGabaritTo (MbCube &) const
 Добавить свой габарит в присланный габарит.
 
virtual void CalculateLocalGabarit (const MbMatrix3D &into, MbCube &cube) const
 Рассчитать габарит в локальной системы координат, заданной матрицей преобразования в эту систему.
 
virtual void SetOwnChangedThrough (MbeChangedType)
 Установить флаг изменения в положение измененного объекта.
 
virtual void Reverse ()
 Изменить направление ребра на противоположной, не изменяя кривую.
 
virtual bool IsSame (const MbTopologyItem &other, double accuracy) const
 Являются ли объекты равными?
 
virtual void CalculateMesh (const MbStepData &stepData, const MbFormNote &note, MbMesh &mesh) const
 Построить полигональную копию объекта mesh.
 
virtual bool ChangeCurve (MbCurve3D &crv)
 Замена кривой ребра на кривую crv.
 
const MbCurve3DGetCurve () const
 Выдать кривую, по которой проходит ребро.
 
MbCurve3DSetCurve ()
 Выдать кривую, по которой проходит ребро.
 
bool IsSameSense () const
 Выдать направление по отношению к кривой.
 
void SetSameSense (bool s)
 Установить направление по отношению к кривой.
 
const MbVertexGetBegVertexPointer () const
 Выдать вершину-начало.
 
const MbVertexGetEndVertexPointer () const
 Выдать вершину-конец.
 
const MbVertexGetBegVertex () const
 Выдать вершину-начало.
 
const MbVertexGetEndVertex () const
 Выдать вершину-конец.
 
const MbVertexGetVertex (size_t i) const
 Выдать вершину по номеру (0 - вершина-начало, 1 - вершина-конец).
 
MbVertexSetBegVertex ()
 Выдать вершину-начало.
 
MbVertexSetEndVertex ()
 Выдать вершину-конец.
 
MbVertexSetVertex (size_t i)
 Выдать вершину по номеру (0 - вершина-начало, 1 - вершина-конец).
 
void SetBegVertex (const MbVertex &ver)
 Установить вершину-начало.
 
void SetEndVertex (const MbVertex &ver)
 Установить вершину-конец.
 
const MbVertexGetTMinVertex () const
 Выдать вершину, соответствующую начальной точке кривой.
 
const MbVertexGetTMaxVertex () const
 Выдать вершину, соответствующую конечной точке кривой.
 
MbVertexSetTMinVertex ()
 Выдать вершину, соответствующую начальной точке кривой.
 
MbVertexSetTMaxVertex ()
 Выдать вершину, соответствующую конечной точке кривой.
 
void SetTMinVertex (const MbVertex &ver)
 Установить вершину, соответствующую начальной точке кривой.
 
void SetTMaxVertex (const MbVertex &ver)
 Установить вершину, соответствующую конечной точке кривой.
 
double GetTBegVertex () const
 Выдать параметр кривой, соответствующий начальной вершине.
 
double GetTEndVertex () const
 Выдать параметр кривой, соответствующий конечной вершине.
 
bool IsStraight () const
 Является ли ребро прямолинейным?
 
void GetBegVertexPoint (MbCartPoint3D &cp) const
 Выдать декартову точку начальной вершины.
 
void GetEndVertexPoint (MbCartPoint3D &cp) const
 Выдать декартову точку конечной вершины.
 
bool IsColinear (const MbPlacement3D &p, double epsilon=Math::angleRegion) const
 Параллельно ли ребро плейсменту?
 
bool IsClosed () const
 Является ли ребро циклически замкнутым?
 
void SetLabelThrough (MbeLabelState l, void *key=NULL) const
 Установить метку себе и вершинам.
 
void RemovePrivateLabelThrough (void *key) const
 Удалить частную метку себе и вершинам.
 
bool IsVertexOn (const MbVertex *vertex) const
 Проверка того, что вершина принадлежит ребру.
 
const MbVertexIsConnectedWith (const MbEdge &edge) const
 Нахождение общей вершины ребер.
 
void GetVerticesArray (RPArray< MbVertex > &)
 Добавить вершины ребра в множество вершин (если их там нет).
 
void GetVerticesArray (RPArray< const MbVertex > &) const
 Добавить вершины ребра в множество вершин (если их там нет).
 
double GetCurveParam (double w) const
 Дать параметр для кривой по параметру ребра (0 <= w <= 1).
 
double GetEdgeParam (double t) const
 Дать параметр от 0(начало) до 1(конец) для ребра по параметру кривой.
 
void Point (double t, MbCartPoint3D &) const
 Вычислить точка на ребре (0 <= t <= 1).
 
void GetBegPoint (MbCartPoint3D &p) const
 Получить точку в начальной вершине.
 
void GetEndPoint (MbCartPoint3D &p) const
 Получить точку в конечной вершине.
 
void Tangent (double t, MbVector3D &) const
 Выдать касательный вектор к ребру ( 0 <= t <= 1 ).
 
void GetBegTangent (MbVector3D &v) const
 Выдать касательный вектор в начальной вершине.
 
void GetEndTangent (MbVector3D &v) const
 Выдать касательный вектор в конечной вершине.
 
void GetMiddleDerive (MbVector3D &) const
 Вычислить производную в середине ребра.
 
double GetMetricLength () const
 Выдать метрическую длину ребра.
 
double GetLengthEvaluation () const
 Выдать оценку метрической длины ребра.
 
double DistanceToEdge (const MbEdge &edge, MbCartPoint3D &p0, MbCartPoint3D &p1) const
 Вычислить ближайшее расстояние до ребра.
 
double DistanceToFace (const MbFace &face, MbCartPoint3D &p0, MbCartPoint3D &p1) const
 Вычислить ближайшее расстояние до грани.
 
double DistanceToSurface (const MbSurface &surf, MbCartPoint3D &p0, MbCartPoint3D &p1) const
 Вычислить ближайшее расстояние до поверхности.
 
double PointProjection (const MbCartPoint3D &) const
 Вычислить проекцию точки на ребро.
 
bool PointProjection (const MbCartPoint3D &p0, MbCartPoint3D &pOnEdge, double &distance) const
 Вычислить проекцию точки на продолжение прямого ребра.
 
bool AngleWithEdge (const MbEdge &, double &angle) const
 Вычислить угол между прямыми ребрами.
 
MbCurveGetProjection (const MbPlacement3D &, VERSION version) const
 Создать проекцию ребра на плоскость.
 
void GetProperties (MbProperties &)
 Выдать свойства объекта.
 
void SetProperties (const MbProperties &)
 Установить свойства объекта.
 
- Открытые члены унаследованные от MbTopologyItem
virtual ~MbTopologyItem ()
 Деструктор.
 
virtual MbeImplicationType ImplicationType () const
 Тип контейнера атрибутов.
 
const MbNameGetName () const
 Выдать имя объекта.
 
MbNameSetName ()
 Выдать имя объекта для модификации.
 
SimpleName GetMainName () const
 Выдать главное имя.
 
void SetMainName (SimpleName n)
 Установить главное имя.
 
SimpleName GetFirstName () const
 Получить первое имя.
 
SimpleName GetNameHash () const
 Выдать hash имени.
 
void SetName (const MbName &n)
 Установить имя.
 
bool GetOwnChanged () const
 Получить флаг, свидетельствующий о том, что объект был (не был) изменен.
 
bool GetOwnChanged (MbeChangedType n) const
 Получить флаг, свидетельствующий о том, что объект был (не был) изменен.
 
void SetOwnChanged (MbeChangedType)
 Установить флаг, свидетельствующий о том, что объект был (не был) изменен.
 
void CopyOwnChanged (const MbTopologyItem &ti)
 Копировать флаг, свидетельствующий о том, что объект был (не был) изменен.
 
uint16 GetOwnChangedFlag () const
 Получить флаг, свидетельствующий о том, что объект был (не был) изменен.
 
template<class Uint >
void SetOwnChangedFlag (Uint n)
 Установить флаг, свидетельствующий о том, что объект был (не был) изменен.
 
bool IsOwnRenamedOnly () const
 Получить флаг, свидетельствующий о том, что объект был только переименован.
 
bool IsOwnTransformedOnly () const
 Получить флаг, свидетельствующий о том, что объект был только трансформирован.
 
bool IsOwnReorientedOnly () const
 Получить флаг, свидетельствующий о том, что объект был только переориентирован.
 
bool IsOwnChangedWeakly () const
 Получить флаг, свидетельствующий о том, что объект был создан, переименован, трансформирован или переориентирован.
 
MbeLabelState GetLabel (void *key=NULL) const
 Получить метку.
 
void SetOwnLabel (MbeLabelState l, void *key=NULL) const
 Установить метку.
 
bool ToDelete () const
 Предназначен ли объект для удаления? Определяется по меткам.
 
void RemovePrivateLabel (void *key=NULL) const
 Удалить частную метку.
 
void Assign (const MbTopologyItem &other)
 Копирование данных объекта.
 
void RemoveParentNamesAttribute ()
 Удалить атрибут типа имя с родительскими именами.
 
- Открытые члены унаследованные от MbTopItem
virtual MbeRefType RefType () const
 Регистрационный тип (для копирования, дублирования).
 
void PrepareWrite ()
 Подготовить объект к записи.
 
bool IsAVertex () const
 Это вершина?
 
bool IsAWireEdge () const
 Это ребро каркаса?
 
bool IsAnEdge () const
 Это ребро?
 
bool IsAFace () const
 Это грань?
 
bool IsAShell () const
 Это оболочка?
 
- Открытые члены унаследованные от MbRefItem
 MbRefItem ()
 Конструктор без параметров.
 
refcount_t GetUseCount () const
 Выдать количество ссылок (выдать количество владельцев объекта).
 
refcount_t AddRef () const
 Увеличить количество ссылок на единицу.
 
refcount_t DecRef () const
 Уменьшить количество ссылок на единицу.
 
refcount_t Release () const
 Уменьшить количество ссылок на единицу и, если количество ссылок стало равным нулю, удалить себя.
 
- Открытые члены унаследованные от 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
 Принадлежит ли объект к регистрируемому семейству.
 
- Открытые члены унаследованные от MbAttributeContainer
 MbAttributeContainer ()
 Конструктор без параметров.
 
 MbAttributeContainer (MbAttribute &)
 Конструктор по атрибуту.
 
virtual ~MbAttributeContainer ()
 Деструктор.
 
void AttributesRead (reader &)
 Прочитать атрибуты из потока.
 
void AttributesWrite (writer &) const
 Записать атрибуты в поток.
 
void GetProperties (MbProperties &)
 Выдать свойства атрибутов.
 
void SetProperties (const MbProperties &)
 Установить свойства атрибутов.
 
void SetDensity (double)
 Установить плотность объекта.
 
double GetDensity () const
 Выдать плотность объекта.
 
void SetVisual (float a, float d, float sp, float sh, float t, float e)
 Установить визуальные свойства объекта.
 
bool GetVisual (float &a, float &d, float &sp, float &sh, float &t, float &e) const
 Выдать визуальные свойства объекта. Подробнее...
 
bool IsColored () const
 Есть ли у объекта свой цвет. Подробнее...
 
void SetColor (uint32)
 Изменить цвет объекта.
 
uint32 GetColor () const
 Выдать цвет объекта.
 
void SetWidth (int)
 Установить толщину линий для отображения объекта.
 
int GetWidth () const
 Выдать толщину линий для отображения объекта.
 
void SetStyle (int)
 Установить стиль линий для отображения объекта.
 
int GetStyle () const
 Выдать стиль линий для отображения объекта.
 
void SetSelected (bool s=true)
 Выделить или не выделить объект.
 
bool IsSelected () const
 Выделен ли объект?
 
bool ReverseSelected ()
 Инвертировать выделение объекта.
 
void SetChanged (bool c=true)
 Задать: объект изменен или не изменён.
 
bool IsChanged () const
 Изменен ли объект?
 
void SetVisible (bool)
 Установить видимость.
 
bool IsVisible () const
 Видимый ли объект?
 
bool IsInvisible () const
 Не видимый ли элемент?
 
void AttributesAssign (const MbAttributeContainer &)
 Cдублировать атрибуты присланного объекта, свои отпустить.
 
size_t AttributesCount () const
 Выдать количество объектов.
 
void RemoveAttributes ()
 Удалить все атрибуты из контейнера.
 
MbAttributeAddAttribute (MbAttribute *attr, bool checkSame=true)
 Добавить атрибут в контейнер.
 
MbAttributeAddAttribute (const MbAttribute &attr, bool checkSame=true)
 Добавить атрибут в контейнер (всегда копирует атрибут).
 
void GetAttributes (std::vector< MbAttribute *> &attrs, MbeAttributeType type, MbeAttributeType subType) const
 Выдать атрибуты заданного типа.
 
void GetCommonAttributes (std::vector< MbAttribute *> &attrs, const c3d::string_t &samplePrompt, MbeAttributeType subType=at_Undefined) const
 Выдать атрибуты по строке описания.
 
void GetStringAttributes (std::vector< MbAttribute *> &attrs, const c3d::string_t &sampleContent) const
 Выдать строковые атрибуты по строке содержания.
 
bool RemoveAttribute (const MbAttribute *)
 Выдать атрибут заданного типа, если их несколько - то первый попавшийся. Подробнее...
 
bool RemoveAttributes (MbeAttributeType type, MbeAttributeType subType)
 Удалить атрибуты заданного типа.
 
const MbAttributeGetSimpleAttribute (MbeAttributeType) const
 Выдать простой атрибут данного подтипа.
 
MbAttributeSetSimpleAttribute (MbeAttributeType)
 Выдать простой атрибут данного подтипа.
 
MbAttributeSetSimpleAttribute (MbAttribute *simpAttr)
 Установить простой атрибут данного подтипа.
 
MbAttributeSetSimpleAttribute (const MbAttribute &simpAttr)
 Установить простой атрибут данного подтипа (всегда копирует атрибут).
 
void RemoveSimpleAttribute (MbeAttributeType)
 Удалить простой атрибут(один и более) данного подтипа.
 
MbAttributeDetachSimpleAttribute (MbeAttributeType)
 Отдать простой атрибут данного подтипа.
 
void GetUserAttributes (std::vector< MbUserAttribute *> &attrs, const MbUserAttribType &type) const
 Выдать пользовательский атрибут данного подтипа.
 
void RemoveUserAttributes (const MbUserAttribType &type)
 Удалить пользовательский атрибут (один и более) данного подтипа.
 
void DetachUserAttributes (std::vector< MbUserAttribute *> &attrs, const MbUserAttribType &type)
 Отдать пользовательский атрибут данного подтипа.
 
void AttributesChange ()
 Выполнить действия при изменении атрибутов.
 
void AttributesConvert (MbAttributeContainer &other) const
 Выполнить действия при конвертации атрибутов.
 
void AttributesTransform (const MbMatrix3D &, MbRegTransform *=NULL)
 Выполнить действия при трансформировании атрибутов.
 
void AttributesMove (const MbVector3D &, MbRegTransform *=NULL)
 Выполнить действия при перемещении атрибутов.
 
void AttributesRotate (const MbAxis3D &, double angle, MbRegTransform *=NULL)
 Выполнить действия при вращении атрибутов.
 
void AttributesCopy (MbAttributeContainer &other, MbRegDuplicate *=NULL) const
 Выполнить действия при копировании атрибутов.
 
void AttributesMerge (MbAttributeContainer &other)
 Выполнить действия при объединении атрибутов.
 
void AttributesReplace (MbAttributeContainer &other)
 Выполнить действия при замене атрибутов.
 
void AttributesSplit (const std::vector< MbAttributeContainer *> &others)
 Выполнить действия при разделении атрибутов.
 
void AttributesDelete ()
 Выполнить действия при удалении атрибутов.
 

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

 MbEdge (const MbEdge &init, MbRegDuplicate *iReg)
 Конструктор копирования.
 
- Защищенные члены унаследованные от MbTopologyItem
 MbTopologyItem ()
 Конструктор без параметров.
 
 MbTopologyItem (const MbTopologyItem &init, MbRegDuplicate *iReg)
 Конструктор дублирования.
 
- Защищенные члены унаследованные от MbTopItem
 MbTopItem ()
 Конструктор.
 
- Защищенные члены унаследованные от MbAttributeContainer
 MbAttributeContainer (const MbAttributeContainer &, MbRegDuplicate *)
 Конструктор копирования с регистратором.
 

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

MbCurve3Dcurve
 Кривая, по которой проходит ребро (всегда не NULL).
 
bool sameSense
 Признак совпадения направления ребра с направлением кривой.
 
MbVertexbegVertex
 Вершина-начало (всегда не NULL).
 
MbVertexendVertex
 Вершина-конец (всегда не NULL).
 
- Защищенные данные унаследованные от MbTopologyItem
MbLabel label
 Временная метка для выполнения операций.
 

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

- Открытые статические члены унаследованные от MbAttributeContainer
static MbUserAttributeReduceUserAttrib (const MbExternalAttribute &source)
 Преобразовать из пользовательского в "системный".
 
static MbExternalAttributeAdvanceUserAttrib (const MbUserAttribute &source)
 Преобразовать из "системного" в пользовательский
 

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

Ребро.

Ребро представляет собой кривую, которой приписано направление.
Направление кривой MbCurve3D жёстко связано с направлением возрастания её параметра. В отличие от кривой ребро может быть направлено как в сторону возрастания параметра, так и в сторону уменьшения параметра кривой. Ребро всегда начинается и оканчивается в некоторой вершине MbVertex.

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

◆ MbEdge() [1/2]

MbEdge::MbEdge ( const MbCurve3D initCurve,
bool  sense,
const MbVertex beg,
const MbVertex end 
)

Конструктор по кривой, ее ориентации и вершинам.

Конструктор ребра по кривой, ее ориентации и вершинам. Проводится проверка существования и правильности положения точек-вершин ребра.

◆ MbEdge() [2/2]

MbEdge::MbEdge ( const MbCurve3D initCurve,
bool  sense 
)

Конструктор по кривой и ее ориентации.

Конструктор ребра по кривой и ее ориентации. Вершины формируются на основе граничных точек кривой.

Методы

◆ Transform()

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

Преобразовать согласно матрице.

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

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

Замещает MbTopologyItem.

◆ Move()

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

Сдвинуть вдоль вектора.

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

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

Замещает MbTopologyItem.

◆ Rotate()

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

Повернуть вокруг оси.

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

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

Замещает MbTopologyItem.


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