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