controlP5
Class Slider2D

java.lang.Object
  extended by controlP5.Controller
      extended by controlP5.Slider2D
All Implemented Interfaces:
CDrawable, ControllerInterface, ControlP5Constants

public class Slider2D
extends Controller

The Slider2D allows to control a handle within a 2D area. This controller returns an arrayValue with the current xy position of its handle.

+Example
/**
* ControlP5 Slider2D
*
*
* find a list of public methods available for the Slider2D Controller
* at the bottom of this sketch.
*
* by Andreas Schlegel, 2012
* www.sojamo.de/libraries/controlp5
*
*/

import controlP5.*;

ControlP5 cp5;

Slider2D s;

void setup() {
  size(700,400);
  cp5 = new ControlP5(this);
  s = cp5.addSlider2D("wave")
         .setPosition(30,40)
         .setSize(100,100)
         .setArrayValue(new float[] {50, 50})
         ;
         
  smooth();
}

float cnt;
void draw() {
  background(0);
  pushMatrix();
  translate(160,140);
  noStroke();
  fill(50);
  rect(0, -100, 400,200);
  strokeWeight(1);
  line(0,0,200, 0);
  stroke(255);
  
  for(int i=1;i<400;i++) {
    float y0 = cos(map(i-1,0,s.arrayValue()[0],-PI,PI)) * s.arrayValue()[1]; 
    float y1 = cos(map(i,0,s.arrayValue()[0],-PI,PI)) * s.arrayValue()[1];
    line((i-1),y0,i,y1);
  }
  
  popMatrix();
}















