Skip to content

IColorSetSettings

Type interface

Sources

IColorSetSettings is an interface: it describes a shape of data and is not imported on its own.

Inheritance

IColorSetSettings extends IEntitySettings.

IColorSetSettings is not extended by any other symbol.

Properties

baseColor

Type Color

A base color to generate new colors from if colors is not set.

colors

Type Color[]

The colors in the set. Generated colors are added to this list.

passOptions

Type IColorSetStepOptions

How the colors generated when the list runs out differ from the original list. Each time the list runs out, a new pass of colors is added, shifted by these amounts once more.

repeatLightness

Type undefined | numberSince 5.21.3

With reuse, each repeat of the list is this much lighter (HSL lightness, 0.1 is 10%; a negative value makes it darker) instead of the same colors again.

reuse

Type undefined | false | trueDefault false

Repeats the list from the start when it runs out, instead of generating new colors.

saturation

Type undefined | number

Saturation for every color the set returns, from 0 (grey) to 1.

startIndex

Type undefined | numberDefault 0

Index of the color the first next() returns, and reset() goes back to.

step

Type undefined | numberDefault 1

How many positions next() moves each time: 2 returns every second color.

9 inherited items
animations

Type ArrayInherited from IEntitySettingsSince 5.20.8

Animations the element plays on its own, described as data - so they can be set from a JSON config and saved with it.

Each one animates a setting of the element (or, with target: "dataItem", a value of its data item - a map point's positionOnLine, say). They start when the setting is applied, restart when it changes, and stop when the element is disposed. A saved config keeps what was configured, never a value caught half way through an animation.

sprite.set("animations", [
  { key: "rotation", to: 360, duration: 4000, loops: 0 },
  { key: "scale", from: 1, to: 1.3, duration: 800, loops: 0, yoyo: true, easing: "sine" }
]);
id

Type undefined | stringInherited from IEntitySettings

A unique ID for looking the element up in root.entitiesById. Setting an ID that another element already has throws an error.

ignoreThemes

Type undefined | false | trueDefault falseInherited from IEntitySettingsSince 5.15.6

Ignores themes: no theme rule applies to the element, not even one of the default theme.

stateAnimationDuration

Type undefined | numberDefault 0Inherited from IEntitySettings

How long, in milliseconds, a switch from one state to another animates.

0 switches at once.

stateAnimationEasing

Type $ease.EasingDefault out(cubic)Inherited from IEntitySettings

Easing of the animated switch from one state to another.

themes

Type ArrayInherited from IEntitySettings

Themes applied to the element and everything inside it.

themeTags

Type ArrayInherited from IEntitySettings

Tags that theme rules can target. They also count for the element's children, so a rule can match a child by a tag of its parent.

More info: Themes

themeTagsSelf

Type ArrayInherited from IEntitySettings

Tags that theme rules can target, like themeTags, but only for this element, not its children.

More info: Themes

userData

Type anyInherited from IEntitySettings

Any data of your own to keep with the element.