public final class RotateEvent extends GestureEvent
The event is delivered to the top-most node picked on the gesture coordinates in time of the gesture start - the whole gesture is delivered to the same node even if the coordinates change during the gesture.
The event provides two values: angle
is the rotation angle of this
event, totalAngle
is the rotation angle of the whole gesture. Both
values are in degrees and work well when added to the node's rotate
property value (positive values for clockwise rotation).
As all gestures, rotation can be direct (performed directly at the concrete coordinates as on touch screen - the center point among all the touches is usually used as the gesture coordinates) or indirect (performed indirectly as on track pad - the mouse cursor location is usually used as the gesture coordinates).
The gesture's ROTATE
events are surounded by ROTATION_STARTED
and ROTATION_FINISHED
events. If rotation inertia is active on the
given platform, some ROTATE
events with isInertia()
returning
true
can come after ROTATION_FINISHED
.
Modifier and Type | Field and Description |
---|---|
private double |
angle |
static <any> |
ANY
Common supertype for all rotate event types.
|
static <any> |
ROTATE
This event occurs when user performs a rotating gesture such as
dragging two fingers around each other.
|
static <any> |
ROTATION_FINISHED
This event occurs when a rotating gesture ends.
|
static <any> |
ROTATION_STARTED
This event occurs when a rotating gesture is detected.
|
private static long |
serialVersionUID |
private double |
totalAngle |
Constructor and Description |
---|
RotateEvent(<any> eventType,
double x,
double y,
double screenX,
double screenY,
boolean shiftDown,
boolean controlDown,
boolean altDown,
boolean metaDown,
boolean direct,
boolean inertia,
double angle,
double totalAngle,
PickResult pickResult)
Constructs new RotateEvent event with null source and target
|
RotateEvent(java.lang.Object source,
EventTarget target,
<any> eventType,
double x,
double y,
double screenX,
double screenY,
boolean shiftDown,
boolean controlDown,
boolean altDown,
boolean metaDown,
boolean direct,
boolean inertia,
double angle,
double totalAngle,
PickResult pickResult)
Constructs new RotateEvent event.
|
Modifier and Type | Method and Description |
---|---|
RotateEvent |
copyFor(java.lang.Object newSource,
EventTarget newTarget) |
RotateEvent |
copyFor(java.lang.Object newSource,
EventTarget newTarget,
<any> type)
Creates a copy of the given event with the given fields substituted.
|
double |
getAngle()
Gets the rotation angle of this event.
|
<any> |
getEventType() |
double |
getTotalAngle()
Gets the cumulative rotation angle of this gesture.
|
java.lang.String |
toString()
Returns a string representation of this
RotateEvent object. |
getPickResult, getSceneX, getSceneY, getScreenX, getScreenY, getX, getY, getZ, isAltDown, isControlDown, isDirect, isInertia, isMetaDown, isShiftDown, isShortcutDown
private static final long serialVersionUID
public static final <any> ANY
public static final <any> ROTATE
public static final <any> ROTATION_STARTED
public static final <any> ROTATION_FINISHED
private final double angle
private final double totalAngle
public RotateEvent(java.lang.Object source, EventTarget target, <any> eventType, double x, double y, double screenX, double screenY, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown, boolean direct, boolean inertia, double angle, double totalAngle, PickResult pickResult)
source
- the source of the event. Can be null.target
- the target of the event. Can be null.eventType
- The type of the event.x
- The x with respect to the scene.y
- The y with respect to the scene.screenX
- The x coordinate relative to screen.screenY
- The y coordinate relative to screen.shiftDown
- true if shift modifier was pressed.controlDown
- true if control modifier was pressed.altDown
- true if alt modifier was pressed.metaDown
- true if meta modifier was pressed.direct
- true if the event was caused by direct input device. See GestureEvent.isDirect()
inertia
- if represents inertia of an already finished gesture.angle
- the rotational angletotalAngle
- the cumulative rotational anglepickResult
- pick result. Can be null, in this case a 2D pick result
without any further values is constructed
based on the scene coordinates and the targetpublic RotateEvent(<any> eventType, double x, double y, double screenX, double screenY, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown, boolean direct, boolean inertia, double angle, double totalAngle, PickResult pickResult)
eventType
- The type of the event.x
- The x with respect to the scene.y
- The y with respect to the scene.screenX
- The x coordinate relative to screen.screenY
- The y coordinate relative to screen.shiftDown
- true if shift modifier was pressed.controlDown
- true if control modifier was pressed.altDown
- true if alt modifier was pressed.metaDown
- true if meta modifier was pressed.direct
- true if the event was caused by direct input device. See GestureEvent.isDirect()
inertia
- if represents inertia of an already finished gesture.angle
- the rotational angletotalAngle
- the cumulative rotational anglepickResult
- pick result. Can be null, in this case a 2D pick result
without any further values is constructed
based on the scene coordinatespublic double getAngle()
rotate
property value (positive values for clockwise rotation).public double getTotalAngle()
rotate
property value (positive values for clockwise rotation).public java.lang.String toString()
RotateEvent
object.toString
in class GestureEvent
RotateEvent
object.public RotateEvent copyFor(java.lang.Object newSource, EventTarget newTarget)
GestureEvent
copyFor
in class GestureEvent
public RotateEvent copyFor(java.lang.Object newSource, EventTarget newTarget, <any> type)
newSource
- the new source of the copied eventnewTarget
- the new target of the copied eventtype
- the new eventTypepublic <any> getEventType()
getEventType
in class GestureEvent