Options
All
  • Public
  • Public/Protected
  • All
Menu

Class CurvesLine

Curves line See the ngx curve page for a live curve demo.

Hierarchy

Index

Constructors

constructor

constructor

Properties

arcLengthDivisions

arcLengthDivisions: number

This value determines the amount of divisions when calculating the cumulative segment lengths of a curve via .getLengths. To ensure precision when using methods like .getSpacedPoints, it is recommended to increase .arcLengthDivisions if the curve is very large. Default is 200.

default

200

type

type: string
default

'Curve'

Static arcLengthDivisions

arcLengthDivisions: number

This value determines the amount of divisions when calculating the cumulative segment lengths of a curve via .getLengths. To ensure precision when using methods like .getSpacedPoints, it is recommended to increase .arcLengthDivisions if the curve is very large. Default is 200.

default

200

Static type

type: string
default

'Curve'

Methods

clone

computeFrenetFrames

copy

fromJSON

getLength

  • getLength(): number

getLengths

  • getLengths(divisions?: number): number[]

getPoint

getPointAt

  • Parameters

    • u: number

      A position on the curve according to the arc length. Must be in the range [ 0, 1 ].

    • Optional optionalTarget: I3JS.Vector3

      If specified, the result will be copied into this Vector, otherwise a new Vector will be created.

    Returns I3JS.Vector3

    Returns a vector for a given position on the curve according to the arc length.

getPoints

getSpacedPoints

getTangent

  • Parameters

    • t: number

      A position on the curve. Must be in the range [ 0, 1 ].

    • Optional optionalTarget: I3JS.Vector3

      If specified, the result will be copied into this Vector, otherwise a new Vector will be created.

    Returns I3JS.Vector3

    Returns a unit vector tangent at t. If the derived curve does not implement its tangent derivation, two points a small delta apart will be used to find its gradient which seems to give a reasonable approximation.

getTangentAt

  • Parameters

    • u: number

      A position on the curve according to the arc length. Must be in the range [ 0, 1 ].

    • Optional optionalTarget: I3JS.Vector3

      If specified, the result will be copied into this Vector, otherwise a new Vector will be created.

    Returns I3JS.Vector3

    Returns tangent at a point which is equidistant to the ends of the curve from the point given in .getTangent.

getUtoTmapping

  • getUtoTmapping(u: number, distance: number): number
  • Given u in the range ( 0 .. 1 ), returns t also in the range ( 0 .. 1 ). u and t can then be used to give you points which are equidistant from the ends of the curve, using .getPoint.

    Parameters

    • u: number
    • distance: number

    Returns number

toJSON

  • toJSON(): object

updateArcLengths

  • updateArcLengths(): void
  • Update the cumlative segment distance cache. The method must be called every time curve parameters are changed. If an updated curve is part of a composed curve like CurvePath, .updateArcLengths() must be called on the composed curve, too.

    Returns void

Static clone

Static computeFrenetFrames

Static copy

Static fromJSON

Static getLength

  • getLength(): number

Static getLengths

  • getLengths(divisions?: number): number[]

Static getPoint

  • Parameters

    • t: number

      A position on the curve. Must be in the range [ 0, 1 ].

    • Optional optionalTarget: I3JS.Vector3

      If specified, the result will be copied into this Vector, otherwise a new Vector will be created.

    Returns I3JS.Vector3

    Returns a vector for a given position on the curve.

Static getPointAt

  • Parameters

    • u: number

      A position on the curve according to the arc length. Must be in the range [ 0, 1 ].

    • Optional optionalTarget: I3JS.Vector3

      If specified, the result will be copied into this Vector, otherwise a new Vector will be created.

    Returns I3JS.Vector3

    Returns a vector for a given position on the curve according to the arc length.

Static getPoints

Static getSpacedPoints

Static getTangent

  • Parameters

    • t: number

      A position on the curve. Must be in the range [ 0, 1 ].

    • Optional optionalTarget: I3JS.Vector3

      If specified, the result will be copied into this Vector, otherwise a new Vector will be created.

    Returns I3JS.Vector3

    Returns a unit vector tangent at t. If the derived curve does not implement its tangent derivation, two points a small delta apart will be used to find its gradient which seems to give a reasonable approximation.

Static getTangentAt

  • Parameters

    • u: number

      A position on the curve according to the arc length. Must be in the range [ 0, 1 ].

    • Optional optionalTarget: I3JS.Vector3

      If specified, the result will be copied into this Vector, otherwise a new Vector will be created.

    Returns I3JS.Vector3

    Returns tangent at a point which is equidistant to the ends of the curve from the point given in .getTangent.

Static getUtoTmapping

  • getUtoTmapping(u: number, distance: number): number
  • Given u in the range ( 0 .. 1 ), returns t also in the range ( 0 .. 1 ). u and t can then be used to give you points which are equidistant from the ends of the curve, using .getPoint.

    Parameters

    • u: number
    • distance: number

    Returns number

Static toJSON

  • toJSON(): object

Static updateArcLengths

  • updateArcLengths(): void
  • Update the cumlative segment distance cache. The method must be called every time curve parameters are changed. If an updated curve is part of a composed curve like CurvePath, .updateArcLengths() must be called on the composed curve, too.

    Returns void

Generated using TypeDoc