JOGL: com.jogamp.graph.ui.shapes.CrossHair Class Reference

JOGL v2.6.0-rc-20250722 JOGL, High-Performance Graphics Binding for Java™ (public API).

Public Member Functions | Protected Member Functions | List of all members
com.jogamp.graph.ui.shapes.CrossHair Class Reference

A GraphUI Crosshair `GraphShape`. More...

Inheritance diagram for com.jogamp.graph.ui.shapes.CrossHair:
Collaboration diagram for com.jogamp.graph.ui.shapes.CrossHair:

## Public Member Functions

| CrossHair (final int renderModes, final float width, final float height, final float linewidth)
final float | getWidth ()
final float | getHeight ()
final float | getLineWidth ()
void | setDimension (final float width, final float height, final float lineWidth)
String | getSubString ()
Public Member Functions inherited from com.jogamp.graph.ui.GraphShape
final int | getRenderModesReq ()
| Returns requested Graph `Region` render modes, see `create(..)`. More...
final int | getRenderModes ()
| Returns validated Graph `Region` render modes, see `create(..)`. More...
void | setTextureUnit (final int pass2TexUnit)
| Set the 2nd pass texture unit. More...
final GraphShape | setSharpness (final float sharpness)
| Sets the shape's Graph `OutlineShape`'s sharpness parameter. More...
final float | getSharpness ()
| Return the shape's Graph `OutlineShape`'s sharpness value. More...
boolean | hasColorChannel ()
| Returns true if implementation uses an extra color channel or texture which will be modulated with the passed rgba color `drawImpl0(GL2ES2, RegionRenderer, float[])`. More...
GLRegion | getRegion ()
String | getSubString ()
Public Member Functions inherited from com.jogamp.graph.ui.Shape
Group | getParent ()
| Returns the last parent container `Group` this shape has been added to or `null`. More...
final Shape | setID (final int id)
| Set a symbolic ID for this shape for identification. More...
final int | getID ()
| Return the optional symbolic ID for this shape. More...
Shape | setName (final String name)
| Set a symbolic name for this shape for identification. More...
final String | getName ()
| Return the optional symbolic name for this shape, defaults to `noname`. More...
boolean | isGroup ()
| Returns true if this shape denotes a `Group`, otherwise false. More...
final boolean | isVisible ()
| Returns true if this shape is set `visible` by the user, otherwise false. More...
final Shape | setVisible (final boolean v)
| Enable (default) or disable this shape's visibility. More...
final Shape | setPaddding (final Padding padding)
| Sets the unscaled padding for this shape, which is included in unscaled `getBounds()` and also includes the border. More...
Padding | getPadding ()
| Returns unscaled `Padding` of this shape, which is included in unscaled `getBounds()` and also includes the border. More...
boolean | hasPadding ()
| Returns true if `setPaddding(Padding)` added a non `Padding#zeroSize()` spacing to this shape. More...
final Shape | setBorder (final float thickness)
| Sets the thickness of the border, which is included in `getBounds()` and is outside of `getPadding()`. More...
final boolean | hasBorder ()
| Returns true if a border has been enabled via `setBorder(float, Padding)`. More...
final float | getBorderThickness ()
| Returns the border thickness, see `setBorder(float, Padding)`. More...
final void | runSynced (final Runnable action)
| Perform given `Runnable` action synchronized. More...
final void | clear (final GL2ES2 gl, final RegionRenderer renderer)
| Clears all data and reset all states as if this instance was newly created. More...
final void | destroy (final GL2ES2 gl, final RegionRenderer renderer)
| Destroys all data. More...
final void | onDraw (final DrawListener l)
| Set a user one-shot initializer callback or custom `draw(GL2ES2, RegionRenderer)` hook. More...
final void | onHover (final PointerListener l)
| Set user callback to be notified when a pointer/mouse is moving over this shape. More...
final void | onMove (final MoveListener l)
| Set user callback to be notified when shape is `move(Vec3f)`'ed. More...
final void | onToggle (final Listener l)
| Set user callback to be notified when shape `toggle()`'ed. More...
final void | onClicked (final PointerListener l)
| Set user callback to be notified when shape is clicked. More...
final Shape | addActivationListener (final Listener l)
| Add user callback to be notified when shape is activated (pointer-over and/or click) or de-activated (pointer left). More...
final Shape | removeActivationListener (final Listener l)
final Shape | moveTo (final float tx, final float ty, final float tz)
| Move to scaled position. More...
final Shape | moveTo (final Vec3f t)
| Move to scaled position. More...
final Shape | move (final float dtx, final float dty, final float dtz)
| Move about scaled distance. More...
final Shape | move (final Vec3f dt)
| Move about scaled distance. More...
final Vec3f | getPosition ()
| Returns position `Vec3f` reference, i.e. More...
final Quaternion | getRotation ()
| Returns `Quaternion` for rotation. More...
final Shape | setRotation (final Quaternion q)
| Sets the rotation `Quaternion`. More...
final Vec3f | getRotationPivot ()
| Return unscaled rotation origin `Vec3f` reference, aka pivot. More...
final Shape | setRotationPivot (final float px, final float py, final float pz)
| Set unscaled rotation origin, aka pivot. More...
final Shape | setRotationPivot (final Vec3f pivot)
| Set unscaled rotation origin, aka pivot. More...
final Shape | setScale (final Vec3f s)
| Set scale factor to given scale. More...
final Shape | setScale (final float sx, final float sy, final float sz)
| Set scale factor to given scale. More...
final Shape | scale (final Vec3f s)
| Multiply current scale factor by given scale. More...
final Shape | scale (final float sx, final float sy, final float sz)
| Multiply current scale factor by given scale. More...
final Vec3f | getScale ()
| Returns scale `Vec3f` reference. More...
final void | markShapeDirty ()
| Marks the shape dirty, causing next `draw()` to recreate the Graph shape and reset the region. More...
final void | markStateDirty ()
| Marks the rendering state dirty, causing next `draw()` to notify the Graph region to reselect shader and repaint potentially used FBOs. More...
final AABBox | getBounds ()
| Returns the unscaled bounding `AABBox` for this shape, borrowing internal instance. More...
final float | getScaledWidth ()
| Returns the scaled width of the bounding `AABBox` for this shape. More...
final float | getScaledHeight ()
| Returns the scaled height of the bounding `AABBox` for this shape. More...
final float | getScaledDepth ()
final AABBox | getBounds (final GLProfile glp)
| Returns the unscaled bounding `AABBox` for this shape. More...
void | drawToSelect (final GL2ES2 gl, final RegionRenderer renderer)
| Experimental selection draw command used by `Scene`. More...
void | draw (final GL2ES2 gl, final RegionRenderer renderer)
| Renders the shape. More...
final Shape | validate (final GL2ES2 gl)
| Validates the shape's underlying `GLRegion`. More...
final Shape | validate (final GLProfile glp)
| Validates the shape's underlying `GLRegion` w/o a current `GL2ES2` object. More...
final Shape | validate (final GL2ES2 gl, final GLProfile glp)
| Validate the shape via `validate(GL2ES2)` if `gl` is not null, otherwise uses `validate(GLProfile)`. More...
final void | applyMatToMv (final PMVMatrix4f pmv)
| Applies the internal `Matrix4f` to the given `modelview matrix`, i.e. More...
final Matrix4f | getMat ()
| Returns the internal `Matrix4f` reference. More...
final Matrix4f | getMat (final Matrix4f out)
| Returns a copy of the internal `Matrix4f` to `out`. More...
final boolean | isMatIdentity ()
| Returns true if `getMat()` has not been mutated, i.e. More...
final void | updateMat ()
| Updates the internal `Matrix4f` with local position, rotation and scale. More...
final PMVMatrix4f | setPMVMatrix (final Scene.PMVMatrixSetup pmvMatrixSetup, final Recti viewport, final PMVMatrix4f pmv)
| `Setup` the given `PMVMatrix4f` and apply this shape's `transformation`. More...
final PMVMatrix4f | setPMVMatrix (final Scene scene, final PMVMatrix4f pmv)
| `Setup` the given `PMVMatrix4f` and apply this shape's `transformation`. More...
final Recti | getSurfacePort (final PMVMatrix4f pmv, final Recti viewport, final Recti surfacePort)
| Retrieve surface (view) port of this shape, i.e. More...
final int[] | getSurfaceSize (final PMVMatrix4f pmv, final Recti viewport, final int[] surfaceSize)
| Retrieve surface (view) size in pixels of this shape. More...
final int[] | getSurfaceSize (final Scene.PMVMatrixSetup pmvMatrixSetup, final Recti viewport, final PMVMatrix4f pmv, final int[] surfaceSize)
| Retrieve surface (view) size in pixels of this shape. More...
final int[] | getSurfaceSize (final Scene scene, final PMVMatrix4f pmv, final int[] surfaceSize)
| Retrieve surface (view) size in pixels of this shape. More...
final float[] | getPixelPerShapeUnit (final int[] shapeSizePx, final float[] pixPerShape)
| Retrieve pixel per scaled shape-coordinate unit, i.e. More...
final float[] | getPixelPerShapeUnit (final PMVMatrix4f pmv, final Recti viewport, final float[] pixPerShape)
| Retrieve pixel per scaled shape-coordinate unit, i.e. More...
final float[] | getPixelPerShapeUnit (final Scene scene, final PMVMatrix4f pmv, final float[] pixPerShape)
| Retrieve pixel per scaled shape-coordinate unit, i.e. More...
final int[] | shapeToWinCoord (final PMVMatrix4f pmv, final Recti viewport, final Vec3f objPos, final int[] glWinPos)
| Map given object coordinate relative to this shape to window coordinates. More...
final int[] | shapeToWinCoord (final Scene.PMVMatrixSetup pmvMatrixSetup, final Recti viewport, final Vec3f objPos, final PMVMatrix4f pmv, final int[] glWinPos)
| Map given object coordinate relative to this shape to window coordinates. More...
final int[] | shapeToWinCoord (final Scene scene, final Vec3f objPos, final PMVMatrix4f pmv, final int[] glWinPos)
| Map given object coordinate relative to this shape to window coordinates. More...
final Vec3f | winToShapeCoord (final PMVMatrix4f pmv, final Recti viewport, final int glWinX, final int glWinY, final Vec3f objPos)
| Map given gl-window-coordinates to object coordinates relative to this shape and its z-coordinate. More...
final Vec3f | winToShapeCoord (final Scene.PMVMatrixSetup pmvMatrixSetup, final Recti viewport, final int glWinX, final int glWinY, final PMVMatrix4f pmv, final Vec3f objPos)
| Map given gl-window-coordinates to object coordinates relative to this shape and its z-coordinate. More...
final Vec3f | winToShapeCoord (final Scene scene, final int glWinX, final int glWinY, final PMVMatrix4f pmv, final Vec3f objPos)
| Map given gl-window-coordinates to object coordinates relative to this shape and its z-coordinate. More...
final Vec4f | getColor ()
| Returns base-color w/o color channel, will be modulated w/ `getPressedColorMod()`, `getToggleOnColorMod()`, `getToggleOffColorMod()` and `getActiveColorMod()`. More...
final Vec4f | getPressedColorMod ()
| Returns modulation color when `isPressed()`. More...
final Vec4f | getToggleOnColorMod ()
| Returns modulation color when `isToggleOn()`. More...
final Vec4f | getToggleOffColorMod ()
| Returns modulation color when not `isToggleOn()`. More...
final Vec4f | getActiveColorMod ()
| Returns modulation color when `isActive()`. More...
Shape | setColor (final float r, final float g, final float b, final float a)
| Set base color. More...
Shape | setColor (final Vec4f c)
| Set base color. More...
Shape | setPressedColorMod (final float r, final float g, final float b, final float a)
| Set pressed color, modulating `getColor()` if `isPressed()`. More...
final Shape | setToggleOnColorMod (final float r, final float g, final float b, final float a)
| Set toggle-on color, modulating `getColor()` if `isToggleOn()` and `setToggleable(boolean)`. More...
final Shape | setToggleOffColorMod (final float r, final float g, final float b, final float a)
| Set toggle-off color, modulating `getColor()` if !`isToggleOn()` and `setToggleable(boolean)`. More...
final Shape | setActiveColorMod (final Vec4f c)
| Enable active color, modulation `getColor()` if `isActive()` with passing `c != null`, disable with passing `c == null`. More...
final Vec4f | getBorderColor ()
final Shape | setBorderColor (final float r, final float g, final float b, final float a)
| Set border color. More...
final Shape | setBorderColor (final Vec4f c)
| Set border color. More...
final String | toString ()
String | getSubString ()
final Shape | setPressed (final boolean b)
final boolean | isPressed ()
final Shape | setToggleable (final boolean toggleable)
| Set this shape toggleable, default is off. More...
boolean | isToggleable ()
| Returns true if this shape is toggable, i.e. More...
final Shape | setToggle (final boolean v)
| Set this shape's toggle state, default is off. More...
final Shape | toggle ()
final boolean | isToggleOn ()
| Returns true this shape's toggle state. More...
final boolean | isActive ()
| Returns true of this shape is active. More...
final float | getAdjustedZ ()
Tooltip | setToolTip (final Tooltip newTooltip)
| Set's a new `Tooltip` for this shape. More...
void | removeToolTip ()
Tooltip | getTooltip ()
final Shape | setInteractive (final boolean v)
| Set whether this shape is interactive in general, i.e. More...
final boolean | isInteractive ()
| Returns if this shape allows user interaction in general, see `setInteractive(boolean)`. More...
final Shape | setActivable (final boolean v)
| Set whether this shape is allowed to be activated, i.e become `isActive()`. More...
final boolean | isActivable ()
| Returns if this shape is allowed to be activated, i.e become `isActive()`. More...
final Shape | setDiscarded (final boolean v)
| Set whether this shape is discarded in last `draw(GL2ES2, RegionRenderer)`, i.e. More...
final boolean | isDiscarded ()
| Returns whether this shape is discarded in last `draw(GL2ES2, RegionRenderer)`, i.e. More...
final Shape | setDraggable (final boolean draggable)
| Set whether this shape is draggable, i.e. More...
final boolean | isDraggable ()
| Returns if this shape is draggable, a user interaction. More...
final Shape | setResizable (final boolean resizable)
| Set whether this shape is resizable, i.e. More...
final boolean | isResizable ()
| Returns if this shape is resizable, a user interaction. More...
final boolean | isFixedARatioResize ()
| Returns if aspect-ratio shall be kept at resize, if `isResizable()`. More...
final Shape | setFixedARatioResize (final boolean v)
| Sets whether aspect-ratio shall be kept at resize, if `isResizable()`. More...
final Shape | setDragAndResizable (final boolean v)
| Set whether this shape is draggable and resizable. More...
final Shape | addMouseListener (final MouseGestureListener l)
final Shape | removeMouseListener (final MouseGestureListener l)
void | receiveMouseEvents (final Shape source)
| Forward `MouseGestureListener` events to this `Shape` from `source` using a `ForwardMouseListener`. More...
final Shape | addKeyListener (final KeyListener l)
final Shape | removeKeyListener (final KeyListener l)
void | receiveKeyEvents (final Shape source)
| Forward `KeyListener` events to this `Shape` from `source` using a `ForwardKeyListener`. More...
abstract boolean | hasColorChannel ()
| Returns true if implementation uses an extra color channel or texture which will be modulated with the passed rgba color `drawImpl0(GL2ES2, RegionRenderer, float[])`. More...

