Detailed Description

Covers both FingerPointer and StylusPointer.

Inheritance diagram for PowerUI.TouchPointer:
PowerUI.InputPointer PowerUI.FingerPointer PowerUI.StylusPointer

Public Member Functions

virtual void UpdateStylus (float angleX, float angleY)
 Updates the stylus info. More...
 
 TouchPointer ()
 
override bool Relocate (out Vector2 delta)
 
- Public Member Functions inherited from PowerUI.InputPointer
 InputPointer ()
 
void Add ()
 Adds this pointer to the available set so it'll get updated. More...
 
float GetMinDragDistance ()
 Finds the minimum drag distance. Always greater than zero. More...
 
virtual bool Relocate (out UnityEngine.Vector2 delta)
 Update ScreenX/ScreenY. More...
 
void SetButton (int unityButtonID)
 Sets ButtonID mapping from the Unity ID to the W3C ones. More...
 
void Click (int unityButtonID)
 Clicks this pointer - same as SetPressure(1). More...
 
void Release (int unityButtonID)
 Releases this pointer - same as SetPressure(0). More...
 
IEventTarget ResolveTarget ()
 Attempts to resolve LatestHit to an event target. Prefers to use Input.TargetResolver but falls back searching for a script on the gameobject which implements it. Will search up the hierarchy too. More...
 
void SetPressure (float v)
 Sets the pressure level. More...
 

Public Attributes

Vector2 LatestPosition
 
float LatestPressure =1f
 Set if pressure is available. More...
 
float Radius
 
float RadiusVariance
 
- Public Attributes inherited from PowerUI.InputPointer
const int DRAG_UNKNOWN =0
 Not tested if a pointer is in the dragging state yet. More...
 
const int DRAG_NOT_AVAILABLE =1
 Tried to drag something that isn't actually draggable. More...
 
const int DRAGGING =2
 Dragging something. More...
 
const int SELECTING =4
 Selecting something. More...
 
bool StillAlive =true
 Used by pointers that don't stick around (fingers and styluses). They're marked as still alive until they don't show up in the touch set anymore. It's always unfortunate that we have to do things like this; the underlying API's are event based but Unity would rather we poll instead. More...
 
int ID =-1
 A unique ID for this pointer. More...
 
bool FireTouchEvents
 True if this pointer should fire touch events. More...
 
float ScreenX
 The current X coordinate on the screen. More...
 
float ScreenY
 The current Y coordinate on the screen. More...
 
float DocumentX
 The current X coordinate on the document that ActiveOver is in. More...
 
float DocumentY
 The current Y coordinate on the document that ActiveOver is in. More...
 
int DragStatus =DRAG_UNKNOWN
 The current drag status. See e.g. DRAG_UNKNOWN. More...
 
float DownDocumentX
 The X coordinate when the pointer went down (clicked). More...
 
float DownDocumentY
 The Y coordinate when the pointer went down (clicked). More...
 
bool Removed
 This occurs with touch pointers. They get marked as removed when the finger is no longer on the screen. More...
 
float MinDragDistance
 The current minimum drag distance. More...
 
Element ActiveUpdating
 Used by e.g. dragging. The element that is "pressed" can be different from the one being actually dragged. More...
 
Element ActiveOver
 The element that this pointer is currently over. More...
 
Element ActivePressed
 The element that this pointer last pressed/ clicked on. More...
 
float Pressure
 The latest pressure. More...
 
int ButtonID
 The latest button that went down. More...
 
bool LatestHitSuccess
 True if LatestRayHit is valid (because it hit something). More...
 
UnityEngine.RaycastHit LatestHit
 If WorldUI's receive input, a ray must be fired from CameraFor3DInput to attempt input. This is the lastest ray result. UI.MouseOver updates this immediately; it's updated at the UI rate otherwise. More...
 
long pointerId =0
 A globally unique ID. More...
 
bool isPrimary =true
 Is this the primary pointer? They all are by default in PowerUI (everything receives the 'legacy' mouse events). More...
 

Properties

string identifier [get]
 ID of this touch. More...
 
float radiusX [get]
 JS API. More...
 
float radiusY [get]
 JS API. More...
 
float force [get]
 JS API. The current amount of force. More...
 
float rotationAngle [get]
 RadiusX==RadiusY (Unity doesn't provide the info we need) so this is always 0. More...
 
override double width [get]
 The width of the active pointer area in CSS pixels. More...
 
override double height [get]
 The height of the active pointer area in CSS pixels. More...
 
override float twist [get]
 The twist/ rotationAngle. More...
 
- Properties inherited from PowerUI.InputPointer
static InputPointer[] All [get]
 The set of all input pointers that are currently actively doing something. Note that this array gets built when you request this property; If you want extra speed, access AllRaw and use PointerCount instead. More...
 
virtual string pointerType [get]
 The type of input pointer. More...
 
virtual float tangentialPressure [get]
 The 'barrel' pressure when available. More...
 
virtual double width [get]
 The width of the active pointer area in CSS pixels. More...
 
virtual double height [get]
 The height of the active pointer area in CSS pixels. More...
 
virtual float tiltX [get]
 The x tilt of the pointer. More...
 
virtual float tiltY [get]
 The y tilt of the pointer. More...
 
virtual float twist [get]
 The rotation angle of an input when available. More...
 
bool IsDown [get]
 True if this input is currently down. More...
 
float startX [get]
 The X coordinate when the pointer went down (clicked). Same as DownDocumentX More...
 
float startY [get]
 The Y coordinate when the pointer went down (clicked). Same as DownDocumentY More...
 
bool MovedBeyondDragDistance [get]
 Checks if the delta between DocumentX/Y and DownDocumentX/Y is bigger than our min drag size. More...
 

Private Attributes

string IDText
 

Additional Inherited Members

- Static Package Functions inherited from PowerUI.InputPointer
static void Tidy ()
 Removes the pointers marked for removal. More...
 
- Static Package Attributes inherited from PowerUI.InputPointer
static int PointerCount
 To avoid resizing this array repeatedly, we track how many are actually in use. More...
 
static InputPointer[] AllRaw =new InputPointer[1]
 The raw set of all available input pointers. PointerCount is how many indices are actually in use. More...
 

Constructor & Destructor Documentation

PowerUI.TouchPointer.TouchPointer ( )
inline

Member Function Documentation

override bool PowerUI.TouchPointer.Relocate ( out Vector2  delta)
inline
virtual void PowerUI.TouchPointer.UpdateStylus ( float  angleX,
float  angleY 
)
inlinevirtual

Updates the stylus info.

Reimplemented in PowerUI.StylusPointer.

Member Data Documentation

string PowerUI.TouchPointer.IDText
private
Vector2 PowerUI.TouchPointer.LatestPosition
float PowerUI.TouchPointer.LatestPressure =1f

Set if pressure is available.

float PowerUI.TouchPointer.Radius
float PowerUI.TouchPointer.RadiusVariance

Property Documentation

float PowerUI.TouchPointer.force
get

JS API. The current amount of force.

override double PowerUI.TouchPointer.height
get

The height of the active pointer area in CSS pixels.

string PowerUI.TouchPointer.identifier
get

ID of this touch.

float PowerUI.TouchPointer.radiusX
get

JS API.

float PowerUI.TouchPointer.radiusY
get

JS API.

float PowerUI.TouchPointer.rotationAngle
get

RadiusX==RadiusY (Unity doesn't provide the info we need) so this is always 0.

override float PowerUI.TouchPointer.twist
get

The twist/ rotationAngle.

override double PowerUI.TouchPointer.width
get

The width of the active pointer area in CSS pixels.