C3D Kernel  104598
Открытые члены | Защищенные члены | Защищенные данные

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

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

Полный список членов класса

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

 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 ()
 Деструктор.
 VISITING_CLASS (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)
 Установить направление по отношению к кривой.
MbVertexGetBegVertex () const
 Выдать вершину-начало.
MbVertexGetEndVertex () const
 Выдать вершину-конец.
MbVertexGetVertex (size_t i) const
 Выдать вершину по номеру (0 - вершина-начало, 1 - вершина-конец).
MbVertexGetBegVertexPointer () const
 Выдать вершину-начало.
MbVertexGetEndVertexPointer () const
 Выдать вершину-конец.
void SetBegVertex (MbVertex &ver)
 Установить вершину-начало.
void SetEndVertex (MbVertex &ver)
 Установить вершину-конец.
MbVertexGetTMinVertex () const
 Выдать вершину, соответствующую начальной точке кривой.
MbVertexGetTMaxVertex () const
 Вылать вершину, соответствующую конечной точке кривой.
void SetTMinVertex (MbVertex &ver)
 Установить вершину, соответствующую начальной точке кривой.
void SetTMaxVertex (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
 Проверка того, что вершина принадлежит ребру.
MbVertexIsConnectedWith (const MbEdge &edge) const
 Нахождение общей вершины ребер.
void GetVerticesArray (RPArray< MbVertex > &) const
 Добавить вершины ребра в множество вершин (если их там нет).
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 &p) const
 Вычислить точка на ребре (0 <= t <= 1).
void GetBegPoint (MbCartPoint3D &p) const
 Получить точку в начальной вершине.
void GetEndPoint (MbCartPoint3D &p) const
 Получить точку в конечной вершине.
void Tangent (double t, MbVector3D &p) const
 Выдать касательный вектор к ребру ( 0 <= t <= 1 ).
void GetBegTangent (MbVector3D &p) const
 Выдать касательный вектор в начальной вершине.
void GetEndTangent (MbVector3D &p) const
 Выдать касательный вектор в конечной вершине.
void GetMidleDerive (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 &p) const
 Вычислить проекцию точки на ребро.
bool PointProjection (const MbCartPoint3D &p0, MbCartPoint3D &pOnEdge, double &distance) const
 Вычислить проекцию точки на продолжение прямого ребра.
bool AngleWithEdge (const MbEdge &edge, double &angle) const
 Вычислить угол между прямыми ребрами.
MbCurveGetProjection (const MbPlacement3D &place, VERSION version) const
 Создать проекцию ребра на плоскость.
void GetProperties (MbProperties &)
 Выдать свойства объекта.
void SetProperties (const MbProperties &)
 Установить свойства объекта.

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

 MbEdge (const MbEdge &init, MbRegDuplicate *iReg)
 Конструктор копирования.

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

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

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

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


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

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

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

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

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


Методы

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

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

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

Замещает MbTopologyItem.

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

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

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

Замещает MbTopologyItem.

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

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

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

Замещает MbTopologyItem.


Объявления и описания членов класса находятся в файле:
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Макросы