## Protected Member Functions

void | addShapeToRegion (final GLProfile glp, final GL2ES2 gl)
Protected Member Functions inherited from com.jogamp.graph.ui.GraphShape
| GraphShape (final int renderModes)
| Create a generic Graph based `GLRegion` UI `Shape`. More...
final void | clearImpl0 (final GL2ES2 gl, final RegionRenderer renderer)
| Custom `clear(GL2ES2, RegionRenderer)` task, called 1st. More...
final void | destroyImpl0 (final GL2ES2 gl, final RegionRenderer renderer)
| Custom `destroy(GL2ES2, RegionRenderer)` task, called 1st. More...
void | drawImpl0 (final GL2ES2 gl, final RegionRenderer renderer, final Vec4f rgba)
| Actual draw implementation, called by `draw(GL2ES2, RegionRenderer)`. More...
final void | drawToSelectImpl0 (final GL2ES2 gl, final RegionRenderer renderer)
| Actual draw implementation, called by `drawToSelect(GL2ES2, RegionRenderer)`. More...
final void | resetGLRegion (final GLProfile glp, final GL2ES2 gl, final TextureSequence colorTexSeq, int vertexCount, int indexCount)
| Reset the `GLRegion` and reserving its buffers to have a free capacity for `vertexCount` and `indexCount` elements. More...
final void | resetGLRegion (final GLProfile glp, final GL2ES2 gl, final TextureSequence colorTexSeq, final OutlineShape shape)
| Convenient `resetGLRegion(GLProfile, GL2ES2, TextureSequence, int, int)` variant determining initial `GLRegion` buffer sizes via `Region#countOutlineShape(OutlineShape, int[])`. More...
final void | validateImpl (final GL2ES2 gl, final GLProfile glp)
void | clearImpl (final GL2ES2 gl, final RegionRenderer renderer)
void | destroyImpl (final GL2ES2 gl, final RegionRenderer renderer)
abstract void | addShapeToRegion (GLProfile glp, GL2ES2 gl)
Protected Member Functions inherited from com.jogamp.graph.ui.Shape
| Shape ()
| Create a generic UI `Shape`. More...
void | setParent (final Group c)
final void | dispatchActivationEvent (final Shape s)
| Dispatch activation event event to this shape. More...
boolean | isShapeDirty ()
| Returns the shape's dirty state, see `markShapeDirty()`. More...
final boolean | isStateDirty ()
| Returns the rendering dirty state, see `markStateDirty()`. More...
final String | getDirtyString ()
void | toggleNotify (final boolean on)
final boolean | setActive (final boolean v, final float zOffset)
abstract void | validateImpl (final GL2ES2 gl, final GLProfile glp)
abstract void | drawImpl0 (final GL2ES2 gl, final RegionRenderer renderer, final Vec4f rgba)
| Actual draw implementation, called by `draw(GL2ES2, RegionRenderer)`. More...
abstract void | drawToSelectImpl0 (final GL2ES2 gl, final RegionRenderer renderer)
| Actual draw implementation, called by `drawToSelect(GL2ES2, RegionRenderer)`. More...
abstract void | clearImpl0 (final GL2ES2 gl, final RegionRenderer renderer)
| Custom `clear(GL2ES2, RegionRenderer)` task, called 1st. More...
abstract void | destroyImpl0 (final GL2ES2 gl, final RegionRenderer renderer)
| Custom `destroy(GL2ES2, RegionRenderer)` task, called 1st. More...

