Skip to content

Latest commit

 

History

History
650 lines (626 loc) · 26.5 KB

capability-types.md

File metadata and controls

650 lines (626 loc) · 26.5 KB

This is a full list of capability types with their properties, entities and units. See the general information about capabilities.

Possible entities and keywords

Most type-specific properties refer to one of the following entities, which allow different units.

To make common percentage values more readable, one can use specific keywords to replace them. For example, "speed": "fast" has the same effect as "speed": "100%".

Entity Allowed Units -100% -1% 0% 1% 100%
Speed Hz, bpm, % fast reverse slow reverse stop slow fast
RotationSpeed Hz, rpm, % fast CCW slow CCW stop slow CW fast CW
Time s, ms, % instant short long
Distance m, % near far
Brightness lm, % off dark bright
ColorTemperature K, % warm / CTO default cold / CTB
FogOutput m^3/min, % off weak strong
RotationAngle deg, %
BeamAngle deg, % closed narrow wide
HorizontalAngle deg, % left center right
VerticalAngle deg, % top center bottom
SwingAngle deg, % off narrow wide
Parameter (no unit), % off / instant low / slow / small / short high / fast / big / long
SlotNumber (no unit)
Percent % off low high
Insertion % out in
IrisPercent % closed open

Possible capability types

Table of contents

Capability type Property Possible values Notes
NoFunction No type-specific properties.
ShutterStrobe shutterEffect
🌟 required
👣 must be stepped
Open, Closed, Strobe, Pulse, RampUp, RampDown, RampUpDown, Lightning, Spikes, Burst
soundControlled
❔ optional
👣 must be stepped
Entity Boolean Defaults to false
speed
❔ optional
Entity Speed
duration
❔ optional
Entity Time
randomTiming
❔ optional
👣 must be stepped
Entity Boolean Defaults to false
StrobeSpeed speed
🌟 required
Entity Speed global, doesn't activate strobe directly
StrobeDuration duration
🌟 required
Entity Time
Intensity brightness
❔ optional
Entity Brightness Defaults to brightnessStart: "off", brightnessEnd: "bright"
ColorIntensity color
🌟 required
👣 must be stepped
one of our predefined Single Colors: Red, Green, Blue, Cyan, Magenta, Yellow, Amber, White, Warm White, Cold White, UV, Lime, Indigo
brightness
❔ optional
Entity Brightness Defaults to brightnessStart: "off", brightnessEnd: "bright"
ColorPreset colors
❔ optional
array of individual color beams as hex code see footnote colors
colorTemperature
❔ optional
Entity ColorTemperature
ColorTemperature colorTemperature
🌟 required
Entity ColorTemperature
Pan angle
🌟 required
Entity RotationAngle
PanContinuous speed
🌟 required
Entity RotationSpeed
Tilt angle
🌟 required
Entity RotationAngle
TiltContinuous speed
🌟 required
Entity RotationSpeed
PanTiltSpeed speed
🆚 required
Entity Speed either speed or duration is allowed
duration
🆚 required
Entity Time
WheelSlot wheel
❔ optional
👣 must be stepped
Wheel name Defaults to channel name
slotNumber
🌟 required
Entity SlotNumber see footnote slotNumber
WheelShake isShaking
❔ optional
👣 must be stepped
wheel or slot Defaults to wheel.
wheel
❔ optional
👣 must be stepped
Wheel name or array of wheel names Defaults to channel name. Array not allowed when slotNumber is set.
slotNumber
❔ optional
Entity SlotNumber see footnote slotNumber
shakeSpeed
❔ optional
Entity Speed
shakeAngle
❔ optional
Entity SwingAngle
WheelSlotRotation wheel
❔ optional
👣 must be stepped
Wheel name or array of wheel names Defaults to channel name. Array not allowed when slotNumber is set.
slotNumber
❔ optional
Entity SlotNumber see footnote slotNumber
speed
🆚 required
Entity RotationSpeed either speed or angle is allowed
angle
🆚 required
Entity RotationAngle
WheelRotation wheel
❔ optional
👣 must be stepped
Wheel name or array of wheel names Defaults to channel name.
speed
🆚 required
Entity RotationSpeed either speed or angle is allowed
angle
🆚 required
Entity RotationAngle
Effect effectName
🆚 required
👣 must be stepped
Free text describing the effect either effectName or effectPreset is allowed
effectPreset
🆚 required
👣 must be stepped
ColorJump or ColorFade
speed
❔ optional
Entity Speed
duration
❔ optional
Entity Time
parameter
❔ optional
Entity Parameter
soundControlled
❔ optional
👣 must be stepped
Entity Boolean Defaults to false
soundSensitivity
❔ optional
Entity Percent
BeamAngle angle
🌟 required
Entity BeamAngle
BeamPosition horizontalAngle
🌟 required
Entity HorizontalAngle at least one of horizontalAngle or verticalAngle is required
verticalAngle
🌟 required
Entity VerticalAngle
EffectSpeed speed
🌟 required
Entity Speed
EffectDuration duration
🌟 required
Entity Time
EffectParameter parameter
🌟 required
Entity Parameter
SoundSensitivity soundSensitivity
🌟 required
Entity Percent
Focus distance
🌟 required
Entity Distance
Zoom angle
🌟 required
Entity BeamAngle
Iris openPercent
🌟 required
Entity IrisPercent
IrisEffect effectName
🌟 required
👣 must be stepped
Free text describing the effect
speed
❔ optional
Entity Speed
Frost frostIntensity
🌟 required
Entity Percent
FrostEffect effectName
🌟 required
👣 must be stepped
Free text describing the effect
speed
❔ optional
Entity Speed
Prism speed
❔ optional
Entity RotationSpeed activates fixture's prism; either speed or angle is allowed
angle
❔ optional
Entity RotationAngle
PrismRotation speed
🆚 required
Entity RotationSpeed doesn't activate prism directly; either speed or angle is allowed
angle
🆚 required
Entity RotationAngle
BladeInsertion blade
🌟 required
👣 must be stepped
Top, Right, Bottom, Left or a number if the position is unknown
insertion
🌟 required
Entity Insertion
BladeRotation blade
🌟 required
👣 must be stepped
Top, Right, Bottom, Left or a number if the position is unknown
angle
🌟 required
Entity RotationAngle
BladeSystemRotation angle
🌟 required
Entity RotationAngle
Fog fogType
❔ optional
👣 must be stepped
Fog or Haze
fogOutput
❔ optional
Entity FogOutput
FogOutput fogOutput
🌟 required
Entity FogOutput
FogType fogType
🌟 required
👣 must be stepped
Fog or Haze
Rotation speed
🆚 required
Entity RotationSpeed either speed or angle is allowed
angle
🆚 required
Entity RotationAngle
Speed speed
🌟 required
Entity Speed
Time time
🌟 required
Entity Time
Maintenance parameter
❔ optional
Entity Parameter
hold
❔ optional
👣 must be stepped
Entity Time
Generic No type-specific properties.

