Skip to main content

largest_fillet_radius

Function largest_fillet_radius 

Source
pub fn largest_fillet_radius(
    model: &Model,
    solid: &Shape,
    edge: &Shape,
    up_to: f64,
    tol: Tolerances,
) -> OgeomResult<Option<f64>>
Expand description

The largest radius up to up_to at which a ball rolling along edge of solid sits with both contacts on their faces at every station the request check reads, so that fillet_edges on that edge alone is not refused for setback at it or at any radius below it. None where no radius above the confusion distance fits.

Read from the seat, without building a band: each contact walks square to the edge, r · tan(φ/2) into its face, and the answer is where the first walk leaves its face, a confusion distance short. On a plane, and along a ruling of a cylinder or a cone, that is exact against the region the check reads the face by; on other surfaces the walk is followed by stations, and a sliver of the face’s outside narrower than their spacing can pass between two. A contact the check lets run off a face out of the solid, where another station holds the ball, bounds the answer here all the same, so the answer can lie under the largest radius the check lets through. Refusals other than for setback (a seat the round does not speak, a corner) are outside its promise.

§Errors

OgeomError::Construction if up_to is not a usable length; OgeomError::NotDone where which way a contact walks into its face depends on the radius, or the radius found does not pass the check (a station whose answer the walk does not predict).