## Additional Inherited Members

Static Public Attributes inherited from com.jogamp.graph.ui.Shape
static Comparator< Shape > | ZAscendingComparator
static Comparator< Shape > | ZDescendingComparator
Static Protected Member Functions inherited from com.jogamp.graph.ui.GraphShape
static void | addRectangle (final Region region, final float sharpness, final AABBox box, final Padding padding, final float borderThickness, final Vec4f color)
Protected Attributes inherited from com.jogamp.graph.ui.GraphShape
final int | renderModesReq
int | renderModes
int | pass2TexUnit = GLRegion.DEFAULT_TWO_PASS_TEXTURE_UNIT
GLRegion | region = null
float | oshapeSharpness = OutlineShape.DEFAULT_SHARPNESS
Protected Attributes inherited from com.jogamp.graph.ui.Shape
final AABBox | box = new AABBox()
final Vec4f | rgbaColor = new Vec4f(0.60f, 0.60f, 0.60f, 1.0f)
| Default base-color w/o color channel, will be modulated w/ pressed- and toggle color. More...
final Vec4f | pressedRGBAModulate = new Vec4f(0.70f, 0.70f, 0.70f, 0.8f)
| Default pressed color-factor (darker and slightly transparent), modulates base-color. More...
final Vec4f | toggleOnRGBAModulate = new Vec4f(0.83f, 0.83f, 0.83f, 1.0f)
| Default toggle color-factor (darker), modulates base-color. More...
final Vec4f | toggleOffRGBAModulate = new Vec4f(1.00f, 1.00f, 1.00f, 1.0f)
| Default toggle color-factor (original), modulates base-color. More...
final Vec4f | activeRGBAModulate = new Vec4f(0.25f, 0.25f, 0.25f, 1.0f)
| Default active color-factor (dark), modulates base-color. More...
boolean | activeRGBAModulateOn = false
Static Protected Attributes inherited from com.jogamp.graph.ui.Shape
static final boolean | DEBUG_DRAW = false

