C3D Toolkit
Kernel - 117982, Vision - 2.9.2.2
|
Topology object proxy. More...
#include <topology_item.h>
Public Member Functions | |
MbeTopologyType | IsA () const override |
A type of element. | |
void | Transform (const MbMatrix3D &, MbRegTransform *=nullptr) override |
Transform according to the matrix. More... | |
void | Move (const MbVector3D &, MbRegTransform *=nullptr) override |
Move along a vector. More... | |
void | Rotate (const MbAxis3D &, double, MbRegTransform *=nullptr) override |
Rotate around an axis. More... | |
double | DistanceToPoint (const MbCartPoint3D &) const override |
Calculate the distance to a point. | |
void | AddYourGabaritTo (MbCube &) const override |
Add your own bounding box into the sent bounding box. | |
void | CalculateLocalGabarit (const MbMatrix3D &, MbCube &) const override |
Calculate bounding box in the local coordinate system which is given by the matrix of transformation to this system. | |
bool | IsSame (const MbTopologyItem &, double) const override |
Determine whether objects are equal. | |
void | CalculateMesh (const MbStepData &, const MbFormNote &, MbMesh &) const override |
Construct a polygonal copy of an object mesh). | |
![]() | |
virtual | ~MbTopologyItem () |
Destructor. | |
MbeImplicationType | ImplicationType () const override |
A type of element. More... | |
const MbName & | GetName () const |
Get name of object. | |
MbName & | SetName () |
Get name of object for modification. | |
SimpleName | GetMainName () const |
Get main name. | |
void | SetMainName (SimpleName n) |
Set main name. | |
SimpleName | GetFirstName () const |
Get first name. | |
SimpleName | GetNameHash () const |
Get hash of name. | |
void | SetName (const MbName &n) |
Set name. | |
bool | GetOwnChanged () const |
Get flag which indicates that an object has (not) been changed. | |
bool | GetOwnChanged (MbeChangedType n) const |
Get flag which indicates that an object has (not) been changed. | |
void | SetOwnChanged (MbeChangedType) |
Set flag which indicates that an object has (not) been changed. | |
void | CopyOwnChanged (const MbTopologyItem &ti) |
Copy flag which indicates that an object has (not) been changed. | |
uint16 | GetOwnChangedFlag () const |
Get flag which indicates that an object has (not) been changed. | |
template<class Uint > | |
void | SetOwnChangedFlag (Uint n) |
Set flag which indicates that an object has (not) been changed. | |
bool | IsOwnRenamedOnly () const |
Get flag which indicates that an object has been renamed only. | |
bool | IsOwnTransformedOnly () const |
Get flag which indicates that an object has been transformed only. | |
bool | IsOwnReorientedOnly () const |
Get flag which indicates that an object has been reoriented only. | |
bool | IsOwnChangedWeakly () const |
Get a flag indicating that only “weak” changes were applied: creation, renaming, transformation, reorientation. More... | |
MbeLabelState | GetLabel (void *key=nullptr) const |
Get label. | |
void | SetOwnLabel (MbeLabelState l, void *key=nullptr) const |
Set a label of the loop. | |
void | SetOwnLabel (MbeLabelState l, void *key, bool setLock) const |
Set a label of the loop. | |
bool | ToDelete () const |
Is this object intended for deletion? This is defined by labels. | |
void | RemovePrivateLabel (void *key=nullptr) const |
Remove private label. | |
void | Assign (const MbTopologyItem &) |
Copying of the object data. | |
void | RemoveParentNamesAttribute () |
Delete an attribute of name type with parent names. | |
![]() | |
MbeRefType | RefType () const override |
Registration type (for copying, duplication). | |
void | PrepareWrite () const |
Prepare an object for writing. | |
bool | IsAVertex () const |
Is it a vertex? | |
bool | IsAWireEdge () const |
Is it an edge of wireframe? | |
bool | IsAnEdge () const |
Is it an edge? | |
bool | IsAFace () const |
Is it a face? | |
bool | IsAShell () const |
Is it a shell? | |
bool | IsAProxy () const |
Is it a proxy? | |
![]() | |
refcount_t | GetUseCount () const |
Get count of references (get count of owners of an object). | |
refcount_t | AddRef () const |
Increase count of references by one. | |
refcount_t | DecRef () const |
Decrease count of references by one. | |
refcount_t | Release () const |
Decrease count of references by one and if count of references became zero, then remove itself. | |
![]() | |
TapeBase (RegistrableRec regs=noRegistrable) | |
Constructor. | |
TapeBase (const TapeBase &) | |
Copy-constructor. | |
virtual | ~TapeBase () |
Destructor. | |
RegistrableRec | GetRegistrable () const |
Whether the stream class is registrable. | |
void | SetRegistrable (RegistrableRec regs=registrable) const |
Set the state of registration of the stream class. | |
virtual const char * | GetPureName (const VersionContainer &) const |
Get the class name. | |
virtual bool | IsFamilyRegistrable () const |
Whether the object belongs to a registrable family. | |
![]() | |
MbAttributeContainer () | |
Constructor without parameters. | |
MbAttributeContainer (MbAttribute &) | |
Constructor by attribute. | |
virtual | ~MbAttributeContainer () |
Destructor. | |
void | AttributesRead (reader &) |
Read attributes from stream. | |
void | AttributesWrite (writer &) const |
Writing attributes to stream. | |
void | GetProperties (MbProperties &) |
Get properties of attributes. | |
void | SetProperties (const MbProperties &) |
Set properties of attributes. | |
void | SetDensity (double) |
Set density of an object. | |
double | GetDensity () const |
Get density of an object. | |
void | SetVisual (float a, float d, float sp, float sh, float t, float e, uint rgb=0) |
Set visual properties of the object. | |
void | SetVisual (const MbRGBA &ambient, const MbRGBA &diffuse, const MbRGBA &specular, const MbRGBA &emission, uint8 shininess, uint8 opacity, uint8 chrom) |
Set visual properties of the object. | |
bool | GetVisual (float &a, float &d, float &sp, float &sh, float &t, float &e, uint rgb=0) const |
Get visual properties of the object. More... | |
bool | IsColored () const |
void | SetColor (uint32) |
Change color of the object. | |
void | SetColor (int R, int G, int B) |
Change color of the object (0-255). | |
uint32 | GetColor () const |
Get color of an object. | |
void | SetWidth (int) |
Set thickness of lines for object's representation. | |
int | GetWidth () const |
Get thickness of lines for object's representation. | |
void | SetStyle (int) |
Set style of lines for object's representation. | |
int | GetStyle () const |
Get style of lines for object's representation. | |
void | SetSelected (bool s=true) |
To allocate or not to allocate an object. | |
bool | IsSelected () const |
Is the object selected. | |
bool | ReverseSelected () |
Invert object selection. | |
void | SetChanged (bool c=true) |
Set: the object is changed or isn't changed. | |
bool | IsChanged () const |
Is the object changed? | |
void | SetVisible (bool) |
Set visibility. | |
bool | IsVisible () const |
Is the object visible? | |
bool | IsInvisible () const |
Is the object invisible? | |
void | AttributesAssign (const MbAttributeContainer &) |
Duplicate attributes of a given object, release existing attributes. | |
size_t | AttributesCount () const |
Get the number of objects. | |
bool | RemoveAttributes (bool onDeleteOwner=false) |
Delete all attributes from container. | |
MbAttribute * | AddAttribute (MbAttribute *attr, bool checkSame=true) |
Add attribute in container. More... | |
MbAttribute * | AddAttribute (const MbAttribute &attr, bool checkSame=true) |
Add attribute in container (adds a copy of the attribute if it can be added). More... | |
void | GetAttributes (c3d::AttrVector &attrs, MbeAttributeType aFamily, MbeAttributeType subType) const |
Get attributes of a given type or family. More... | |
void | GetAttributes (c3d::AttrVector &attrs, MbeAttributeType aType) const |
Get attributes of a given type. More... | |
template<class AttrVector > | |
void | GetAttributes (AttrVector &attrs) const |
Get attributes. More... | |
void | GetCommonAttributes (c3d::AttrVector &, const c3d::string_t &samplePrompt, MbeAttributeType subType=at_Undefined, bool firstFound=false) const |
Get attributes using sample of description string. | |
void | GetStringAttributes (c3d::AttrVector &, const c3d::string_t &sampleContent) const |
Get string attributes using sample of contents of the string. | |
bool | RemoveAttribute (const MbAttribute *, bool checkAccuracySame=false, double accuracy=LENGTH_EPSILON) |
Get an attribute of a given type, the first one is returned if there are many. More... | |
bool | RemoveAttributes (MbeAttributeType type, MbeAttributeType subType) |
Delete attributes of a given type. | |
const MbAttribute * | GetSimpleAttribute (MbeAttributeType) const |
Get a simple attribute of a given subtype. | |
MbAttribute * | SetSimpleAttribute (MbeAttributeType) |
Get a simple attribute of a given subtype. | |
MbAttribute * | SetSimpleAttribute (MbAttribute *simpAttr) |
Set a simple attribute of a given subtype. | |
MbAttribute * | SetSimpleAttribute (const MbAttribute &simpAttr) |
Set a simple attribute of a given subtype (always copies the attribute). | |
void | RemoveSimpleAttribute (MbeAttributeType) |
Delete simple attributes (one or more) of a given subtype. | |
MbAttribute * | DetachSimpleAttribute (MbeAttributeType) |
Detach a simple attribute of a given subtype. | |
void | GetUserAttributes (std::vector< MbUserAttribute * > &attrs, const MbUserAttribType &type) const |
Get a user attribute of a given subtype. | |
void | RemoveUserAttributes (const MbUserAttribType &type) |
Delete user attributes (one or more) of a given subtype. | |
void | DetachUserAttributes (std::vector< MbUserAttribute * > &attrs, const MbUserAttribType &type) |
Detach a user attribute of a given subtype. | |
void | AttributesChange () |
Perform actions when changing the attributes. | |
void | AttributesConvert (MbAttributeContainer &other) const |
Perform actions when converting the attributes. | |
void | AttributesTransform (const MbMatrix3D &, MbRegTransform *=nullptr) |
Perform actions when transforming the attributes. | |
void | AttributesMove (const MbVector3D &, MbRegTransform *=nullptr) |
Perform actions when moving the attributes. | |
void | AttributesRotate (const MbAxis3D &, double angle, MbRegTransform *=nullptr) |
Perform actions when rotating the attributes. | |
void | AttributesCopy (MbAttributeContainer &other, MbRegDuplicate *=nullptr) const |
Perform actions when copying the attributes. | |
void | AttributesMerge (MbAttributeContainer &other) |
Perform actions when merging the attributes. | |
void | AttributesReplace (MbAttributeContainer &other) |
Perform actions when replacing the attributes. | |
void | AttributesSplit (const std::vector< MbAttributeContainer * > &others) |
Perform actions when splitting the attributes. | |
void | AttributesDelete () |
Perform actions when deleting the attributes. | |
Friends | |
class | MbNameMaker |
Additional Inherited Members | |
![]() | |
static MbUserAttribute * | ReduceUserAttrib (const MbExternalAttribute &) |
Convert user attribute to "system" one. | |
static MbExternalAttribute * | AdvanceUserAttrib (const MbUserAttribute &) |
Convert "system" attribute to user one. | |
![]() | |
MbTopologyItem () | |
Constructor without parameters. | |
MbTopologyItem (const MbTopologyItem &, MbRegDuplicate *) | |
Constructor of duplicating. | |
![]() | |
MbTopItem () | |
Constructor. | |
![]() | |
MbRefItem () | |
Constructor without parameters. | |
![]() | |
MbAttributeContainer (const MbAttributeContainer &, MbRegDuplicate *) | |
Copy-constructor with the registrator. | |
![]() | |
MbLabel | label |
Temporary label for performing of operations. | |
Topology object proxy.
Proxy for a topology item. It's used in naming algorithms.
|
overridevirtual |
Transform according to the matrix.
Transformation of an object according to the matrix. This object can be contained as pointer in several other objects for transformations. Registrar is used to prevent multiple transformation of this object. When transforming the object with registrator, the existence of the object inside the registrator is verified. If such object is absent, it is stored to the registrator and transformed, otherwise, a transformation of the object is not performed.
[in] | matr | - A transformation matrix. |
[in] | iReg | - Registrator. |
Implements MbTopologyItem.
|
overridevirtual |
Move along a vector.
Move an object along a vector. When transforming the object with registrator, the existence of the object inside the registrator is verified. If such object is absent, it is stored to the registrator and transformed, otherwise, a transformation of the object is not performed.
[in] | to | - Translation vector. |
[in] | iReg | - Registrator. |
Implements MbTopologyItem.
|
overridevirtual |
Rotate around an axis.
Rotate an object at a given angle around an axis. When transforming the object with registrator, the existence of the object inside the registrator is verified. If such object is absent, it is stored to the registrator and transformed, otherwise, a transformation of the object is not performed.
[in] | axis | - Rotation axis. |
[in] | angle | - The rotation angle. |
[in] | iReg | - Registrator. |
Implements MbTopologyItem.