/*
a list of all methods available for the Slider2D Controller
use ControlP5.printPublicMethodsFor(Slider2D.class);
to print the following list into the console.

You can find further details about class Slider2D in the javadoc.

Format:
ClassName : returnType methodName(parameter type)


controlP5.Slider2D : Slider2D setArrayValue(float[]) 
controlP5.Slider2D : Slider2D setMaxX(float) 
controlP5.Slider2D : Slider2D setMaxY(float) 
controlP5.Slider2D : Slider2D setMinX(float) 
controlP5.Slider2D : Slider2D setMinY(float) 
controlP5.Slider2D : Slider2D setValue(float) 
controlP5.Slider2D : Slider2D shuffle() 
controlP5.Slider2D : float getCursorHeight() 
controlP5.Slider2D : float getCursorWidth() 
controlP5.Slider2D : float getCursorX() 
controlP5.Slider2D : float getCursorY() 
controlP5.Slider2D : float getMaxX() 
controlP5.Slider2D : float getMaxY() 
controlP5.Slider2D : float getMinX() 
controlP5.Slider2D : float getMinY() 
controlP5.Slider2D : float[] getArrayValue() 
controlP5.Slider2D : void setValueLabelSeparator(String) 
controlP5.Controller : CColor getColor() 
controlP5.Controller : ControlBehavior getBehavior() 
controlP5.Controller : ControlWindow getControlWindow() 
controlP5.Controller : ControlWindow getWindow() 
controlP5.Controller : ControllerProperty getProperty(String) 
controlP5.Controller : ControllerProperty getProperty(String, String) 
controlP5.Controller : Label getCaptionLabel() 
controlP5.Controller : Label getValueLabel() 
controlP5.Controller : List getControllerPlugList() 
controlP5.Controller : PImage setImage(PImage) 
controlP5.Controller : PImage setImage(PImage, int) 
controlP5.Controller : PVector getAbsolutePosition() 
controlP5.Controller : PVector getPosition() 
controlP5.Controller : Slider2D addCallback(CallbackListener) 
controlP5.Controller : Slider2D addListener(ControlListener) 
controlP5.Controller : Slider2D bringToFront() 
controlP5.Controller : Slider2D bringToFront(ControllerInterface) 
controlP5.Controller : Slider2D hide() 
controlP5.Controller : Slider2D linebreak() 
controlP5.Controller : Slider2D listen(boolean) 
controlP5.Controller : Slider2D lock() 
controlP5.Controller : Slider2D plugTo(Object) 
controlP5.Controller : Slider2D plugTo(Object, String) 
controlP5.Controller : Slider2D plugTo(Object[]) 
controlP5.Controller : Slider2D plugTo(Object[], String) 
controlP5.Controller : Slider2D registerProperty(String) 
controlP5.Controller : Slider2D registerProperty(String, String) 
controlP5.Controller : Slider2D registerTooltip(String) 
controlP5.Controller : Slider2D removeBehavior() 
controlP5.Controller : Slider2D removeCallback() 
controlP5.Controller : Slider2D removeCallback(CallbackListener) 
controlP5.Controller : Slider2D removeListener(ControlListener) 
controlP5.Controller : Slider2D removeProperty(String) 
controlP5.Controller : Slider2D removeProperty(String, String) 
controlP5.Controller : Slider2D setArrayValue(float[]) 
controlP5.Controller : Slider2D setArrayValue(int, float) 
controlP5.Controller : Slider2D setBehavior(ControlBehavior) 
controlP5.Controller : Slider2D setBroadcast(boolean) 
controlP5.Controller : Slider2D setCaptionLabel(String) 
controlP5.Controller : Slider2D setColor(CColor) 
controlP5.Controller : Slider2D setColorActive(int) 
controlP5.Controller : Slider2D setColorBackground(int) 
controlP5.Controller : Slider2D setColorCaptionLabel(int) 
controlP5.Controller : Slider2D setColorForeground(int) 
controlP5.Controller : Slider2D setColorValueLabel(int) 
controlP5.Controller : Slider2D setDecimalPrecision(int) 
controlP5.Controller : Slider2D setDefaultValue(float) 
controlP5.Controller : Slider2D setHeight(int) 
controlP5.Controller : Slider2D setId(int) 
controlP5.Controller : Slider2D setImages(PImage, PImage, PImage) 
controlP5.Controller : Slider2D setImages(PImage, PImage, PImage, PImage) 
controlP5.Controller : Slider2D setLabelVisible(boolean) 
controlP5.Controller : Slider2D setLock(boolean) 
controlP5.Controller : Slider2D setMax(float) 
controlP5.Controller : Slider2D setMin(float) 
controlP5.Controller : Slider2D setMouseOver(boolean) 
controlP5.Controller : Slider2D setMoveable(boolean) 
controlP5.Controller : Slider2D setPosition(PVector) 
controlP5.Controller : Slider2D setPosition(float, float) 
controlP5.Controller : Slider2D setSize(PImage) 
controlP5.Controller : Slider2D setSize(int, int) 
controlP5.Controller : Slider2D setStringValue(String) 
controlP5.Controller : Slider2D setUpdate(boolean) 
controlP5.Controller : Slider2D setValueLabel(String) 
controlP5.Controller : Slider2D setView(ControllerView) 
controlP5.Controller : Slider2D setVisible(boolean) 
controlP5.Controller : Slider2D setWidth(int) 
controlP5.Controller : Slider2D show() 
controlP5.Controller : Slider2D unlock() 
controlP5.Controller : Slider2D unplugFrom(Object) 
controlP5.Controller : Slider2D unplugFrom(Object[]) 
controlP5.Controller : Slider2D unregisterTooltip() 
controlP5.Controller : Slider2D update() 
controlP5.Controller : Slider2D updateSize() 
controlP5.Controller : String getAddress() 
controlP5.Controller : String getInfo() 
controlP5.Controller : String getName() 
controlP5.Controller : String getStringValue() 
controlP5.Controller : String toString() 
controlP5.Controller : Tab getTab() 
controlP5.Controller : boolean isActive() 
controlP5.Controller : boolean isBroadcast() 
controlP5.Controller : boolean isInside() 
controlP5.Controller : boolean isLabelVisible() 
controlP5.Controller : boolean isListening() 
controlP5.Controller : boolean isLock() 
controlP5.Controller : boolean isMouseOver() 
controlP5.Controller : boolean isMousePressed() 
controlP5.Controller : boolean isMoveable() 
controlP5.Controller : boolean isUpdate() 
controlP5.Controller : boolean isVisible() 
controlP5.Controller : float getArrayValue(int) 
controlP5.Controller : float getDefaultValue() 
controlP5.Controller : float getMax() 
controlP5.Controller : float getMin() 
controlP5.Controller : float getValue() 
controlP5.Controller : float[] getArrayValue() 
controlP5.Controller : int getDecimalPrecision() 
controlP5.Controller : int getHeight() 
controlP5.Controller : int getId() 
controlP5.Controller : int getWidth() 
controlP5.Controller : int listenerSize() 
controlP5.Controller : void remove() 
controlP5.Controller : void setView(ControllerView, int) 
java.lang.Object : String toString() 
java.lang.Object : boolean equals(Object) 


*/




