Skip to main content

blend_edges

Function blend_edges 

Source
pub fn blend_edges(
    model: &mut Model,
    solid: &Shape,
    edges: &[(Shape, Blend)],
    corner: ChamferCorner,
    tol: Tolerances,
) -> OgeomResult<Built>
Expand description

Round and bevel the edges of solid as edges says, in one request.

A request of rounds alone is fillet_edges_with, and one of bevels alone chamfer_edges_cornered with corner, exactly. Where both are asked, the bevels are cut first and the rounds then, each kind in the order of its edges’ nodes, so the order of the request does not matter; at a vertex where only one kind meets, that is what the kind’s own call builds.

At a vertex where a round meets a bevel, every edge there must be in the request, and the vertex a convex corner of planes: each band is stopped at the least setback where its section clears every other band and one of its own widths past it, the cell short of the sections cut away (all that the order of the build leaves there), and the opening closed by one patch. On each face between two bands it is trimmed by a conic tangent to both bands’ lines there. The patch is tangent to each round’s band and to each face, and meets each bevel’s end in position only: the bevel meets its faces in a crease, so where its end meets a face the patch takes the face’s tangent plane.

A vertex of three edges where one round meets one bevel and the third edge is left sharp closes as round_vertex_setback_sharp closes a corner: the sharp edge is cut as far out as the farther band, at Q, where a three-sided patch held across both of its faces turns its normal from one face’s to the other’s, and one patch over the rest meets the round’s band and the faces between rounds tangent, and the bevel’s end and the trims from it in position only.

§Errors

As the rounds’ and the bevels’ own calls, and OgeomError::Construction where an edge is asked twice, or a round meets a bevel at a vertex where an edge is left sharp other than one beside one round and one bevel; or where that vertex is not a convex corner of planes.