.. role:: blue :class: blue MbTopologyItem Topological Object ================================= .. _MbTopologyItem_Topological_Object_: .. kernel version: The :blue:`MbTopologyItem` class is declared in the *topology_item.h* file. The MbTopologyItem topological object differs from other topological objects by having a **name**, a modification flag *changed*, and a marker *label*. The MbTopologyItem topological object is a derived class of the :ref:`MbTopItem ` topological object. .. figure:: /MODELER/TOPOLOGICAL_OBJECTS/pictures/O.7.1.1.png :width: 12cm :align: center The :blue:`MbAttrContainer` attribute container endows named topological objects with attributes. The C3D geometric kernel implements the following topological objects that are derived from the :blue:`MbTopologyItem` class: :ref:`MbFace ` -- face, :ref:`MbEdge ` -- edge, :ref:`MbVertex ` -- vertex. The :blue:`MbEdge` edge has a derived class :ref:`MbCurveEdge ` -- a face-joining edge. Named topological objects have the following methods: methods that handle transformation of a topological object: void :blue:`Move`\( const :blue:`MbVector3D` & **v**, MbRegTransform * iReg = NULL ), void :blue:`Rotate`\( const MbAxis3D & **axis**, double **angle**, MbRegTransform * iReg = NULL ), void :blue:`Transform`\( const :blue:`MbMatrix3D` & **m**, MbRegTransform * iReg = NULL ), methods that handle the name of a topological object: MbName & :blue:`GetName`\(), SimpleName & :blue:`GetMainName`\(), SimpleName & :blue:`GetFirstName`\(), a method that returns a type from the enumeration of topological objects: MbeTopologyType :blue:`IsA`\(). Named topological objects are used as elements for constructing geometric model objects.