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.