Field Summary
 boolean isCrosshairs
           
 
Fields inherited from class controlP5.Controller
autoHeight, autoSpacing, autoWidth
 
Fields inherited from interface controlP5.ControlP5Constants
acceptClassList, ACTION_BROADCAST, ACTION_ENTER, ACTION_LEAVE, ACTION_PRESSED, ACTION_RELEASED, ACTION_RELEASEDOUTSIDE, ACTIVE, ALL, ALT, ARC, ARRAY, BACKSPACE, BASELINE, BITFONT, BOOLEAN, BOTTOM, BOTTOM_OUTSIDE, CAPTIONLABEL, CENTER, COMMANDKEY, CONTROL, controlEventClass, CUSTOM, DECREASE, DEFAULT, DELETE, DONE, DOWN, ELLIPSE, ENTER, ESCAPE, EVENT, eventMethod, FADEIN, FADEOUT, FIELD, FLOAT, HALF_PI, HIDE, HIGHLIGHT, HORIZONTAL, IDLE, IMAGE, INACTIVE, INCREASE, INTEGER, INVALID, KEYCONTROL, LEFT, LEFT_OUTSIDE, LINE, LOAD, MENU, METHOD, MOVE, MULTIPLES, OVER, PI, PRESSED, PRINT, RELEASE, RESET, RIGHT, RIGHT_OUTSIDE, SAVE, SHIFT, SINGLE, SINGLE_COLUMN, SINGLE_ROW, SPRITE, STRING, SWITCH, SWITCH_BACK, SWITCH_FORE, TAB, TOP, TOP_OUTSIDE, TRANSITION_WAIT_FADEIN, TWO_PI, UP, VALUELABEL, VERBOSE, VERTICAL, WAIT
 
Method Summary
 float[] getArrayValue()
          returns the current float array value of a controller.
 float getCursorHeight()
           
 float getCursorWidth()
           
 float getCursorX()
           
 float getCursorY()
           
 float getMaxX()
           
 float getMaxY()
           
 float getMinX()
           
 float getMinY()
           
 Slider2D setArrayValue(float[] theArray)
           
 Slider2D setMaxX(float theMaxX)
          sets the maximum value for the x-axis
 Slider2D setMaxY(float theMaxY)
          sets the maximum value for the y-axis
 Slider2D setMinX(float theMinX)
          sets the minimum value for the x-axis
 Slider2D setMinY(float theMinY)
          sets the minimum value for the y-axis
 Slider2D setValue(float theValue)
           
 void setValueLabelSeparator(java.lang.String theSeparator)
           
 Slider2D shuffle()
          assigns a random value to the controller.
 Slider2D updateDisplayMode(int theMode)
          
 Slider2D updateInternalEvents(processing.core.PApplet theApplet)
          a method for putting input events like e.g.
 
