Files
modeling-app/docs/kcl-std/functions/std-solid-fillet.md
Adam Chalmers 8f7ef4967f Update docs
2025-05-07 13:36:42 -05:00

119 KiB

title, subtitle, excerpt, layout
title subtitle excerpt layout
fillet Function in solid Blend a transitional edge along a tagged path, smoothing the sharp edge. manual

Blend a transitional edge along a tagged path, smoothing the sharp edge.

fillet(
  @solid: Solid,
  radius: number(Length),
  tags: [Edge; 1+],
  tolerance?: number(Length),
  tag?: tag,
  strategy?: string,
): Solid

Fillet is similar in function and use to a chamfer, except a chamfer will cut a sharp transition along an edge while fillet will smoothly blend the transition.

Arguments

Name Type Description Required
solid Solid The solid whose edges should be filletted Yes
radius number(Length) The radius of the fillet Yes
tags [Edge; 1+] The paths you want to fillet Yes
tolerance number(Length) The tolerance for this fillet No
tag tag Create a new tag which refers to this fillet No
strategy string Which strategy should be used to perform this chamfer? No

Returns

Solid - A solid is a collection of extrude surfaces.

Examples

width = 20
length = 10
thickness = 1
filletRadius = 2

mountingPlateSketch = startSketchOn(XY)
  |> startProfile(at = [-width/2, -length/2])
  |> line(endAbsolute = [width/2, -length/2], tag = $edge1)
  |> line(endAbsolute = [width/2, length/2], tag = $edge2)
  |> line(endAbsolute = [-width/2, length/2], tag = $edge3)
  |> close(tag = $edge4)

mountingPlate = extrude(mountingPlateSketch, length = thickness)
  |> fillet(
    radius = filletRadius,
    tags = [
      getNextAdjacentEdge(edge1),
      getNextAdjacentEdge(edge2),
      getNextAdjacentEdge(edge3),
      getNextAdjacentEdge(edge4)
    ],
  )

Rendered example of fillet 0

width = 20
length = 10
thickness = 1
filletRadius = 1

mountingPlateSketch = startSketchOn(XY)
  |> startProfile(at = [-width/2, -length/2])
  |> line(endAbsolute = [width/2, -length/2], tag = $edge1)
  |> line(endAbsolute = [width/2, length/2], tag = $edge2)
  |> line(endAbsolute = [-width/2, length/2], tag = $edge3)
  |> close(tag = $edge4)

mountingPlate = extrude(mountingPlateSketch, length = thickness)
  |> fillet(
    radius = filletRadius,
    tolerance = 0.000001,
    tags = [
      getNextAdjacentEdge(edge1),
      getNextAdjacentEdge(edge2),
      getNextAdjacentEdge(edge3),
      getNextAdjacentEdge(edge4)
    ],
  )

Rendered example of fillet 1