Options
All
  • Public
  • Public/Protected
  • All
Menu

XYZT - The vector manipulation class - v5.4.2

Index

Type aliases

ArrayFull<T>: { 0: T } & T[]

Array with at least one item

Type parameters

  • T

ArrayFull2<T>: { 0: T; 1: T } & T[]

Array with at least two items

Type parameters

  • T

IAngleUnit: "(rad)" | "rad" | "(deg)" | "deg" | "grad" | "turn"
IAppliableOnTransform: { applyOnTransform: ITransformApplyModifierFunction }

Type declaration

IAppliableOnVector: { applyOnVector: IVectorApplyModifierFunction }

Type declaration

IAxis: "x" | "y" | "z"
IDimensionUnit: "(px)" | "px"
IInversible<T>: T & { inverse: any }

Type parameters

  • T

ITransformApplyModifierFunction: (Transform: Transform) => ITransformData

Type declaration

IVector: IVectorData
IVectorApplyModifierFunction: (vector: Vector) => IVector

Type declaration

Variables

AXES: IAxis[] = ...
CSS_FORMAT: ITransformStyleFormat = ...
NEGLIGIBLE_THRESHOLD: 1e-9 = 0.000000001

Threshold bellow which are decimal numbers so negligible that can be stripped from its main part See tests of stripInfatesimals

Functions

  • _rotateFromStyle(cssTransform: string): number | null
  • Parameters

    • cssTransform: string

    Returns number | null

  • _scaleFromStyle(cssTransform: string): Vector | null
  • Parameters

    • cssTransform: string

    Returns Vector | null

  • _transformAngleToStyle(styleFormat: Pick<ITransformStyleFormat, "angleUnit" | "fractionDigits">, value: number): string
  • Parameters

    Returns string

  • _transformDimensionToStyle(styleFormat: Pick<ITransformStyleFormat, "fractionDigits" | "dimensionUnit">, value: number): string
  • Parameters

    Returns string

  • Parameters

    Returns string | null

  • Parameters

    Returns string | null

  • Parameters

    Returns string | null

  • _translateFromStyle(cssTransform: string): Vector | null
  • Parameters

    • cssTransform: string

    Returns Vector | null

  • applyTransformOnElement(transform: ITransformData, element: Element): void
  • Parameters

    Returns void

  • applyTransformOnHtmlElement(transform: ITransformData, element: HTMLElement): void
  • Parameters

    Returns void

  • applyTransformOnSvgElement(transform: ITransformData, element: SVGGElement): void
  • Parameters

    Returns void

  • Parameters

    Returns number

  • extractValuesFromStyle(functionName: string, cssTransform: string): { unit?: string; value: number }[] | null
  • Parameters

    • functionName: string
    • cssTransform: string

    Returns { unit?: string; value: number }[] | null

  • Parameters

    Returns number

  • minmax(array: number[]): { max: number; min: number }
  • Count minimum and maximum on large arrays without hitting RangeError: Maximum call stack size exceeded

    Parameters

    • array: number[]

    Returns { max: number; min: number }

    • max: number
    • min: number
  • modulo(dividend: number, divisor: number): number
  • Parameters

    • dividend: number
    • divisor: number

    Returns number

  • showValue(fractionDigits: number, value: number): string
  • Parameters

    • fractionDigits: number
    • value: number

    Returns string

  • Parameters

    Returns string

  • stripInfatesimal(value: number): number
  • Parameters

    • value: number

    Returns number

  • transformFromStyle(cssTransform: string): Transform
  • Converts css style.transform or svg transform to Transform object Note: This function has a bit different philosophy than transformToStyle because it is trying to extract a Transform from the style in any format and you do not need to declare which format is it.

    Parameters

    • cssTransform: string

    Returns Transform

  • transformToStyleCss(...args: [transform: Transform]): string
  • Parameters

    Returns string

  • transformToStyleSvg(...args: [transform: Transform]): string
  • Parameters

    Returns string