SHAPER  9.12.0
ModelHighAPI_Interface Class Reference

Base class for feature interfaces. More...

Inherited by BuildAPI_CompSolid, BuildAPI_Compound, BuildAPI_Edge, BuildAPI_Face, BuildAPI_Filling, BuildAPI_Interpolation, BuildAPI_Polyline, BuildAPI_Shell, BuildAPI_Solid, BuildAPI_SubShapes, BuildAPI_Vertex, BuildAPI_Wire, CollectionAPI_Field, CollectionAPI_Group, CollectionAPI_GroupAddition, CollectionAPI_GroupIntersection, CollectionAPI_GroupShape, CollectionAPI_GroupSubstraction, ConstructionAPI_Axis, ConstructionAPI_Plane, ConstructionAPI_Point, ExchangeAPI_Export, ExchangeAPI_Import, ExchangeAPI_Import_Image, FeaturesAPI_BooleanCommon, FeaturesAPI_BooleanCut, FeaturesAPI_BooleanFill, FeaturesAPI_BooleanFuse, FeaturesAPI_BooleanSmash, FeaturesAPI_BoundingBox, FeaturesAPI_Chamfer, FeaturesAPI_Copy, FeaturesAPI_Defeaturing, FeaturesAPI_Extrusion, FeaturesAPI_ExtrusionBoolean, FeaturesAPI_Fillet, FeaturesAPI_FusionFaces, FeaturesAPI_GlueFaces, FeaturesAPI_ImportResult, FeaturesAPI_Intersection, FeaturesAPI_LimitTolerance, FeaturesAPI_Loft, FeaturesAPI_MultiRotation, FeaturesAPI_MultiTranslation, FeaturesAPI_NormalToFace, FeaturesAPI_Partition, FeaturesAPI_Pipe, FeaturesAPI_Placement, FeaturesAPI_PointCloudOnFace, FeaturesAPI_Recover, FeaturesAPI_RemoveResults, FeaturesAPI_RemoveSubShapes, FeaturesAPI_Revolution, FeaturesAPI_RevolutionBoolean, FeaturesAPI_Rotation, FeaturesAPI_Scale, FeaturesAPI_Sewing, FeaturesAPI_SharedFaces, FeaturesAPI_Symmetry, FeaturesAPI_Translation, FeaturesAPI_Union, FiltersAPI_Feature, GDMLAPI_ConeSegment, GDMLAPI_Ellipsoid, ModelHighAPI_Folder, ParametersAPI_Parameter, PartSetAPI_Part, PrimitivesAPI_Box, PrimitivesAPI_Cone, PrimitivesAPI_Cylinder, PrimitivesAPI_Sphere, PrimitivesAPI_Torus, PrimitivesAPI_Tube, SketchAPI_Constraint, SketchAPI_Mirror, SketchAPI_Offset, SketchAPI_Rotation, SketchAPI_Sketch, SketchAPI_SketchEntity, and SketchAPI_Translation.

Public Member Functions

 ModelHighAPI_Interface (const std::shared_ptr< ModelAPI_Feature > &theFeature)
 Constructor. More...
 
virtual ~ModelHighAPI_Interface ()
 Destructor. More...
 
std::shared_ptr< ModelAPI_Featurefeature () const
 Return ModelAPI_Feature. More...
 
std::shared_ptr< ModelHighAPI_InterfacesubFeature (const int theIndex) const
 If feature is composite return intefrace for sub-feature by zero-based index, or empty pointer if feature not composite or does not have sub-feature with such index. More...
 
const std::string & getKind () const
 Shortcut for feature()->getKind() More...
 
void execute (bool isForce=false)
 Shortcut for feature()->execute() More...
 
void setName (const std::wstring &theName)
 Shortcut for feature()->data()->setName() More...
 
std::wstring name () const
 Shortcut for feature()->data()->name() More...
 
virtual ModelHighAPI_Selection result () const
 Return firts object of the feature. More...
 
virtual std::list< ModelHighAPI_Selectionresults () const
 Return all objects of the feature. More...
 
virtual std::shared_ptr< ModelAPI_ResultdefaultResult () const
 Return default result. Default implementation feature()->lastResult() More...
 
void throwException (const std::string &theDescription)
 Throw exception to event loop. More...
 
const std::string & attributeGetter (const std::string &theAttrName)
 Return name of getter for specified attribute. More...
 
virtual void dump (ModelHighAPI_Dumper &) const
 Dump wrapped feature. More...
 

Protected Attributes

std::shared_ptr< ModelAPI_FeaturemyFeature
 feature of this interface More...
 
std::map< std::string, std::string > myAttrGetter
 names of attributes and their getters More...
 

Detailed Description

Base class for feature interfaces.

Constructor & Destructor Documentation

◆ ModelHighAPI_Interface()

ModelHighAPI_Interface::ModelHighAPI_Interface ( const std::shared_ptr< ModelAPI_Feature > &  theFeature)
explicit

Constructor.

◆ ~ModelHighAPI_Interface()

ModelHighAPI_Interface::~ModelHighAPI_Interface ( )
virtual

Destructor.

Member Function Documentation

◆ feature()

std::shared_ptr< ModelAPI_Feature > ModelHighAPI_Interface::feature ( ) const

