Ping Pong Effect

Format

{
  "Type": "PingPongEffect",
  "Config": {
    "Step": <float>,
    "Height": <float>,
    "Width": <float>,
    "ColorGradient": <LedColorGradient>,
    "EnableSmoothing": <bool>,
        
    "ColorGenerationMethod": <enum>,
    "Trigger": <Trigger>
  }
}

Variables

Step

Speed of the ping pong region.

Required: No
Default value:

0.01

Example:

"Step": 0.03

Height

Height of the ping pong region.

Note: Value from 0.0 to 1.0.

Required: No
Default value:

0.2

Example:

"Height": 0.33

Width

Width of the ping pong region.

Note: Value from 0.0 to 1.0.

Required: No
Default value:

0.5

Example:

"Width": 0.25

ColorGradient

A Led Color Gradient to translate ping pong region to led colors.

Note: The gradient <location> values are between 0.0 and 1.0 where 0.0 means bottom of first fan and 1.0 means top of last fan.

Required: Yes
Default value:

[]

Example:

"ColorGradient": [
  [0.0, [16, 0, 0]],
  [0.5, [64, 0, 0]],
  [1.0, [256, 0, 0]],
  ...
]

EnableSmoothing

Enables smoothing of edges of the ping pong region.

Required: No
Default value:

true

Example:

"EnableSmoothing": false

ColorGenerationMethod

Tells the effect how to generate colors for multiple devices. The actual behaviour is depended on the effect implementation.

Allowed values:

  • "PerPort" - Duplicates the effect on each device.
  • "SpanPorts" - Treats multiple devices as one.

Required: No
Default value:

"PerPort"

Example:

"ColorGenerationMethod": "SpanPorts"

Trigger

Instance of a Trigger plugin.

Required: Yes
Default value:

Example:

"Trigger": {
  "Type": "AlwaysTrigger"
}

Example