SHAPER
9.13.0
|
Intersection feature takes a list of shapes as objects and list of shapes as tools. More...
Public Member Functions | |
virtual const std::string & | getKind () |
Returns the kind of a feature. More... | |
virtual void | execute () |
Executes feature. More... | |
virtual void | initAttributes () |
Request for initialization of data model of the feature: adding all attributes. More... | |
FeaturesPlugin_Intersection () | |
Use plugin manager for features creation. More... | |
virtual std::shared_ptr< ModelAPI_Document > | document () const |
Returns document this feature belongs to. More... | |
std::shared_ptr< ModelAPI_AttributeDocRef > | document (const std::string &theID) |
Returns the document reference attribute. More... | |
virtual std::string | groupName () |
Returns the group identifier of this result. More... | |
virtual bool | compute (const std::string &) |
Computes the attribute value on the base of other attributes if the value can be computed. More... | |
virtual MODELAPI_EXPORT void | setError (const std::string &theError, bool isSend=true, bool isTranslate=true) |
Registers error during the execution, causes the ExecutionFailed state. More... | |
virtual std::string | error () const |
Returns error, arose during the execution. More... | |
MODELAPI_EXPORT const std::list< std::shared_ptr< ModelAPI_Result > > & | results () |
returns the current results of the feature More... | |
MODELAPI_EXPORT std::shared_ptr< ModelAPI_Result > | firstResult () const |
returns the first result in the list or NULL reference More... | |
MODELAPI_EXPORT std::shared_ptr< ModelAPI_Result > | lastResult () |
returns the last result in the list or NULL reference More... | |
MODELAPI_EXPORT void | setResult (const std::shared_ptr< ModelAPI_Result > &theResult) |
sets the alone result More... | |
MODELAPI_EXPORT void | setResult (const std::shared_ptr< ModelAPI_Result > &theResult, const int theIndex) |
sets the result by index (zero based), results before this must be set before More... | |
MODELAPI_EXPORT void | removeResults (const int theSinceIndex, const bool theForever=true, const bool theFlush=true) |
removes all results starting from the given index (zero-based) More... | |
MODELAPI_EXPORT void | eraseResults (const bool theForever=true) |
removes all results from the feature More... | |
virtual MODELAPI_EXPORT void | erase () |
removes all fields from this feature: results, data, etc More... | |
MODELAPI_EXPORT void | eraseResultFromList (const std::shared_ptr< ModelAPI_Result > &theResult) |
removes the result from the list of feature (not doing in disabled): normally this method is not used from features. More... | |
virtual bool | isPersistentResult () |
Returns true if result is persistent (stored in document) and on undo-redo, save-open it is not needed to recompute it. More... | |
virtual bool | isAction () |
Returns true if this feature must not be created: this is just an action that is not stored in the features history and data model (like "delete part"). More... | |
virtual MODELAPI_EXPORT bool | isMacro () const |
Returns true if this feature is used as macro: creates other features and then removed. More... | |
virtual MODELAPI_EXPORT bool | isPreviewNeeded () const |
Returns true if preview update during the edition needed. More... | |
virtual MODELAPI_EXPORT const std::string & | documentToAdd () |
Must return document where the new feature must be added to By default it is empty: it is added to the document this method is called to. More... | |
virtual MODELAPI_EXPORT bool | setDisabled (const bool theFlag) |
Enables/disables the feature. More... | |
virtual MODELAPI_EXPORT bool | isDisabled () |
Returns the feature is disabled or not. More... | |
virtual MODELAPI_EXPORT bool | setStable (const bool theFlag) |
Set the stable feature flag. More... | |
virtual MODELAPI_EXPORT bool | isStable () |
Returns the feature is stable or not. More... | |
virtual MODELAPI_EXPORT bool | isEditable () |
Returns the feature is editable or not. Most of features are editable. More... | |
virtual MODELAPI_EXPORT bool | customAction (const std::string &theActionId) |
Performs some custom feature specific functionality (normally called by some GUI button) More... | |
virtual MODELAPI_EXPORT ListOfShape | vertices (const bool theOnlyUnique=false) |
Returns all the vertices produced by this feature. More... | |
virtual MODELAPI_EXPORT ListOfShape | edges (const bool theOnlyUnique=false) |
Returns all the edges produced by this feature. More... | |
virtual MODELAPI_EXPORT ListOfShape | wires (const bool theOnlyUnique=false) |
Returns all the wires produced by this feature. More... | |
virtual MODELAPI_EXPORT ListOfShape | faces (const bool theOnlyUnique=false) |
Returns all the faces produced by this feature. More... | |
virtual MODELAPI_EXPORT ListOfShape | shells (const bool theOnlyUnique=false) |
Returns all the shells produced by this feature. More... | |
virtual MODELAPI_EXPORT ListOfShape | solids (const bool theOnlyUnique=false) |
Returns all the solids produced by this feature. More... | |
std::wstring | name () |
Returns the name stored in the attribute. More... | |
std::shared_ptr< ModelAPI_AttributeBoolean > | boolean (const std::string &theID) |
Returns the Boolean attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeDouble > | real (const std::string &theID) |
Returns the real attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeInteger > | integer (const std::string &theID) |
Returns the integer attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeIntArray > | intArray (const std::string &theID) |
Returns the integer array attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeRefAttr > | refattr (const std::string &theID) |
Returns the reference attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeRefAttrList > | refattrlist (const std::string &theID) |
Returns the refattrlist attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeReference > | reference (const std::string &theID) |
Returns the reference attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeRefList > | reflist (const std::string &theID) |
Returns the list of references attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeSelection > | selection (const std::string &theID) |
Returns the shape selection attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeSelectionList > | selectionList (const std::string &theID) |
Returns the list of shape selections attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeString > | string (const std::string &theID) |
Returns the string attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeStringArray > | stringArray (const std::string &theID) |
Returns the string array attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_AttributeTables > | tables (const std::string &theID) |
Returns the tables attribute by the identifier. More... | |
std::shared_ptr< ModelAPI_Attribute > | attribute (const std::string &theID) |
Returns the attribute by the identifier. More... | |
virtual bool | isInHistory () |
By default object is displayed in the object browser. More... | |
virtual void | setInHistory (const std::shared_ptr< ModelAPI_Object > theObject, const bool theFlag) |
Makes object presented or not in the history of the created objects. More... | |
virtual std::shared_ptr< ModelAPI_Data > | data () const |
Returns the data manager of this object: attributes. More... | |
virtual bool | isSame (const std::shared_ptr< ModelAPI_Object > &theObject) |
Returns true if object refers to the same data model instance. More... | |
virtual void | colorConfigInfo (std::string &, std::string &, std::string &) |
Returns the parameters of color definition in the resources config manager. More... | |
virtual void | attributeChanged (const std::string &theID) |
Called on change of any argument-attribute of this object. More... | |
virtual bool | isDisplayed () |
Returns true if object must be displayed in the viewer: flag is stored in the data model, so on undo/redo, open/save or recreation of object by history-playing it keeps the original state in the current transaction. More... | |
virtual void | setDisplayed (const bool theDisplay) |
Sets the displayed/hidden state of the object. More... | |
virtual bool | hasTexture () |
virtual void | emptyFunction () const |
Empty function which is added for virtualiation of the interface. More... | |
Static Public Member Functions | |
static const std::string & | ID () |
Feature kind. More... | |
static const std::string & | OBJECT_LIST_ID () |
Attribute name of objects. More... | |
static const std::string & | USE_FUZZY_ID () |
Attribute name of use fuzzy parameter. More... | |
static const std::string & | FUZZY_PARAM_ID () |
Attribute name of fuzzy parameter. More... | |
static std::string | group () |
Returns the group identifier of all features. More... | |
static MODELAPI_EXPORT std::shared_ptr< ModelAPI_Feature > | feature (ObjectPtr theObject) |
Returns the feature by the object (result). More... | |
Protected Member Functions | |
void | initVersion (const std::string &theVersion, const std::shared_ptr< ModelAPI_Attribute > theObjectsAttr=std::shared_ptr< ModelAPI_Attribute >(), const std::shared_ptr< ModelAPI_Attribute > theToolsAttr=std::shared_ptr< ModelAPI_Attribute >()) |
Initialize version field of the Boolean feature. More... | |
bool | processAttribute (const std::string &theAttributeName, GeomAPI_ShapeHierarchy &theObjects, ListOfShape &thePlanesList) |
Process SelectionList attribute and fill the objects hierarchy. More... | |
bool | processObject (const GeomAlgoAPI_Tools::BOPType theBooleanType, const GeomShapePtr &theObject, const ListOfShape &theTools, const ListOfShape &thePlanes, const double theFuzzy, int &theResultIndex, std::vector< ModelAPI_Tools::ResultBaseAlgo > &theResultBaseAlgoList, ListOfShape &theResultShapesList, GeomShapePtr theResulCompound=GeomShapePtr()) |
Perform Boolean operation of the object with the tools. More... | |
bool | processCompsolid (const GeomAlgoAPI_Tools::BOPType theBooleanType, GeomAPI_ShapeHierarchy &theCompsolidHierarchy, const GeomShapePtr &theCompsolid, const ListOfShape &theTools, const ListOfShape &thePlanes, const double theFuzzy, int &theResultIndex, std::vector< ModelAPI_Tools::ResultBaseAlgo > &theResultBaseAlgoList, ListOfShape &theResultShapesList, GeomShapePtr theResulCompound=GeomShapePtr()) |
Perform Boolean operation of the Compsolid with the tools In case of theResultCompound is not empty, the result of Boolean operation is added to this compound, and corresponding ResultBody is not generated. More... | |
bool | processCompound (const GeomAlgoAPI_Tools::BOPType theBooleanType, GeomAPI_ShapeHierarchy &theCompoundHierarchy, const GeomShapePtr &theCompound, const ListOfShape &theTools, const double theFuzzy, int &theResultIndex, std::vector< ModelAPI_Tools::ResultBaseAlgo > &theResultBaseAlgoList, ListOfShape &theResultShapesList, GeomShapePtr theResulCompound=GeomShapePtr()) |
Perform Boolean operation of the Compound with the tools In case of theResultCompound is not empty, the result of Boolean operation is added to this compound, and corresponding ResultBody is not generated. More... | |
GeomShapePtr | keepUnusedSubsOfCompound (const GeomShapePtr &theResult, const GeomAPI_ShapeHierarchy &theObjectsHierarchy, const GeomAPI_ShapeHierarchy &theToolsHierarchy, std::shared_ptr< GeomAlgoAPI_MakeShapeList > theMakeShapeList) |
Process unused sub-shapes of compounds. More... | |
virtual MODELAPI_EXPORT void | init () |
This method is called just after creation of the object: it must initialize all fields, normally initialized in the constructor. More... | |
virtual void | setData (std::shared_ptr< ModelAPI_Data > theData) |
Sets the data manager of an object (document does) More... | |
virtual void | setDoc (std::shared_ptr< ModelAPI_Document > theDoc) |
Sets the data manager of an object (document does) More... | |
Static Protected Member Functions | |
static const std::string & | BOP_VERSION_9_4 () |
static void | resizePlanes (const ListOfShape &theObjects, ListOfShape &thePlanes, std::shared_ptr< GeomAlgoAPI_MakeShapeList > &theMakeShapeList) |
Resize planes to fit them to the bounding box of the given lins of objects. More... | |
Intersection feature takes a list of shapes as objects and list of shapes as tools.
The types of objects and tools may be different: whole objects, compsoilds, solids, shells, faces or edges. The result is less than the minimal dimension from pair of intersection: for two solids or two faces it is wire, for the edge and face it is vertex, etc.
FeaturesPlugin_Intersection::FeaturesPlugin_Intersection | ( | ) |
Use plugin manager for features creation.
|
inlinestatic |
Feature kind.
|
inlinestatic |
Attribute name of objects.
|
inlinestatic |
Attribute name of use fuzzy parameter.
|
inlinestatic |
Attribute name of fuzzy parameter.
|
inlinevirtual |
Returns the kind of a feature.
Implements ModelAPI_Feature.
|
virtual |
Executes feature.
Implements ModelAPI_Feature.
|
virtual |
Request for initialization of data model of the feature: adding all attributes.
Implements ModelAPI_Object.
|
protectedinherited |
Initialize version field of the Boolean feature.
The version is initialized for newly created features, not read from previously stored document.
|
protectedinherited |
Process SelectionList attribute and fill the objects hierarchy.
|
protectedinherited |
Perform Boolean operation of the object with the tools.
In case of theResultCompound is not empty, the result of Boolean operation is added to this compound, and corresponding ResultBody is not generated.
false
if something went wrong
|
protectedinherited |
Perform Boolean operation of the Compsolid with the tools In case of theResultCompound is not empty, the result of Boolean operation is added to this compound, and corresponding ResultBody is not generated.
false
if something went wrong
|
protectedinherited |
Perform Boolean operation of the Compound with the tools In case of theResultCompound is not empty, the result of Boolean operation is added to this compound, and corresponding ResultBody is not generated.
false
if something went wrong
|
staticprotectedinherited |
Resize planes to fit them to the bounding box of the given lins of objects.
|
protectedinherited |
Process unused sub-shapes of compounds.
Keep the compound hierarchy, but merge top-level compounds into a single compound and add the result of the FUSE operation.
|
inlinestaticinherited |
Returns the group identifier of all features.
|
inlinevirtualinherited |
Returns document this feature belongs to.
Reimplemented from ModelAPI_Object.
|
inlineinherited |
Returns the document reference attribute.
|
inlinevirtualinherited |
Returns the group identifier of this result.
Implements ModelAPI_Object.
|
inlinevirtualinherited |
Computes the attribute value on the base of other attributes if the value can be computed.
theAttributeId | an attribute index to be computed |
Reimplemented in SketchPlugin_ConstraintRadius, SketchPlugin_ConstraintLength, and SketchPlugin_ConstraintAngle.
|
virtualinherited |
Registers error during the execution, causes the ExecutionFailed state.
|
inlinevirtualinherited |
Returns error, arose during the execution.
|
inherited |
returns the current results of the feature
|
inherited |
returns the first result in the list or NULL reference
|
inherited |
returns the last result in the list or NULL reference
|
inherited |
sets the alone result
|
inherited |
sets the result by index (zero based), results before this must be set before
|
inherited |
removes all results starting from the given index (zero-based)
theSinceIndex | - index of the deleted result and all after also will be deleted |
theForever | - removes results for long period (not just because of feature disabling) |
theFlush | - if it is false, REDISPLAY message is not flushed |
|
inherited |
removes all results from the feature
|
virtualinherited |
removes all fields from this feature: results, data, etc
Reimplemented from ModelAPI_Object.
Reimplemented in SketchPlugin_MultiTranslation, SketchPlugin_MultiRotation, SketchPlugin_ConstraintMirror, PartSetPlugin_Part, and ModelAPI_CompositeFeature.
|
inherited |
removes the result from the list of feature (not doing in disabled): normally this method is not used from features.
only internally
|
inlinevirtualinherited |
Returns true if result is persistent (stored in document) and on undo-redo, save-open it is not needed to recompute it.
Reimplemented in ParametersPlugin_ParametersMgr, CollectionPlugin_GroupOperation, CollectionPlugin_Group, and CollectionPlugin_Field.
|
inlinevirtualinherited |
Returns true if this feature must not be created: this is just an action that is not stored in the features history and data model (like "delete part").
Reimplemented in PartSetPlugin_Remove, and PartSetPlugin_Duplicate.
|
virtualinherited |
Returns true if this feature is used as macro: creates other features and then removed.
Reimplemented in SketchPlugin_Trim, SketchPlugin_Split, SketchPlugin_SketchDrawer, SketchPlugin_SketchCopy, SketchPlugin_Projection, SketchPlugin_MacroEllipticArc, SketchPlugin_MacroEllipse, SketchPlugin_MacroCircle, SketchPlugin_MacroBSpline, SketchPlugin_MacroArc, SketchPlugin_Fillet, SketchPlugin_CurveFitting, ParametersPlugin_ParametersMgr, FeaturesPlugin_SharedFaces, FeaturesPlugin_PointCoordinates, FeaturesPlugin_Measurement, FeaturesPlugin_InspectNormalToFace, FeaturesPlugin_InspectBoundingBox, FeaturesPlugin_GeometryCalculation, ExchangePlugin_ImportPart, ExchangePlugin_ImportBase, ExchangePlugin_ExportPart, ExchangePlugin_ExportFeature, and ExchangePlugin_Dump.
|
virtualinherited |
Returns true if preview update during the edition needed.
Otherwise the update-mechanism calls the execute function only on "apply" of the operation
Reimplemented in SketchPlugin_Trim, SketchPlugin_Split, SketchPlugin_SketchDrawer, SketchPlugin_SketchCopy, SketchPlugin_Offset, SketchPlugin_MacroEllipticArc, SketchPlugin_MacroEllipse, SketchPlugin_MacroCircle, SketchPlugin_MacroBSpline, SketchPlugin_MacroArc, SketchPlugin_Fillet, SketchPlugin_CurveFitting, ParametersPlugin_ParametersMgr, ParametersPlugin_Parameter, ExchangePlugin_ImportPart, ExchangePlugin_ImportFeatureBase, ExchangePlugin_ImportBase, ExchangePlugin_ExportPart, ExchangePlugin_ExportFeature, and ExchangePlugin_Dump.
|
virtualinherited |
Must return document where the new feature must be added to By default it is empty: it is added to the document this method is called to.
Reimplemented in PartSetPlugin_Part.
|
virtualinherited |
Enables/disables the feature.
The disabled feature has no results and does not participate in any calculation.
|
virtualinherited |
Returns the feature is disabled or not.
Implements ModelAPI_Object.
|
staticinherited |
Returns the feature by the object (result).
|
virtualinherited |
Set the stable feature flag.
If feature is currently editing then it is not stable.
|
virtualinherited |
Returns the feature is stable or not.
|
virtualinherited |
Returns the feature is editable or not. Most of features are editable.
Reimplemented in ExchangePlugin_ImportFeature.
|
virtualinherited |
Performs some custom feature specific functionality (normally called by some GUI button)
theActionId | an action key |
Reimplemented in SketchPlugin_Sketch, SketchPlugin_Offset, SketchPlugin_CurveFitting, SketchPlugin_BSplineBase, CollectionPlugin_Group, and BuildPlugin_Wire.
|
virtualinherited |
Returns all the vertices produced by this feature.
|
virtualinherited |
Returns all the edges produced by this feature.
|
virtualinherited |
Returns all the wires produced by this feature.
|
virtualinherited |
Returns all the faces produced by this feature.
|
virtualinherited |
Returns all the shells produced by this feature.
|
virtualinherited |
Returns all the solids produced by this feature.
|
inlineinherited |
Returns the name stored in the attribute.
|
inlineinherited |
Returns the Boolean attribute by the identifier.
|
inlineinherited |
Returns the real attribute by the identifier.
|
inlineinherited |
Returns the integer attribute by the identifier.
|
inlineinherited |
Returns the integer array attribute by the identifier.
|
inlineinherited |
Returns the reference attribute by the identifier.
|
inlineinherited |
Returns the refattrlist attribute by the identifier.
|
inlineinherited |
Returns the reference attribute by the identifier.
|
inlineinherited |
Returns the list of references attribute by the identifier.
|
inlineinherited |
Returns the shape selection attribute by the identifier.
|
inlineinherited |
Returns the list of shape selections attribute by the identifier.
|
inlineinherited |
Returns the string attribute by the identifier.
|
inlineinherited |
Returns the string array attribute by the identifier.
|
inlineinherited |
Returns the tables attribute by the identifier.
|
inlineinherited |
Returns the attribute by the identifier.
|
protectedvirtualinherited |
This method is called just after creation of the object: it must initialize all fields, normally initialized in the constructor.
Implements ModelAPI_Object.
|
virtualinherited |
By default object is displayed in the object browser.
Reimplemented in SketchPlugin_Sketch, SketchPlugin_Feature, ParametersPlugin_ParametersMgr, ParametersPlugin_Parameter, Model_ResultConstruction, FiltersPlugin_Selection, FeaturesPlugin_RemoveResults, ExchangePlugin_ExportPart, and ExchangePlugin_ExportFeature.
|
virtualinherited |
Makes object presented or not in the history of the created objects.
theObject | is shared pointer to "this" |
theFlag | is boolean value: to add or remove from the history |
|
virtualinherited |
Returns the data manager of this object: attributes.
|
virtualinherited |
Returns true if object refers to the same data model instance.
|
inlinevirtualinherited |
Returns the parameters of color definition in the resources config manager.
Reimplemented in SketchPlugin_ConstraintRadius, SketchPlugin_ConstraintLength, SketchPlugin_ConstraintDistance, SketchPlugin_ConstraintAngle, Model_ResultPart, Model_ResultGroup, Model_ResultField, Model_ResultConstruction, and Model_ResultBody.
|
virtualinherited |
Called on change of any argument-attribute of this object.
theID | identifier of changed attribute |
Reimplemented in ExchangePlugin_ImportBase, ExchangePlugin_Import_Image, ExchangePlugin_Import, SketchPlugin_Sketch, SketchPlugin_Projection, SketchPlugin_Point, SketchPlugin_Offset, SketchPlugin_MultiTranslation, SketchPlugin_MultiRotation, SketchPlugin_MacroEllipticArc, SketchPlugin_MacroEllipse, SketchPlugin_MacroCircle, SketchPlugin_MacroArc, SketchPlugin_Line, SketchPlugin_IntersectionPoint, SketchPlugin_EllipticArc, SketchPlugin_Ellipse, SketchPlugin_ConstraintRadius, SketchPlugin_ConstraintMirror, SketchPlugin_ConstraintMiddle, SketchPlugin_ConstraintLength, SketchPlugin_ConstraintDistanceAlongDir, SketchPlugin_ConstraintDistance, SketchPlugin_ConstraintAngle, SketchPlugin_Circle, SketchPlugin_BSplineBase, SketchPlugin_BSpline, SketchPlugin_Arc, ParametersPlugin_Parameter, ModelAPI_Result, FeaturesPlugin_SharedFaces, FeaturesPlugin_RemoveSubShapes, FeaturesPlugin_Recover, FeaturesPlugin_PointCoordinates, FeaturesPlugin_PointCloudOnFace, FeaturesPlugin_NormalToFace, FeaturesPlugin_Measurement, FeaturesPlugin_InspectNormalToFace, FeaturesPlugin_InspectBoundingBox, FeaturesPlugin_GroupSharedFaces, FeaturesPlugin_GeometryCalculation, FeaturesPlugin_Fillet1D, FeaturesPlugin_BoundingBox, ExchangePlugin_ImportPart, ExchangePlugin_ExportFeature, BuildPlugin_SubShapes, BuildPlugin_Interpolation, and BuildPlugin_Filling.
|
virtualinherited |
Returns true if object must be displayed in the viewer: flag is stored in the data model, so on undo/redo, open/save or recreation of object by history-playing it keeps the original state in the current transaction.
Reimplemented in ModelAPI_ResultField::ModelAPI_FieldStep.
|
virtualinherited |
Sets the displayed/hidden state of the object.
If it is changed, sends the "redisplay" signal.
Reimplemented in ModelAPI_ResultField, ModelAPI_ResultField::ModelAPI_FieldStep, and ModelAPI_ResultBody.
|
protectedvirtualinherited |
Sets the data manager of an object (document does)
|
protectedvirtualinherited |
Sets the data manager of an object (document does)
|
inlinevirtualinherited |
Empty function which is added for virtualiation of the interface.