◆ subFeature()

std::shared_ptr< ModelHighAPI_Interface > ModelHighAPI_Interface::subFeature ( const int  theIndex) const

If feature is composite return intefrace for sub-feature by zero-based index, or empty pointer if feature not composite or does not have sub-feature with such index.

◆ getKind()

const std::string & ModelHighAPI_Interface::getKind ( ) const

Shortcut for feature()->getKind()

◆ execute()

void ModelHighAPI_Interface::execute ( bool  isForce = false)

Shortcut for feature()->execute()

Parameters
isForcestart execution of feature instead of sending events

◆ setName()

void ModelHighAPI_Interface::setName ( const std::wstring &  theName)

Shortcut for feature()->data()->setName()

◆ name()

std::wstring ModelHighAPI_Interface::name ( ) const

Shortcut for feature()->data()->name()

◆ result()

ModelHighAPI_Selection ModelHighAPI_Interface::result ( ) const
virtual

Return firts object of the feature.

◆ results()

std::list< ModelHighAPI_Selection > ModelHighAPI_Interface::results ( ) const
virtual

Return all objects of the feature.

◆ defaultResult()

std::shared_ptr< ModelAPI_Result > ModelHighAPI_Interface::defaultResult ( ) const
virtual

Return default result. Default implementation feature()->lastResult()

◆ throwException()

void ModelHighAPI_Interface::throwException ( const std::string &  theDescription)

Throw exception to event loop.

◆ attributeGetter()

const std::string & ModelHighAPI_Interface::attributeGetter ( const std::string &  theAttrName)

Return name of getter for specified attribute.

◆ dump()

virtual void ModelHighAPI_Interface::dump ( ModelHighAPI_Dumper ) const
inlinevirtual

Dump wrapped feature.

Reimplemented in SketchAPI_Translation, SketchAPI_SketchEntity, SketchAPI_Sketch, SketchAPI_Rotation, SketchAPI_Projection, SketchAPI_Point, SketchAPI_Offset, SketchAPI_Mirror, SketchAPI_Line, SketchAPI_IntersectionPoint, SketchAPI_EllipticArc, SketchAPI_Ellipse, SketchAPI_ConstraintAngle, SketchAPI_Constraint, SketchAPI_Circle, SketchAPI_BSpline, SketchAPI_Arc, PrimitivesAPI_Tube, PrimitivesAPI_Torus, PrimitivesAPI_Sphere, PrimitivesAPI_Cylinder, PrimitivesAPI_Cone, PrimitivesAPI_Box, PartSetAPI_Part, ParametersAPI_Parameter, ModelHighAPI_Folder, GDMLAPI_Ellipsoid, GDMLAPI_ConeSegment, FiltersAPI_Feature, FeaturesAPI_Union, FeaturesAPI_Translation, FeaturesAPI_Symmetry, FeaturesAPI_SharedFaces, FeaturesAPI_Sewing, FeaturesAPI_Scale, FeaturesAPI_Rotation, FeaturesAPI_RevolutionBoolean, FeaturesAPI_Revolution, FeaturesAPI_RemoveSubShapes, FeaturesAPI_RemoveResults, FeaturesAPI_Recover, FeaturesAPI_PointCloudOnFace, FeaturesAPI_Placement, FeaturesAPI_Pipe, FeaturesAPI_Partition, FeaturesAPI_NormalToFace, FeaturesAPI_MultiTranslation, FeaturesAPI_MultiRotation, FeaturesAPI_Loft, FeaturesAPI_LimitTolerance, FeaturesAPI_Intersection, FeaturesAPI_ImportResult, FeaturesAPI_GlueFaces, FeaturesAPI_FusionFaces, FeaturesAPI_Fillet2D, FeaturesAPI_Fillet1D, FeaturesAPI_ExtrusionBoolean, FeaturesAPI_Extrusion, FeaturesAPI_Defeaturing, FeaturesAPI_Copy, FeaturesAPI_Chamfer, FeaturesAPI_BoundingBox, FeaturesAPI_BooleanSmash, FeaturesAPI_BooleanFuse, FeaturesAPI_BooleanFill, FeaturesAPI_BooleanCut, FeaturesAPI_BooleanCommon, ExchangeAPI_Import_Image, ExchangeAPI_Import, ExchangeAPI_Export, ConstructionAPI_Point, ConstructionAPI_Plane, ConstructionAPI_Axis, CollectionAPI_GroupSubstraction, CollectionAPI_GroupShape, CollectionAPI_GroupIntersection, CollectionAPI_GroupAddition, CollectionAPI_Group, CollectionAPI_Field, BuildAPI_Wire, BuildAPI_Vertex, BuildAPI_SubShapes, BuildAPI_Solid, BuildAPI_Shell, BuildAPI_Polyline, BuildAPI_Interpolation, BuildAPI_Filling, BuildAPI_Face, BuildAPI_Edge, BuildAPI_CompSolid, and BuildAPI_Compound.

Field Documentation

◆ myFeature

std::shared_ptr<ModelAPI_Feature> ModelHighAPI_Interface::myFeature
protected

feature of this interface

◆ myAttrGetter

std::map<std::string, std::string> ModelHighAPI_Interface::myAttrGetter
protected

names of attributes and their getters