Package com.jogamp.newt.event
Class PinchToZoomGesture
java.lang.Object
com.jogamp.newt.event.PinchToZoomGesture
- All Implemented Interfaces:
GestureHandler
2 pointer zoom, a.k.a. pinch to zoom, gesture handler processing
MouseEvent
s
while producing PinchToZoomGesture.ZoomEvent
s if gesture is completed.
Zoom value lies within [0..2], with 1 as 1:1.
- choosing the smallest surface edge (width/height -> x/y) - tolerating other fingers to be pressed and hence user to add functionality (scale, ..)
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface com.jogamp.newt.event.GestureHandler
GestureHandler.GestureEvent, GestureHandler.GestureListener
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
clear
(boolean clearStarted) Clears state of handler, i.e.Returns the correspondingInputEvent
for the gesture as detected by a previousGestureHandler.process(InputEvent)
, which has not beencleared
.final float
getZoom()
Zoom value lies within [0..2], with 1 as 1:1.boolean
Returns true if a previousGestureHandler.process(InputEvent)
command produced a gesture, which has not beencleared
.boolean
Returns true if within a gesture as detected by a previousGestureHandler.process(InputEvent)
command, which has not beencleared
.boolean
process
(InputEvent in) Process the givenInputEvent
and returns true if it produced the gesture.final void
setZoom
(float zoom) Set zoom value within [0..2], with 1 as 1:1.toString()
-
Field Details
-
DEBUG
public static final boolean DEBUG
-
-
Constructor Details
-
PinchToZoomGesture
- Parameters:
surface
- theNativeSurface
, which size is used to compute the relative zoom factorallowMorePointer
- if false, allow only 2 pressed pointers (safe and recommended), otherwise accept other pointer to be pressed.
-
-
Method Details
-
toString
-
clear
public void clear(boolean clearStarted) Description copied from interface:GestureHandler
Clears state of handler, i.e. resets all states incl. previous detected gesture.- Specified by:
clear
in interfaceGestureHandler
- Parameters:
clearStarted
- if true, also clearsstarted
state, otherwise stay within gesture - if appropriate. Staying within a gesture allows fluent continuous gesture sequence, e.g. for scrolling.
-
isWithinGesture
public boolean isWithinGesture()Description copied from interface:GestureHandler
Returns true if within a gesture as detected by a previousGestureHandler.process(InputEvent)
command, which has not beencleared
. Otherwise returns false.- Specified by:
isWithinGesture
in interfaceGestureHandler
-
hasGesture
public boolean hasGesture()Description copied from interface:GestureHandler
Returns true if a previousGestureHandler.process(InputEvent)
command produced a gesture, which has not beencleared
. Otherwise returns false.- Specified by:
hasGesture
in interfaceGestureHandler
-
getGestureEvent
Description copied from interface:GestureHandler
Returns the correspondingInputEvent
for the gesture as detected by a previousGestureHandler.process(InputEvent)
, which has not beencleared
. Otherwise returns null.Only implemented for gestures mapping to
InputEvent
s.- Specified by:
getGestureEvent
in interfaceGestureHandler
-
getZoom
public final float getZoom()Zoom value lies within [0..2], with 1 as 1:1. -
setZoom
public final void setZoom(float zoom) Set zoom value within [0..2], with 1 as 1:1. -
process
Description copied from interface:GestureHandler
Process the givenInputEvent
and returns true if it produced the gesture. Otherwise returns false.If a gesture was already detected previously and has not been cleared, method does not process the event and returns true.
Besides validation of the event's details, the handler may also validate the
InputEvent.InputClass
and/orInputEvent.InputType
.- Specified by:
process
in interfaceGestureHandler
-