front_processing/extern/TUIO_JAVA/src/TUIO/TuioContainer.java
author bastiena
Thu, 15 Mar 2012 13:33:21 +0100
changeset 3 92f19af39024
parent 0 6fefd4afe506
child 9 0f44b7360c8d
permissions -rw-r--r--
Middleware : Swipe & Push & Jump(Experimental) Detectors ant events added Server modified for gesture detection TUIO Server C# Modified : Hand cursors redirected to /TUIO/3DCur channel New kind of OSC message created (TuioString) for gesture detection, using /TUIO/_siP channel. TUIO Processing Java Modified : Hand cursors redirected to /TUIO/3DCur channel New kind of OSC message created (TuioString) for gesture detection, using /TUIO/_siP channel. Front Processing : Mask added and modifications in the drawing process New front for gesture detection (just showing a text message in the mask for the moment)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
     1
/*
6fefd4afe506 First Import
bastiena
parents:
diff changeset
     2
 TUIO Java backend - part of the reacTIVision project
6fefd4afe506 First Import
bastiena
parents:
diff changeset
     3
 http://reactivision.sourceforge.net/
6fefd4afe506 First Import
bastiena
parents:
diff changeset
     4
 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
     5
 Copyright (c) 2005-2009 Martin Kaltenbrunner <mkalten@iua.upf.edu>
6fefd4afe506 First Import
bastiena
parents:
diff changeset
     6
 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
     7
 This program is free software; you can redistribute it and/or modify
6fefd4afe506 First Import
bastiena
parents:
diff changeset
     8
 it under the terms of the GNU General Public License as published by
6fefd4afe506 First Import
bastiena
parents:
diff changeset
     9
 the Free Software Foundation; either version 2 of the License, or
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    10
 (at your option) any later version.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    11
 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    12
 This program is distributed in the hope that it will be useful,
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    13
 but WITHOUT ANY WARRANTY; without even the implied warranty of
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    14
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    15
 GNU General Public License for more details.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    16
 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    17
 You should have received a copy of the GNU General Public License
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    18
 along with this program; if not, write to the Free Software
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    19
 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    20
 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    21
package TUIO;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    22
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    23
import java.util.*;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    24
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    25
/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    26
 * The abstract TuioContainer class defines common attributes that apply to both subclasses {@link TuioObject} and {@link TuioCursor}.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    27
 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    28
 * @author Martin Kaltenbrunner
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    29
 * @version 1.4
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    30
 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    31
abstract class TuioContainer extends TuioPoint {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    32
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    33
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    34
	 * The unique session ID number that is assigned to each TUIO object or cursor.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    35
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    36
	protected long session_id;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    37
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    38
	 * The X-axis velocity value.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    39
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    40
	protected float x_speed;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    41
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    42
	 * The Y-axis velocity value.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    43
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    44
	protected float y_speed;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    45
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    46
	 * The motion speed value.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    47
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    48
	protected float motion_speed;	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    49
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    50
	 * The motion acceleration value.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    51
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    52
	protected float motion_accel;		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    53
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    54
	 * A Vector of TuioPoints containing all the previous positions of the TUIO component.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    55
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    56
	protected Vector<TuioPoint> path;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    57
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    58
	 * Defines the ADDED state.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    59
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    60
	public static final int TUIO_ADDED = 0;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    61
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    62
	 * Defines the ACCELERATING state.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    63
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    64
	public static final int TUIO_ACCELERATING = 1;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    65
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    66
	 * Defines the DECELERATING state.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    67
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    68
	public static final int TUIO_DECELERATING = 2;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    69
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    70
	 * Defines the STOPPED state.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    71
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    72
	public static final int TUIO_STOPPED = 3;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    73
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    74
	 * Defines the REMOVED state.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    75
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    76
	public static final int TUIO_REMOVED = 4;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    77
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    78
	 * Reflects the current state of the TuioComponent
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    79
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    80
	protected int state;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    81
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    82
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    83
	 * This constructor takes a TuioTime argument and assigns it along with the provided 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    84
	 * Session ID, X and Y coordinate to the newly created TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    85
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    86
	 * @param	ttime	the TuioTime to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    87
	 * @param	si	the Session ID to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    88
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    89
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    90
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    91
	TuioContainer(TuioTime ttime, long si, float xp, float yp) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    92
		super(ttime,xp,yp);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    93
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    94
		session_id = si;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    95
		x_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    96
		y_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    97
		motion_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    98
		motion_accel = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    99
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   100
		path = new Vector<TuioPoint>();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   101
		path.addElement(new TuioPoint(currentTime,xpos,ypos));
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   102
		state = TUIO_ADDED;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   103
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   104
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   105
	/**
3
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   106
	 * This constructor takes a TuioTime argument and assigns it along with the provided 
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   107
	 * Session ID, X, Y and Z coordinate to the newly created TuioContainer.
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   108
	 *
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   109
	 * @param	ttime	the TuioTime to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   110
	 * @param	si	the Session ID to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   111
	 * @param	xp	the X coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   112
	 * @param	yp	the Y coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   113
	 * @param	zp	the Z coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   114
	 */
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   115
	TuioContainer(TuioTime ttime, long si, float xp, float yp, float zp) {
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   116
		super(ttime,xp,yp, zp);
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   117
		
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   118
		session_id = si;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   119
		x_speed = 0.0f;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   120
		y_speed = 0.0f;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   121
		motion_speed = 0.0f;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   122
		motion_accel = 0.0f;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   123
		
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   124
		path = new Vector<TuioPoint>();
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   125
		path.addElement(new TuioPoint(currentTime,xpos,ypos,zpos));
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   126
		state = TUIO_ADDED;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   127
	}
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   128
	
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   129
	/**
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   130
	 * This constructor takes the provided Session ID, X and Y coordinate 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   131
	 * and assigs these values to the newly created TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   132
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   133
	 * @param	si	the Session ID to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   134
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   135
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   136
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   137
	TuioContainer(long si, float xp, float yp) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   138
		super(xp,yp);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   139
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   140
		session_id = si;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   141
		x_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   142
		y_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   143
		motion_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   144
		motion_accel = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   145
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   146
		path = new Vector<TuioPoint>();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   147
		path.addElement(new TuioPoint(currentTime,xpos,ypos));
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   148
		state = TUIO_ADDED;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   149
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   150
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   151
	/**
3
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   152
	 * This constructor takes the provided Session ID, X, Y and Z coordinate 
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   153
	 * and assigs these values to the newly created TuioContainer.
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   154
	 *
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   155
	 * @param	si	the Session ID to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   156
	 * @param	xp	the X coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   157
	 * @param	yp	the Y coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   158
	 * @param	zp	the Z coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   159
	 */
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   160
	TuioContainer(long si, float xp, float yp, float zp) {
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   161
		super(xp,yp,zp);
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   162
		
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   163
		session_id = si;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   164
		x_speed = 0.0f;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   165
		y_speed = 0.0f;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   166
		motion_speed = 0.0f;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   167
		motion_accel = 0.0f;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   168
		
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   169
		path = new Vector<TuioPoint>();
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   170
		path.addElement(new TuioPoint(currentTime,xpos,ypos,zpos));
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   171
		state = TUIO_ADDED;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   172
	}
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   173
	
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   174
	/**
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   175
	 * This constructor takes the atttibutes of the provided TuioContainer 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   176
	 * and assigs these values to the newly created TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   177
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   178
	 * @param	tcon	the TuioContainer to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   179
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   180
	TuioContainer(TuioContainer tcon) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   181
		super(tcon);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   182
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   183
		session_id = tcon.getSessionID();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   184
		x_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   185
		y_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   186
		motion_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   187
		motion_accel = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   188
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   189
		path = new Vector<TuioPoint>();
3
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   190
		path.addElement(new TuioPoint(currentTime,xpos,ypos,zpos));
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   191
		state = TUIO_ADDED;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   192
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   193
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   194
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   195
	 * Takes a TuioTime argument and assigns it along with the provided 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   196
	 * X and Y coordinate to the private TuioContainer attributes.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   197
	 * The speed and accleration values are calculated accordingly.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   198
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   199
	 * @param	ttime	the TuioTime to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   200
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   201
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   202
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   203
	public void update(TuioTime ttime, float xp, float yp) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   204
		TuioPoint lastPoint = path.lastElement();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   205
		super.update(ttime,xp,yp);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   206
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   207
		TuioTime diffTime = currentTime.subtract(lastPoint.getTuioTime());
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   208
		float dt = diffTime.getTotalMilliseconds()/1000.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   209
		float dx = this.xpos - lastPoint.getX();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   210
		float dy = this.ypos - lastPoint.getY();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   211
		float dist = (float)Math.sqrt(dx*dx+dy*dy);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   212
		float last_motion_speed = this.motion_speed;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   213
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   214
		this.x_speed = dx/dt;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   215
		this.y_speed = dy/dt;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   216
		this.motion_speed = dist/dt;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   217
		this.motion_accel = (motion_speed - last_motion_speed)/dt;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   218
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   219
		path.addElement(new TuioPoint(currentTime,xpos,ypos));
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   220
		if (motion_accel>0) state = TUIO_ACCELERATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   221
		else if (motion_accel<0) state = TUIO_DECELERATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   222
		else state = TUIO_STOPPED;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   223
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   224
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   225
	/**
3
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   226
	 * Takes a TuioTime argument and assigns it along with the provided 
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   227
	 * X, Y and Z coordinate to the private TuioContainer attributes.
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   228
	 * The speed and accleration values are calculated accordingly.
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   229
	 *
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   230
	 * @param	ttime	the TuioTime to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   231
	 * @param	xp	the X coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   232
	 * @param	yp	the Y coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   233
	 * @param	zp	the Z coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   234
	 */
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   235
	public void update(TuioTime ttime, float xp, float yp, float zp) {
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   236
		TuioPoint lastPoint = path.lastElement();
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   237
		super.update(ttime,xp,yp,zp);
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   238
		
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   239
		TuioTime diffTime = currentTime.subtract(lastPoint.getTuioTime());
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   240
		float dt = diffTime.getTotalMilliseconds()/1000.0f;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   241
		float dx = this.xpos - lastPoint.getX();
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   242
		float dy = this.ypos - lastPoint.getY();
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   243
		float dz = this.zpos - lastPoint.getZ();
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   244
		float dist = (float)Math.sqrt(dx*dx+dy*dy+dz*dz);
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   245
		float last_motion_speed = this.motion_speed;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   246
		
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   247
		this.x_speed = dx/dt;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   248
		this.y_speed = dy/dt;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   249
		this.motion_speed = dist/dt;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   250
		this.motion_accel = (motion_speed - last_motion_speed)/dt;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   251
		
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   252
		path.addElement(new TuioPoint(currentTime,xpos,ypos,zpos));
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   253
		if (motion_accel>0) state = TUIO_ACCELERATING;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   254
		else if (motion_accel<0) state = TUIO_DECELERATING;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   255
		else state = TUIO_STOPPED;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   256
	}
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   257
	
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   258
	/**
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   259
	 * This method is used to calculate the speed and acceleration values of
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   260
	 * TuioContainers with unchanged positions.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   261
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   262
	public void stop(TuioTime ttime) {
3
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   263
		update(ttime,xpos,ypos,zpos);
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   264
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   265
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   266
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   267
	 * Takes a TuioTime argument and assigns it along with the provided 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   268
	 * X and Y coordinate, X and Y velocity and acceleration
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   269
	 * to the private TuioContainer attributes.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   270
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   271
	 * @param	ttime	the TuioTime to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   272
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   273
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   274
	 * @param	xs	the X velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   275
	 * @param	ys	the Y velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   276
	 * @param	ma	the acceleration to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   277
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   278
	public void update(TuioTime ttime, float xp, float yp , float xs, float ys, float ma) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   279
		super.update(ttime,xp,yp);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   280
		x_speed = xs;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   281
		y_speed = ys;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   282
		motion_speed = (float)Math.sqrt(x_speed*x_speed+y_speed*y_speed);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   283
		motion_accel = ma;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   284
		path.addElement(new TuioPoint(currentTime,xpos,ypos));
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   285
		if (motion_accel>0) state = TUIO_ACCELERATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   286
		else if (motion_accel<0) state = TUIO_DECELERATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   287
		else state = TUIO_STOPPED;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   288
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   289
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   290
	/**
3
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   291
	 * Takes a TuioTime argument and assigns it along with the provided 
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   292
	 * X, Y and Z coordinate, X and Y velocity and acceleration
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   293
	 * to the private TuioContainer attributes.
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   294
	 *
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   295
	 * @param	ttime	the TuioTime to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   296
	 * @param	xp	the X coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   297
	 * @param	yp	the Y coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   298
	 * @param	zp	the Z coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   299
	 * @param	xs	the X velocity to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   300
	 * @param	ys	the Y velocity to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   301
	 * @param	ma	the acceleration to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   302
	 */
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   303
	public void update(TuioTime ttime, float xp, float yp, float zp , float xs, float ys, float ma) {
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   304
		super.update(ttime,xp,yp,zp);
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   305
		x_speed = xs;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   306
		y_speed = ys;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   307
		motion_speed = (float)Math.sqrt(x_speed*x_speed+y_speed*y_speed);
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   308
		motion_accel = ma;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   309
		path.addElement(new TuioPoint(currentTime,xpos,ypos,zpos));
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   310
		if (motion_accel>0) state = TUIO_ACCELERATING;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   311
		else if (motion_accel<0) state = TUIO_DECELERATING;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   312
		else state = TUIO_STOPPED;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   313
	}
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   314
	
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   315
	/**
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   316
	 * Assigns the provided X and Y coordinate, X and Y velocity and acceleration
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   317
	 * to the private TuioContainer attributes. The TuioTime time stamp remains unchanged.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   318
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   319
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   320
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   321
	 * @param	xs	the X velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   322
	 * @param	ys	the Y velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   323
	 * @param	ma	the acceleration to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   324
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   325
	public void update(float xp, float yp,float xs,float ys,float ma) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   326
		super.update(xp,yp);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   327
		x_speed = xs;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   328
		y_speed = ys;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   329
		motion_speed = (float)Math.sqrt(x_speed*x_speed+y_speed*y_speed);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   330
		motion_accel = ma;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   331
		path.addElement(new TuioPoint(currentTime,xpos,ypos));
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   332
		if (motion_accel>0) state = TUIO_ACCELERATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   333
		else if (motion_accel<0) state = TUIO_DECELERATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   334
		else state = TUIO_STOPPED;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   335
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   336
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   337
	/**
3
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   338
	 * Assigns the provided X, Y and Z coordinate, X and Y velocity and acceleration
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   339
	 * to the private TuioContainer attributes. The TuioTime time stamp remains unchanged.
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   340
	 *
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   341
	 * @param	xp	the X coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   342
	 * @param	yp	the Y coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   343
	 * @param	zp	the Z coordinate to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   344
	 * @param	xs	the X velocity to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   345
	 * @param	ys	the Y velocity to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   346
	 * @param	ma	the acceleration to assign
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   347
	 */
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   348
	public void update(float xp, float yp, float zp,float xs,float ys,float ma) {
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   349
		super.update(xp,yp,zp);
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   350
		x_speed = xs;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   351
		y_speed = ys;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   352
		motion_speed = (float)Math.sqrt(x_speed*x_speed+y_speed*y_speed);
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   353
		motion_accel = ma;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   354
		path.addElement(new TuioPoint(currentTime,xpos,ypos,zpos));
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   355
		if (motion_accel>0) state = TUIO_ACCELERATING;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   356
		else if (motion_accel<0) state = TUIO_DECELERATING;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   357
		else state = TUIO_STOPPED;
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   358
	}
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   359
	
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   360
	/**
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   361
	 * Takes the atttibutes of the provided TuioContainer 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   362
	 * and assigs these values to this TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   363
	 * The TuioTime time stamp of this TuioContainer remains unchanged.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   364
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   365
	 * @param	tcon	the TuioContainer to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   366
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   367
	public void update (TuioContainer tcon) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   368
		super.update(tcon);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   369
		x_speed = tcon.getXSpeed();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   370
		y_speed = tcon.getYSpeed();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   371
		motion_speed = tcon.getMotionSpeed();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   372
		motion_accel = tcon.getMotionAccel();
3
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   373
		path.addElement(new TuioPoint(currentTime,xpos,ypos,zpos));
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   374
		if (motion_accel>0) state = TUIO_ACCELERATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   375
		else if (motion_accel<0) state = TUIO_DECELERATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   376
		else state = TUIO_STOPPED;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   377
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   378
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   379
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   380
	 * Assigns the REMOVE state to this TuioContainer and sets
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   381
	 * its TuioTime time stamp to the provided TuioTime argument.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   382
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   383
	 * @param	ttime	the TuioTime to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   384
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   385
	public void remove(TuioTime ttime) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   386
		currentTime = new TuioTime(ttime);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   387
		state = TUIO_REMOVED;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   388
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   389
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   390
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   391
	 * Returns the Session ID of this TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   392
	 * @return	the Session ID of this TuioContainer
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   393
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   394
	public long getSessionID() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   395
		return session_id;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   396
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   397
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   398
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   399
	 * Returns the X velocity of this TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   400
	 * @return	the X velocity of this TuioContainer
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   401
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   402
	public float getXSpeed() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   403
		return x_speed;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   404
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   405
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   406
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   407
	 * Returns the Y velocity of this TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   408
	 * @return	the Y velocity of this TuioContainer
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   409
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   410
	public float getYSpeed() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   411
		return y_speed;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   412
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   413
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   414
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   415
	 * Returns the position of this TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   416
	 * @return	the position of this TuioContainer
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   417
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   418
	public TuioPoint getPosition() {
3
92f19af39024 Middleware :
bastiena
parents: 0
diff changeset
   419
		return new TuioPoint(xpos,ypos,zpos);
0
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   420
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   421
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   422
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   423
	 * Returns the path of this TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   424
	 * @return	the path of this TuioContainer
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   425
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   426
	public Vector<TuioPoint> getPath() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   427
		return path;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   428
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   429
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   430
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   431
	 * Returns the motion speed of this TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   432
	 * @return	the motion speed of this TuioContainer
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   433
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   434
	public float getMotionSpeed() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   435
		return motion_speed;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   436
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   437
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   438
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   439
	 * Returns the motion acceleration of this TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   440
	 * @return	the motion acceleration of this TuioContainer
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   441
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   442
	public float getMotionAccel() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   443
		return motion_accel;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   444
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   445
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   446
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   447
	 * Returns the TUIO state of this TuioContainer.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   448
	 * @return	the TUIO state of this TuioContainer
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   449
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   450
	public int getTuioState() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   451
		return state;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   452
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   453
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   454
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   455
	 * Returns true of this TuioContainer is moving.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   456
	 * @return	true of this TuioContainer is moving
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   457
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   458
	public boolean isMoving() { 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   459
		if ((state==TUIO_ACCELERATING) || (state==TUIO_DECELERATING)) return true;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   460
		else return false;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   461
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   462
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   463
}