Skip to main content

Module feature

Module feature 

Source
Expand description

Chamfer and fillet on a straight vertical edge of an exact prism (#68).

§The contract

An edge is selected by the CORNER it belongs to, not by an opaque index: a caller naming “the corner nearest this point” survives a topology change that renumbers edges, while an index does not.

§What is exact here

Chamfering a vertical edge of a prism replaces one corner of its profile with a straight cut, so the result is a prism over a polygon with one more vertex. That is exactly the shape extrude_polygon_rings already builds – no new surface families, no approximation.

A constant-radius FILLET replaces the corner with a circular arc, so the wall becomes a cylindrical face. That is representable, but stitching a cylindrical wall into the prism assembly is not the same construction, so it is refused here rather than approximated by a polyline. Refusing is the honest answer: a caller asking for a fillet and receiving a many-segment chamfer would have no way to tell.

§Refusals

Variable radius, edge loops, curved edges, and fillets all return typed refusals naming the missing capability, never a silent no-op. A no-op is the worst outcome: the caller believes the feature was applied.

Structs§

BlendCorner
Corner geometry of the fillet: where the blend starts, ends, and centres.

Enums§

EdgeSelector
Which edge a feature applies to.
FeatureSize
How much material a feature removes.

Functions§

chamfer_extruded_profile
Chamfer one vertical edge of an exact extruded rectangle.
chamfer_polygon_corners
Chamfer several corners of an arbitrary polygon profile.
fillet_extruded_profile
Fillet one vertical edge of an exact extruded rectangle.
fillet_polygon_corner
Fillet one corner of an arbitrary closed polygon profile.
fillet_polygon_corners
Fillet several corners of a polygon profile in one solid.