Slider Node: Difference between revisions

From RoboPad Wiki
Jump to navigation Jump to search
m (Fixes "it's"s)
(links to example)
Line 10: Line 10:


Slider Nodes were introduced in [[Firmware Releases|firmware version]] 2.1 along with all basic nodes.
Slider Nodes were introduced in [[Firmware Releases|firmware version]] 2.1 along with all basic nodes.
The [[Example: Simple Tank-Drive Robot|Example Tank-Drive Robot]] uses a pair of sliders as it's central input method - check that out for an example nodegraph!


== Outputs ==
== Outputs ==

Revision as of 02:47, 21 August 2024

← Return to Node Catalogue

Slider Node
Inputs
    none
Outputs
  • signal
Version Introduced
2.1

The Slider Node is a UI Node that places a slider on the controller. A slider is a simple element that can can be dragged in one direction - either up and down or left and right.

Slider Nodes were introduced in firmware version 2.1 along with all basic nodes.

The Example Tank-Drive Robot uses a pair of sliders as it's central input method - check that out for an example nodegraph!

Outputs

A Slider Node has a single output port - signal. This output port will emit the position of the slider, from 0 to 1 (clipped), every time the slider is moved when in the controller.

Settings

The Slider Node's settings can be configured to alter its visual presentation, mode of operation and output value mapping.

As a UI Node, the Slider Node possesses the UI Transform and Background Colour settings. All UI Nodes draw to a region on the controller - this is an area that will be populated by the Slider Node's display elements.

  • UI Transform: Configures the position of this Slider Node's UI element within the controller. The Position x and y values control the position of the center of this element on the controller, from the bottom left (i.e. x and y values of 0 result in its center being in the bottom left, x and y values of 1 result in its center being in the top right). The Scale x and y values control the width and height of this Slider Node's UI element, relative to the controller's width and height. Scaling occurs from the center of the Slider.
  • Background Colour: Configures the background colour of this Slider Node's UI region when it is drawn to the controller.
  • Stick Colour: Configures the colour of the stick of this slider as it's seen in the controller.
  • Render Orientation: Configures the direction the slider will render - vertical will result in a stick that can move up and down within its region, while horizontal will draw a stick that can move left and right.
  • Release Behaviour: Configures what should happen to the slider when a held click or touch is released - reset will result in the slider returning to its Start Position when released - much like a spring-loaded self-centering joystick on a traditional physical controller, while hold will leave the Slider in its current position, similar to non-self-centering joysticks. Sliders set to hold will render with three little bars in the center of the slider perpendicular to the direction of movement allowed (you can think of them as gear teeth, meshing into some unseen rack to stop the slider from moving back on its own).
  • Start Position: This configures both the position the slider starts in and the position that it returns to if its Release Behaviour is set to reset.
  • Invert Output: This option inverts the output. By default a fully downward position makes the output Signal port emit 0, and a fully upwards emits 1, however enabling this inverts that, with a fully downward slider position emitting 1 and a fully upward position emitting 0. Note that similar achievement could be achieved by using an Inverter Node on the signal output port.

Gallery