fromFilletedLineString MethodStatic

Extract points and radii from a valid filleted linestring.

  • A valid filleted linestring is a CurveChain that satisfies the following conditions:
    • Its children have type Arc3d, LineSegment3d, or LineString3d.
    • Each Arc3d is circular.
    • Each Arc3d sweep is less than 180 degrees.
    • Each Arc3d cannot be adjacent to another Arc3d.
    • Each Arc3d is G1 continuous with each of its neighbors, i.e., at their common point, the curves have the same tangent direction.
  • To treat more input chains as valid, pass options.relaxedValidation = true. Internally, this setting performs several transformations on the input to produce a valid filleted linestring:
    • Each Arc3d whose sweep is between 180 and 360 degrees is split into 2 arcs of equal sweep separated by a zero-length LineSegment3d. A 360-degree arc is split into 3 arcs of equal sweep separated by 2 zero-length LineSegment3ds. Arcs with sweep greater than 360 degrees are not allowed.
    • Adjacent Arc3ds are separated by a zero-length LineSegment3d.
    • An Arc3d that is not G1 continuous with its neighbor is separated from its neighbor by a zero-length LineSegment3d.

fromFilletedLineString(filletedLineString: CurveChain, options?: FilletedLineStringOptions): undefined | [Point3d, number][]

@returns Array of [point, radius] pairs extracted from input, or undefined if the input is not valid. A radius of zero means no fillet at the vertex.

Parameter Type Description
filletedLineString CurveChain A linestring with corner fillets, e.g., as created by createFilletsInLineString.
options FilletedLineStringOptions optional validation settings.

Returns - undefined | [Point3d, number][]

Array of [point, radius] pairs extracted from input, or undefined if the input is not valid. A radius of zero means no fillet at the vertex.

Defined in

Last Updated: 22 April, 2026