Demonstrates how to perform sheet metal design analysis on a 3D model and print information about found issues and their parameters in a console.
In this example demonstrates how to perform sheet metal design analysis on a 3D model using sheet metal dfm analyzer tool (DFMSheetMetal_Analyzer). For this purpose, used a console application that imports a model, traverses through unique ModelData::Part , creates and runs DFMSheetMetal_Analyzer, groups and prints information about found issues and their parameters into console. Sheet metal design analysis will be performed for each unique ModelData::Part , but only for the scope of accepted geometries.
Application needs 1 input argument to run:
For more information about sheet metal design analysis visit Sheet Metal Design for Manufacturing (DFM) page.
PartProcessor
class is inherited from ShapeProcessor
and overrides ProcessSolid
and ProcessShell
methods that are used to run DFMSheetMetal_Analyzer on given shapes. Then PrintIssues
method is used to print information about found issues and their parameters in a console.
Visit Model Explore Helper Implementation page for more information about base ShapeProcessor
class implementation.
To traverse only unique parts of the imported model, the ModelData::ModelElementUniqueVisitor class is used.
After performing design analysis, the object of FeatureGroupManager
class is used to group and sort found issues. For this purpose, there is a traverse through all found issues and add each of them to FeatureGroupManager
with a specified name.
After adding all found issues to FeatureGroupManager
, a Print
method of the manager is used to print information about found issues and their parameters in a console. PrintFeatureParameters
is created to explore and print issue parameters. It uses as an input parameter of Print
method.
Visit Feature Group Helper Implementation page for more information about FeatureGroupManager
class implementation.
Below is the example output for model from ./examples/models/Power_box_Chasis.stp
.
Model | Example output |
---|---|
![]() | Model: Power_box_Chasis Part #0 ["power box sheetmetal"] - solid #0 has: Irregular Depth Extruded Hole Issue(s): 3 3 Hole(s) with expected max extruded height: 1.5 mm expected min extruded height: 0.6 mm actual extruded height: 2.29072 mm Large Depth Bead Issue(s): 1 1 Bead(s) with expected max depth: 0.36 mm actual depth: 5 mm ... Total issues: 17 |