How to Recognize Features from a Mesh
Feature recognition on meshes works by first segmenting faces into surface groups, fitting geometric primitives (planes, cylinders, cones), building a topology graph of surface adjacencies, then matching patterns to known feature types. Paramesh AI recognizes extrusions, holes, pockets, bosses, chamfers, and fillets.
The feature recognition pipeline
Step 1: Surface segmentation
Region-growing with adaptive normal thresholds clusters faces into groups that belong to the same analytic surface. A flat face group becomes a plane; a curved group becomes a cylinder or cone.
Step 2: Primitive fitting
Each region gets a fitted primitive surface using RANSAC (for robustness) and least-squares refinement (for accuracy). Parameters are snapped to clean engineering values.
Step 3: Topology analysis
An adjacency graph is built: nodes are surfaces, edges are shared boundaries. Each edge is classified as sharp, fillet, or chamfer based on dihedral angle and surface properties.
Step 4: Pattern matching
The graph is searched for known feature patterns:
- Large connected plane group = base extrusion
- Full cylinder (360 degrees) adjacent to planes = hole
- Cone surface adjacent to hole = countersink chamfer
- Small narrow plane at 135 degrees = flat chamfer
- Partial-arc cylinder = fillet