## Detailed Description

A GraphUI Crosshair `GraphShape`.

GraphUI is GPU based and resolution independent.

Definition at line 41 of file CrossHair.java.

## Constructor & Destructor Documentation

## ◆ CrossHair()

com.jogamp.graph.ui.shapes.CrossHair.CrossHair | ( | final int | renderModes,
|  | final float | width,
|  | final float | height,
|  | final float | linewidth
| ) |  |

Definition at line 44 of file CrossHair.java.

## Member Function Documentation

## ◆ addShapeToRegion()

void com.jogamp.graph.ui.shapes.CrossHair.addShapeToRegion | ( | final GLProfile | glp,
|  | final GL2ES2 | gl
| ) |  |

protected

Reimplemented from com.jogamp.graph.ui.GraphShape.

Definition at line 63 of file CrossHair.java.

Here is the call graph for this function:

## ◆ getHeight()

final float com.jogamp.graph.ui.shapes.CrossHair.getHeight | ( |  | ) |

Definition at line 52 of file CrossHair.java.

Here is the caller graph for this function:

## ◆ getLineWidth()

final float com.jogamp.graph.ui.shapes.CrossHair.getLineWidth | ( |  | ) |

Definition at line 53 of file CrossHair.java.

## ◆ getSubString()

String com.jogamp.graph.ui.shapes.CrossHair.getSubString | ( |  | ) |

Reimplemented from com.jogamp.graph.ui.GraphShape.

Definition at line 100 of file CrossHair.java.

Here is the call graph for this function:

## ◆ getWidth()

final float com.jogamp.graph.ui.shapes.CrossHair.getWidth | ( |  | ) |

Definition at line 51 of file CrossHair.java.

Here is the caller graph for this function:

## ◆ setDimension()

void com.jogamp.graph.ui.shapes.CrossHair.setDimension | ( | final float | width,
|  | final float | height,
|  | final float | lineWidth
| ) |  |

Definition at line 55 of file CrossHair.java.

Here is the call graph for this function:

The documentation for this class was generated from the following file:

- src/graphui/classes/com/jogamp/graph/ui/shapes/CrossHair.java