volmdlr_tools.features.feature_types.sheet_metal package#
Sheet metal feature types for representing various sheet metal manufacturing features.
Submodules#
volmdlr_tools.features.feature_types.sheet_metal.bends module#
Sheet metal bend feature module.
- class volmdlr_tools.features.feature_types.sheet_metal.bends.Bend(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureBend feature type.
A bend is a sheet metal feature consisting of two fan-shaped faces forming a simple bend angle. According to Yang Yang et al., bends are identified by the binary pattern [0, 1] in the characteristic matrix.
- category: FeatureCategory = 'forming'#
volmdlr_tools.features.feature_types.sheet_metal.corners module#
Sheet metal corner feature module.
- class volmdlr_tools.features.feature_types.sheet_metal.corners.Corner(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureCorner feature type.
A corner is a sheet metal feature consisting of a single face where both adjacent solid angles are convex and fall within the range (90°, 180°). According to Yang Yang et al., corners are identified using the convexity method.
- category: FeatureCategory = 'cut'#
volmdlr_tools.features.feature_types.sheet_metal.jogs module#
Sheet metal jog feature module.
- class volmdlr_tools.features.feature_types.sheet_metal.jogs.Jog(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureJog feature type.
A jog (also called offset) is a sheet metal feature consisting of four fan-shaped faces forming two parallel bends with an offset section between them. According to Yang Yang et al., jogs are identified by the binary pattern [0, 0, 1, 1] in the characteristic matrix.
- category: FeatureCategory = 'forming'#
volmdlr_tools.features.feature_types.sheet_metal.notches module#
Sheet metal notch feature module.
- class volmdlr_tools.features.feature_types.sheet_metal.notches.Notch(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureNotch feature type.
A notch is a sheet metal feature consisting of consecutive faces connected by concave angles, with the sequence open at one end (typically at the edge of the part). According to Yang Yang et al., notches are identified using the concavity method, similar to slots but open-ended.
- category: FeatureCategory = 'cut'#
volmdlr_tools.features.feature_types.sheet_metal.reliefs module#
Sheet metal corner relief feature module.
- class volmdlr_tools.features.feature_types.sheet_metal.reliefs.CornerRelief(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
ReliefCorner relief feature type.
A corner relief is a small sheet metal feature consisting of a few faces connected by concave angles, typically located at corners where bends meet. According to Yang Yang et al., corner reliefs are identified using the concavity method and distinguished from slots/notches by their small size and location at bend intersections.
- class volmdlr_tools.features.feature_types.sheet_metal.reliefs.Relief(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureCorner relief feature type.
- category: FeatureCategory = 'cut'#
volmdlr_tools.features.feature_types.sheet_metal.lances module#
Sheet metal lances module.
volmdlr_tools.features.feature_types.sheet_metal.louvres module#
Sheet metal louvre module.
volmdlr_tools.features.feature_types.sheet_metal.deformations module#
Sheet metal emboss module.
volmdlr_tools.features.feature_types.sheet_metal.unknown module#
Unknown feature type for unclassified sheet metal features.
- class volmdlr_tools.features.feature_types.sheet_metal.unknown.UnknownFeature(obj: TopoDS_Shape, nodes: list[int], name: str = '', confidence: float = 0.0)#
Bases:
FeatureUnknown feature type for features that don’t match any classification rules.
This class is used when a thickness face chain or face set is extracted but doesn’t match any known feature patterns in the configuration files. It stores the extracted geometry and properties for manual review or future classification.
- category: FeatureCategory = 'unknown'#
Module contents#
Sheet-metal features types module.
- class volmdlr_tools.features.feature_types.sheet_metal.Bend(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureBend feature type.
A bend is a sheet metal feature consisting of two fan-shaped faces forming a simple bend angle. According to Yang Yang et al., bends are identified by the binary pattern [0, 1] in the characteristic matrix.
- category: FeatureCategory = 'forming'#
- class volmdlr_tools.features.feature_types.sheet_metal.Corner(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureCorner feature type.
A corner is a sheet metal feature consisting of a single face where both adjacent solid angles are convex and fall within the range (90°, 180°). According to Yang Yang et al., corners are identified using the convexity method.
- category: FeatureCategory = 'cut'#
- class volmdlr_tools.features.feature_types.sheet_metal.CornerRelief(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
ReliefCorner relief feature type.
A corner relief is a small sheet metal feature consisting of a few faces connected by concave angles, typically located at corners where bends meet. According to Yang Yang et al., corner reliefs are identified using the concavity method and distinguished from slots/notches by their small size and location at bend intersections.
- class volmdlr_tools.features.feature_types.sheet_metal.Curl(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
BendCurl feature type.
- class volmdlr_tools.features.feature_types.sheet_metal.Emboss(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureEmboss feature type.
- class volmdlr_tools.features.feature_types.sheet_metal.FlangedCutout(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureFlanged cutout feature type representing an open deformation with a cutout in sheet metal.
- class volmdlr_tools.features.feature_types.sheet_metal.Hem(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
BendHem feature type.
- class volmdlr_tools.features.feature_types.sheet_metal.Jog(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureJog feature type.
A jog (also called offset) is a sheet metal feature consisting of four fan-shaped faces forming two parallel bends with an offset section between them. According to Yang Yang et al., jogs are identified by the binary pattern [0, 0, 1, 1] in the characteristic matrix.
- category: FeatureCategory = 'forming'#
- class volmdlr_tools.features.feature_types.sheet_metal.Lance(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureLance feature type.
- class volmdlr_tools.features.feature_types.sheet_metal.Louvre(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureLouvre feature type.
- class volmdlr_tools.features.feature_types.sheet_metal.Notch(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureNotch feature type.
A notch is a sheet metal feature consisting of consecutive faces connected by concave angles, with the sequence open at one end (typically at the edge of the part). According to Yang Yang et al., notches are identified using the concavity method, similar to slots but open-ended.
- category: FeatureCategory = 'cut'#
- class volmdlr_tools.features.feature_types.sheet_metal.Relief(obj: TopoDS_Shape, nodes: list[int], name: str = '')#
Bases:
FeatureCorner relief feature type.
- category: FeatureCategory = 'cut'#
- class volmdlr_tools.features.feature_types.sheet_metal.UnknownFeature(obj: TopoDS_Shape, nodes: list[int], name: str = '', confidence: float = 0.0)#
Bases:
FeatureUnknown feature type for features that don’t match any classification rules.
This class is used when a thickness face chain or face set is extracted but doesn’t match any known feature patterns in the configuration files. It stores the extracted geometry and properties for manual review or future classification.
- category: FeatureCategory = 'unknown'#