|
void | draw () |
|
float | getSensitivity () |
|
int | getTurnMode () |
|
| GKnob (PApplet theApplet, float p0, float p1, float p2, float p3, float gripAmount) |
|
boolean | isIncludeOverBezel () |
|
boolean | isOverArcOnly () |
|
boolean | isShowArcOnly () |
|
boolean | isShowTrack () |
|
void | mouseEvent (MouseEvent event) |
|
void | setArcPolicy (boolean over_arc_only, boolean draw_arc_only, boolean overfullsize) |
|
void | setGripAmount (float gripAmount) |
|
void | setIncludeOverBezel (boolean overBezel) |
|
void | setOverArcOnly (boolean arcOnly) |
|
void | setSensitivity (float sensitivity) |
|
void | setShowArcOnly (boolean arcOnly) |
|
void | setShowTrack (boolean showTrack) |
|
void | setTurnMode (int mode) |
|
void | setTurnRange (float start, float end) |
|
void | setValue (float v) |
|
float | getEasing () |
|
float | getEndLimit () |
|
int | getNbrTicks () |
|
int | getPrecision () |
|
float | getStartLimit () |
|
String | getUnit () |
|
float | getValueF () |
|
int | getValueI () |
|
String | getValueS () |
|
int | getValueType () |
|
| GValueControl (PApplet theApplet, float p0, float p1, float p2, float p3) |
|
boolean | isShowLimits () |
|
boolean | isShowTicks () |
|
boolean | isShowValue () |
|
boolean | isStickToTicks () |
|
void | pre () |
|
void | setEasing (float easeBy) |
|
void | setLimits (float initValue, float start, float end) |
|
void | setLimits (float start, float end) |
|
void | setLimits (int initValue, int start, int end) |
|
void | setLimits (int start, int end) |
|
void | setNbrTicks (int noOfTicks) |
|
void | setNumberFormat (int numberFormat) |
|
void | setNumberFormat (int numberFormat, int precision) |
|
void | setNumberFormat (int numberFormat, int precision, String unit) |
|
void | setPrecision (int nd) |
|
void | setShowDecor (boolean opaque, boolean ticks, boolean value, boolean limits) |
|
void | setShowLimits (boolean showLimits) |
|
void | setShowTicks (boolean showTicks) |
|
void | setShowValue (boolean showValue) |
|
void | setStickToTicks (boolean stickToTicks) |
|
void | setUnits (String units) |
|
void | setValue (float v) |
|
void | addControl (GAbstractControl c) |
|
void | addControl (GAbstractControl c, float x, float y) |
|
void | addControl (GAbstractControl c, float x, float y, float angle) |
|
void | addControls (GAbstractControl... controls) |
|
void | addEventHandler (Object obj, String methodName) |
|
void | dispose () |
|
void | draw () |
|
void | forceBufferUpdate () |
|
| GAbstractControl (PApplet theApplet) |
|
| GAbstractControl (PApplet theApplet, float p0, float p1) |
|
| GAbstractControl (PApplet theApplet, float p0, float p1, float p2, float p3) |
|
int | getAlpha () |
|
int | getCursorOver () |
|
float | getCX () |
|
float | getCY () |
|
float | getHeight () |
|
int | getLocalColorScheme () |
|
PApplet | getPApplet () |
|
GAbstractControl | getParent () |
|
PGraphics | getSnapshot () |
|
GToolTip | getTip () |
|
float | getWidth () |
|
float | getX () |
|
float | getY () |
|
boolean | hasFocus () |
|
boolean | isDragging () |
|
boolean | isEnabled () |
|
boolean | isOpaque () |
|
boolean | isVisible () |
|
void | keyEvent (KeyEvent e) |
|
void | mouseEvent (MouseEvent event) |
|
void | moveTo (float px, float py) |
|
void | moveTo (float px, float py, GControlMode mode) |
|
void | post () |
|
void | pre () |
|
void | removeTip () |
|
boolean | saveSnapshot () |
|
boolean | saveSnapshot (String filename) |
|
void | setAlpha (int alpha) |
|
void | setAlpha (int alpha, boolean includeChildren) |
|
void | setCursorOver (int cursorOver) |
|
void | setEnabled (boolean enable) |
|
void | setFocus (boolean focus) |
|
void | setLocalColor (int colorNo, int color) |
|
void | setLocalColorScheme (int cs) |
|
void | setLocalColorScheme (int cs, boolean includeChildren) |
|
void | setOpaque (boolean opaque) |
|
void | setRotation (float angle) |
|
void | setRotation (float angle, GControlMode mode) |
|
void | setTip (GToolTip tt, float dx, float dy) |
|
void | setTip (GToolTip tt, GAlign ax, GAlign ay, float gap) |
|
void | setTip (String text, float dx, float dy) |
|
void | setTip (String text, GAlign ax, GAlign ay, float gap) |
|
void | setTipDisplayTime (long msecs) |
|
void | setTipHorz (boolean level) |
|
void | setTipText (String text) |
|
void | setVisible (boolean visible) |
|
String | toString () |
|
|
float | calcAngletoValue (float a) |
|
float | calcRealAngleFromXY (float px, float py) |
|
void | calculateHotSpot () |
|
float | constrain360 (float a) |
|
float | constrainToTurnRange (float a) |
|
float | getAngleFromUser (float px, float py) |
|
boolean | isInTurnRange (float a) |
|
float | scaleValueToAngle (float v) |
|
void | updateBuffer () |
|
float | calcParametricTarget (float pt) |
|
float | findNearestTickValueTo (float p) |
|
String | getNumericDisplayString (float number) |
|
void | setEpsilon () |
|
void | updateDueToValueChanging () |
|
void | addControlImpl (GAbstractControl c, float x, float y, float angle) |
|
void | addToParent (GAbstractControl p) |
|
void | calcTransformedOrigin (float px, float py) |
|
void | createEventHandler (Object handlerObj, String methodName, Class[] param_classes, String[] param_names) |
|
void | drawChildren () |
|
void | fireEvent (Object... objects) |
|
int | focusObjectZ () |
|
PGraphics | getBuffer () |
|
int | getCurrHotSpot () |
|
AffineTransform | getTransform (AffineTransform aff) |
|
void | hideTip () |
|
boolean | isAvailable () |
|
boolean | isDisplayable (int ascii) |
|
boolean | isSuitableForGroupControl (GAbstractControl control) |
|
void | loseFocus (GAbstractControl grabber) |
|
void | makeBuffer () |
|
void | manageToolTip () |
|
void | resize (int w, int h) |
|
void | setAvailable (boolean avail) |
|
void | setTextRenderingHints (Graphics2D g2d, int hint) |
|
void | setZ (int parentZ) |
|
void | showTip () |
|
void | takeFocus () |
|
void | updateBuffer () |
|
int | whichHotSpot (float px, float py) |
|
|
String | tag = "" |
|
int | tagNo |
|
int | ALPHA_BLOCK = 128 |
|
int | ALPHA_PICK = 48 |
|
TextAttribute | BACKGROUND = TextAttribute.BACKGROUND |
|
int | BLUE_SCHEME = 6 |
|
int | BOLD = Font.BOLD |
|
int | CANCEL = JOptionPane.CANCEL_OPTION |
|
int | CLOSE_WINDOW = 0x00000f02 |
|
int | CLOSED = JOptionPane.CLOSED_OPTION |
|
int | CTRL_ANGULAR = 0x00000501 |
|
int | CTRL_HORIZONTAL = 0x00000502 |
|
int | CTRL_VERTICAL = 0x00000503 |
|
int | CYAN_SCHEME = 5 |
|
int | DECIMAL = 1 |
|
char | END = java.awt.event.KeyEvent.VK_END |
|
int | ERROR_MESSAGE = JOptionPane.ERROR_MESSAGE |
|
int | EXIT_APP = 0x00000f01 |
|
int | EXPONENT = 2 |
|
TextAttribute | FAMILY = TextAttribute.FAMILY |
|
TextAttribute | FOREGROUND = TextAttribute.FOREGROUND |
|
int | FORWARD = 1 |
|
int | GOLD_SCHEME = 7 |
|
int | GREEN_SCHEME = 1 |
|
int | HIDE_WINDOW = 0x00000f04 |
|
char | HOME = java.awt.event.KeyEvent.VK_HOME |
|
int | INFO_MESSAGE = JOptionPane.INFORMATION_MESSAGE |
|
int | INTEGER = 0 |
|
int | ITALIC = Font.ITALIC |
|
int | KEEP_OPEN = 0x00000f03 |
|
int | NO = JOptionPane.NO_OPTION |
|
int | OK = JOptionPane.OK_OPTION |
|
int | OK_CANCEL = JOptionPane.OK_CANCEL_OPTION |
|
int | ORANGE_SCHEME = 4 |
|
int | ORIENT_LEFT = -1 |
|
int | ORIENT_RIGHT = 1 |
|
int | ORIENT_TRACK = 0 |
|
int | PLAIN = Font.PLAIN |
|
int | PLAIN_MESSAGE = JOptionPane.PLAIN_MESSAGE |
|
TextAttribute | POSTURE = TextAttribute.POSTURE |
|
Float | POSTURE_OBLIQUE = new Float(0.20f) |
|
Float | POSTURE_REGULAR = new Float(0.0f) |
|
int | PURPLE_SCHEME = 3 |
|
int | QUERY_MESSAGE = JOptionPane.QUESTION_MESSAGE |
|
int | RED_SCHEME = 0 |
|
int | REVERSE = -1 |
|
int | SCHEME_10 = 10 |
|
int | SCHEME_11 = 11 |
|
int | SCHEME_12 = 12 |
|
int | SCHEME_13 = 13 |
|
int | SCHEME_14 = 14 |
|
int | SCHEME_15 = 15 |
|
int | SCHEME_8 = 8 |
|
int | SCHEME_9 = 9 |
|
int | SCROLLBARS_AUTOHIDE = 0x1000 |
|
int | SCROLLBARS_BOTH = 0x0003 |
|
int | SCROLLBARS_HORIZONTAL_ONLY = 0x0002 |
|
int | SCROLLBARS_NONE = 0x0000 |
|
int | SCROLLBARS_VERTICAL_ONLY = 0x0001 |
|
TextAttribute | SIZE = TextAttribute.SIZE |
|
TextAttribute | STRIKETHROUGH = TextAttribute.STRIKETHROUGH |
|
Boolean | STRIKETHROUGH_OFF = new Boolean(false) |
|
Boolean | STRIKETHROUGH_ON = new Boolean(true) |
|
TextAttribute | SUPERSCRIPT = TextAttribute.SUPERSCRIPT |
|
Integer | SUPERSCRIPT_OFF = new Integer(0) |
|
Integer | SUPERSCRIPT_SUB = new Integer(-1) |
|
Integer | SUPERSCRIPT_SUPER = new Integer(1) |
|
int | UNDEFINED = Integer.MAX_VALUE |
|
int | USER_COL_SCHEME = 0x00010102 |
|
int | WARN_MESSAGE = JOptionPane.WARNING_MESSAGE |
|
TextAttribute | WEIGHT = TextAttribute.WEIGHT |
|
Float | WEIGHT_BOLD = new Float(2.0f) |
|
Float | WEIGHT_DEMIBOLD = new Float(1.75f) |
|
Float | WEIGHT_DEMILIGHT = new Float(0.875f) |
|
Float | WEIGHT_EXTRA_LIGHT = new Float(0.5f) |
|
Float | WEIGHT_EXTRABOLD = new Float(2.5f) |
|
Float | WEIGHT_HEAVY = new Float(2.25f) |
|
Float | WEIGHT_LIGHT = new Float(0.75f) |
|
Float | WEIGHT_MEDIUM = new Float(1.5f) |
|
Float | WEIGHT_REGULAR = new Float(1.0f) |
|
Float | WEIGHT_SEMIBOLD = new Float(1.25f) |
|
Float | WEIGHT_ULTRABOLD = new Float(2.75f) |
|
TextAttribute | WIDTH = TextAttribute.WIDTH |
|
Float | WIDTH_CONDENSED = new Float(0.75f) |
|
Float | WIDTH_EXTENDED = new Float(1.5f) |
|
Float | WIDTH_REGULAR = new Float(1.0f) |
|
Float | WIDTH_SEMI_CONDENSED = new Float(0.875f) |
|
Float | WIDTH_SEMI_EXTENDED = new Float(1.25f) |
|
int | X4 = 1 |
|
int | X8 = 2 |
|
int | YELLOW_SCHEME = 2 |
|
int | YES = JOptionPane.YES_OPTION |
|
int | YES_NO = JOptionPane.YES_NO_OPTION |
|
int | YES_NO_CANCEL = JOptionPane.YES_NO_CANCEL_OPTION |
|
static float | epsilon = 0.001f |
|
The provides an extremely configurable GUI knob controller. GKnob inherits from GValueControl so you should read the documentation for that class as it also applies to GKnob.
Configurable options
Knob size but it must be circular
Start and end of rotation arc.
Bezel width with tick marks
User defined value limits (i.e. the range of values returned
Range of values associated with rotating the knob
Rotation is controlled by mouse movement - 3 modes available
(a) angular - drag round knob center
(b) horizontal - drag left or right
(c) vertical - drag up or down
User can specify mouse sensitivity for modes (b) and (c) Use can specify easing to give smoother rotation
Note: Angles are measured clockwise starting in the positive x direction i.e.
270
|
180 --+-- 0
|
90
- Author
- Peter Lager
g4p_controls.GKnob.GKnob |
( |
PApplet |
theApplet, |
|
|
float |
p0, |
|
|
float |
p1, |
|
|
float |
p2, |
|
|
float |
p3, |
|
|
float |
gripAmount |
|
) |
| |
Will create the a circular knob control that fits the rectangle define by the values passed as parameters.
The knob has two zones the outer bezel and the inner gripper. The radius of the outer bezel is calculated from
bezel radius = min(width, height)/2 - 2
The radius of the inner griper radius is calculated from the bezel radius and the last parameter.
grip radius = bezel radiius * gripAmount
The gripAmount should be in te range 0.0 to 1.0 inclusive. The actual value will be constrained to that range.
- Parameters
-
theApplet | the main sketch or GWindow control for this control |
p0 | x position based on control mode |
p1 | y position based on control mode |
p2 | x position or width based on control mode |
p3 | y position or height based on control mode |
gripAmount | must be ≥0.0 and ≤1.0 |