Footnotes

Must be stepped

Properties that must be stepped (they have a 👣 footsteps icon next to them) can't be appended with Start or End. E.g. only effectName (not effectNameStart/effectNameEnd) is allowed, while both speed and speedStart/speedEnd are valid.

Property colors

"Individual color beams" means that one beam is visually distinguishable from the others, i.e.:

  • A Red/Green/Blue/White/Amber LED produces a single color beam, as all these color components are mixed together. For a color preset "Red+Blue", colors should be set to ["#ff00ff"].
  • A laser device has separate light beams that don't mix. If red and green lasers are active, colors should be set to ["#ff0000", "#00ff00"].
  • UV is always counted as a separate color as the ultraviolet light doesn't really mix with normal RGB colors. For a color preset "Red+Green+UV", colors should be set to ["#ffff00", "UV"].

Property slotNumber

Use one-based numbering (e.g. 1 for Open, 2 for Color/Gobo 1). If the capability shows a split slot, use the value halfway between them (e.g. 2.5 for Split Color/Gobo 1/2). If all steps in between can be selected by the proportional capability, use slotNumberStart and slotNumberEnd (e.g. from Color/Gobo 1 to Color/Gobo 2).

Note: If there are e.g. 8 slots, and a capability allows gradually selecting anything between the last slot (Color/Gobo 7) and the first (Open) in this direction, use "slotNumberStart": 8, "slotNumberEnd": 9. If you chose "slotNumberEnd": 1 instead, that would indicate a rotation in the other direction (i.e. over all other Gobos). Likewise, "slotNumberStart": 0, "slotNumberEnd": 1 is also allowed.

How to add new capability types / type-specific properties

  • Update the schema (mainly capability.json, definitions.json for units / entities)
  • Update this document (both table of contents and the section itself)
  • Add new properties to the model (in Capability.js)
  • If it's a start/end entity, add its name to Capability.START_END_ENTITIES
  • Add new types to capability name generation (in Capability.js)
  • Add new types to channel type generation (in CoarseChannel.js)
  • Add a capability icon (see ui/assets/icon and maybe also the app-fixture-capability-type-icon component)
  • Update editor:
    • Create new component in ui/components/editor-capabilities. Make sure it has a defaultData object as component data.
    • Import the new component in the capability component and register it in its components section.