Methods inherited from class controlP5.Controller
add, addCallback, addListener, align, bringToFront, bringToFront, changeValue, getAbsolutePosition, getAddress, getArrayValue, getBehavior, getCaptionLabel, getColor, getControllerPlugList, getControlWindow, getDecimalPrecision, getDefaultValue, getHeight, getId, getLabel, getMax, getMin, getName, getParent, getPickingColor, getPosition, getProperty, getProperty, getStringValue, getTab, getValue, getValueLabel, getWidth, getWindow, hide, init, isActive, isBroadcast, isInside, isLabelVisible, isListening, isLock, isMouseOver, isMousePressed, isMoveable, isUpdate, isVisible, keyEvent, linebreak, listen, listenerSize, lock, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, plugTo, plugTo, plugTo, plugTo, registerProperty, registerProperty, registerTooltip, remove, remove, removeBehavior, removeCallback, removeCallback, removeListener, removeProperty, removeProperty, setAbsolutePosition, setAddress, setArrayValue, setBehavior, setBroadcast, setCaptionLabel, setColor, setColorActive, setColorBackground, setColorCaptionLabel, setColorForeground, setColorValueLabel, setDecimalPrecision, setDefaultValue, setGroup, setGroup, setHeight, setId, setImage, setImage, setImages, setImages, setImages, setLabelVisible, setLock, setMax, setMin, setMouseOver, setMousePressed, setMoveable, setParent, setPosition, setPosition, setSize, setSize, setStringValue, setTab, setTab, setUpdate, setValueLabel, setView, setView, setVisible, setWidth, show, unlock, unplugFrom, unplugFrom, unregisterTooltip, update, updateAbsolutePosition, updateEvents, updateSize
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface controlP5.ControllerInterface
continuousUpdateEvents, draw, parent, setColorLabel, setColorValue, setLabel
 
Methods inherited from interface controlP5.CDrawable
draw
 

Field Detail

isCrosshairs

public boolean isCrosshairs
Method Detail

getArrayValue

public float[] getArrayValue()
Description copied from class: Controller
returns the current float array value of a controller.

Specified by:
getArrayValue in interface ControllerInterface
Overrides:
getArrayValue in class Controller
Returns:
float[]
See Also:
Controller.getValue(), Controller.getStringValue()

getCursorHeight

public float getCursorHeight()

getCursorWidth

public float getCursorWidth()

getCursorX

public float getCursorX()

getCursorY

public float getCursorY()

getMaxX

public float getMaxX()

getMaxY

public float getMaxY()

getMinX

public float getMinX()

getMinY

public float getMinY()

setArrayValue

public Slider2D setArrayValue(float[] theArray)
Overrides:
setArrayValue in class Controller
Returns:
Controller

setMaxX

public Slider2D setMaxX(float theMaxX)
sets the maximum value for the x-axis

Parameters:
theMaxX -
Returns:
Slider2D

setMaxY

public Slider2D setMaxY(float theMaxY)
sets the maximum value for the y-axis

Parameters:
theMaxY -
Returns:
Slider2D

setMinX

public Slider2D setMinX(float theMinX)
sets the minimum value for the x-axis

Parameters:
theMinX -
Returns:
Slider2D

setMinY

public Slider2D setMinY(float theMinY)
sets the minimum value for the y-axis

Parameters:
theMinY -
Returns:
Slider2D

setValue

public Slider2D setValue(float theValue)
Specified by:
setValue in interface ControllerInterface
Specified by:
setValue in class Controller
Parameters:
theValue - float

setValueLabelSeparator

public void setValueLabelSeparator(java.lang.String theSeparator)

shuffle

public Slider2D shuffle()
assigns a random value to the controller.


updateDisplayMode

public Slider2D updateDisplayMode(int theMode)


updateInternalEvents

public Slider2D updateInternalEvents(processing.core.PApplet theApplet)
Description copied from interface: ControllerInterface
a method for putting input events like e.g. mouse or keyboard events and queries. this has been taken out of the draw method for better overwriting capability.

Specified by:
updateInternalEvents in interface ControllerInterface
Overrides:
updateInternalEvents in class Controller
See Also:
ControllerInterface.updateInternalEvents


processing library controlP5 by Andreas Schlegel. (c) 2012