@haxall/haxall
    Preparing search index...

    Class Color

    Models an CSS4 RGB color with alpha

    Hierarchy (View Summary)

    Implements

    Index

    Constructors

    Properties

    type$: Type

    Methods

    • The alpha component from 0.0 to 1.0

      Returns number

    • Return this

      Returns Color

    • The blue component from 0 to 255.

      Returns number

    • Return a negative integer, zero, or a positive integer if this object is less than, equal to, or greater than the specified object:

      this < that   =>  <0
      this == that => 0
      this > that => >0

      This method may also be accessed via the < <= <=> >= and > shortcut operators. If not overridden the default implementation compares the toStr representations. Also see docLang.

      Examples:

      3.compare(8)  =>  -1
      8.compare(3) => 1
      8.compare(8) => 0
      3 <=> 8 => -1 // shortcut for 3.compare(8)

      Parameters

      Returns number

    • Get a color which is a dark shade of this color. This decreases the brightness by the given percentage which is a float between 0.0 and 1.0.

      Parameters

      • Optionalpercentage: number

      Returns Color

    • Convenience for saturate(-percentage).

      Parameters

      • Optionalpercentage: number

      Returns Color

    • Equality

      Parameters

      Returns boolean

    • The green component from 0 to 255.

      Returns number

    • Hue as a float between 0.0 and 360.0 of the HSL model (hue, saturation, lightness). Also see makeHsl, s, l.

      Returns number

    • Return the hash code.

      Returns number

    • Always return true

      Returns boolean

    • Return if this Obj is immutable and safe to share between threads:

      • an instance of a const class
      • the result of toImmutable on List, Map, or Buf
      • a Func object may or may not be immutable - see sys::Func.
      • other instances are assumed mutable and return false

      Returns boolean

    • Return if a is zero, fully transparent

      Returns boolean

    • Lightness (brightness) as a float between 0.0 and 1.0 of the HSL model (hue, saturation, lightness). Also see makeHsl, h, s.

      Returns number

    • Get a color which is a lighter shade of this color. This increases the brightness by the given percentage which is a float between 0.0 and 1.0.

      Parameters

      • Optionalpercentage: number

      Returns Color

    • Adjust the opacity of this color and return new instance, where opacity is between 0.0 and 1.0.

      Parameters

      • Optionalopacity: number

      Returns Color

    • The red component from 0 to 255.

      Returns number

    • The RGB components masked together: bits 16-23 red; bits 8-15 green; bits 0-7 blue.

      Returns number

    • Saturation as a float between 0.0 and 1.0 of the HSL model (hue, saturation, lightness). Also see makeHsl, h, l.

      Returns number

    • Adjust saturation as percentage between -1..1.

      Parameters

      • Optionalpercentage: number

      Returns Color

    • Format as #RGB, #RRGGBB or #RRGGBBAA syntax

      Returns string

    • Get an immutable representation of this instance or throw NotImmutableErr if this object cannot be represented as an immutable:

      • if type is const, return this
      • if already an immutable List, Map, Buf, or Func return this
      • if a List, then attempt to perform a deep clone by calling toImmutable on all items
      • if a Map, then attempt to perform a deep clone by calling toImmutable on all values (keys are already immutable)
      • some Funcs can be made immutable - see sys::Func
      • if a Buf create immutable copy, see sys::Buf
      • any other object throws NotImmutableErr

      Returns Readonly<this>

    • If the alpha component is 1.0, then format as "#RRGGBB" hex string, otherwise format as "rbga()" notation.

      Returns string

    • Trap a dynamic call for handling. Dynamic calls are invoked with the -> shortcut operator:

      a->x        a.trap("x", null)
      a->x() a.trap("x", null)
      a->x = b a.trap("x", [b])
      a->x(b) a.trap("x", [b])
      a->x(b, c) a.trap("x", [b, c])

      The default implementation provided by Obj attempts to use reflection. If name maps to a method, it is invoked with the specified arguments. If name maps to a field and args.size is zero, get the field. If name maps to a field and args.size is one, set the field and return args[0]. Otherwise throw UnknownSlotErr.

      Parameters

      Returns JsObj

    • Get the Type instance which represents this object's class. Also seeType.of or Pod.of.

      Returns Type

    • This method called whenever an it-block is applied to an object. The default implementation calls the function with this, and then returns this.

      Parameters

      • f: (arg0: this) => void

      Returns this

    • Black is #000

      Returns Color

    • Write x.toStr to standard output followed by newline. If x is null then print "null". If no argument is provided then print an empty line.

      Parameters

      Returns void

    • Parse color from CSS 4 string. If invalid and checked is true then throw ParseErr otherwise return null. The following formats are supported:

      • CSS keyword color
      • #RRGGBB
      • #RRGGBBAA
      • #RGB
      • #RGBA
      • rgb(r, g b)
      • rgba(r, g, b, a)
      • hsl(h, s, l)
      • hsla(h, s, l, a)

      Functional notation works with comma or space separated arguments.

      Examples:

      Color.fromStr("red")
      Color.fromStr("#8A0")
      Color.fromStr("#88AA00")
      Color.fromStr("rgba(255, 0, 0, 0.3)")
      Color.fromStr("rgb(100% 0% 0% 25%)")

      Parameters

      • s: string
      • Optionalchecked: boolean
      • ...args: unknown[]

      Returns Color

    • Interpolate between a and b where t is 0.0 to 1.0 using HSL color model.

      Parameters

      Returns Color

    • Interpolate between a and b where t is 0.0 to 1.0 using RGB color model.

      Parameters

      Returns Color

    • Make a new instance with the RGB components masked together: bits 16-23 red; bits 8-15 green; bits 0-7 blue. Alpha should be a float between 1.0 and 0.0.

      Parameters

      • Optionalrgb: number
      • Optionala: number
      • ...args: unknown[]

      Returns Color

    • Construct a color using HSL model (hue, saturation, lightness):

      • hue as 0.0 to 360.0
      • saturation as 0.0 to 1.0
      • lightness (or brightness) as 0.0 to 1.0
      • alpha as 0.0 to 1.0 Also see h, s, l.

      Parameters

      • h: number
      • s: number
      • l: number
      • Optionala: number

      Returns Color

    • Make a new instance with the RGB individual components as integers between 0 and 255 and alpha as float between 1.0 and 0.0.

      Parameters

      • r: number
      • g: number
      • b: number
      • Optionala: number

      Returns Color

    • Transparent constant with opacity set to zero

      Returns Color

    • White is #FFF

      Returns Color