The recognition can be run on a CAD file to find machining features, e.g. pockets, holes, etc. As a result of the recognition, list of found features of the part will be returned.
As the API changes to accommodate the needs of users compatibility will be preserved as much as possible but is ultimately not guaranteed.
Capabilities
It is possible to recognize pockets, holes of various types (through, blind, flat-bottom, partial), countersinks and milling/turning faces. A detailed description of the features is given here.
Below is a simple example of recognition.
Scope of accepted geometries
The recognition can be run on B-Rep representations, namely it works with ModelData::Solid .
API overview
Machining_FeatureRecognizer is the class that performs machining feature recognition. The tool has parameters that allow to modify rules for recognition.
There are 2 possible ways to use machining tools:
- Using Machining_FeatureRecognizer on its own and processing the detected features. CNC Machining Feature Recognizer Example demonstrates this approach.
- Using Machining_Analyzer. This approach supports running several recognition tools at once (currently, only Machining_FeatureRecognizer available) and collecting all of the computed data into the special Machining_Data class. Below is an example of how machining tools can be used with this approach:
Defines a list of features.
Definition MTKBase_FeatureList.hxx:36
Provides an interface to run several analyzer tools for different types of machining processing.
Definition Machining_Analyzer.hxx:42
Machining_Data Perform(const ModelData::Solid &theSolid, const cadex::ProgressStatus &theProgressStatus=cadex::ProgressStatus())
Runs the analyzing process.
Definition Machining_Analyzer.cxx:82
void AddTool(const Machining_AnalyzerTool &theTool)
Adds additional tool to run during analyzing process.
Definition Machining_Analyzer.cxx:102
Defines data used in Machining analysis.
Definition Machining_Data.hxx:36
const MTKBase_FeatureList & FeatureList() const
Definition Machining_Data.cxx:48
Provides an interface to recognizing machining features tool.
Definition Machining_FeatureRecognizer.hxx:45
Defines a topological solid.
Definition Solid.hxx:32
Contains classes, namespaces, enums, types, and global functions related to Manufacturing Toolkit.
Definition LicenseManager_LicenseError.hxx:30
The resulting Machining_Data can be passed as an input parameter for tools. Machining_Data can be used to run machining tools separately.