front_processing/extern/TUIO_JAVA/src/TUIO/TuioObject.java
author bastiena
Tue, 20 Mar 2012 18:00:55 +0100
changeset 7 8a21bec5d45f
parent 0 6fefd4afe506
child 9 0f44b7360c8d
permissions -rw-r--r--
Middleware : No proximity bugs anymore. The skeleton disappear if a tracked person is too close or not tracked anymore. Processing : There are no laggs anymore when an user stay too long moving his hands and drawing tons of ellipses. (TUIO Cursors are not taken by their vectors, only the last position of the cursors are caught to be drawn).
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
/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    24
 * The TuioObject class encapsulates /tuio/2Dobj TUIO objects.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    25
 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    26
 * @author Martin Kaltenbrunner
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    27
 * @version 1.4
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    28
 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    29
public class TuioObject extends TuioContainer {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    30
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    31
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    32
	 * The individual symbol ID number that is assigned to each TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    33
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    34
	protected int symbol_id;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    35
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    36
	 * The rotation angle value.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    37
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    38
	protected float angle;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    39
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    40
	 * The rotation speed value.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    41
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    42
	protected float rotation_speed;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    43
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    44
	 * The rotation acceleration value.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    45
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    46
	protected float rotation_accel;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    47
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    48
	 * Defines the ROTATING state.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    49
	 */ 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    50
	public static final int TUIO_ROTATING = 5;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    51
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    52
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    53
	 * This constructor takes a TuioTime argument and assigns it along with the provided 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    54
	 * Session ID, Symbol ID, X and Y coordinate and angle to the newly created TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    55
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    56
	 * @param	ttime	the TuioTime to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    57
	 * @param	si	the Session ID  to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    58
	 * @param	sym	the Symbol ID  to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    59
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    60
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    61
	 * @param	a	the angle to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    62
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    63
	public TuioObject (TuioTime ttime, long si, int sym, float xp, float yp, float a) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    64
		super(ttime, si,xp,yp);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    65
		symbol_id = sym;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    66
		angle = a;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    67
		rotation_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    68
		rotation_accel = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    69
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    70
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    71
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    72
	 * This constructor takes the provided Session ID, Symbol ID, X and Y coordinate 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    73
	 * and angle, and assigs these values to the newly created TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    74
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    75
	 * @param	si	the Session ID  to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    76
	 * @param	sym	the Symbol ID  to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    77
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    78
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    79
	 * @param	a	the angle to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    80
	 */	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    81
	public TuioObject (long si, int sym, float xp, float yp, float a) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    82
		super(si,xp,yp);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    83
		symbol_id = sym;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    84
		angle = angle;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    85
		rotation_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    86
		rotation_accel = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    87
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    88
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    89
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    90
	 * This constructor takes the atttibutes of the provided TuioObject 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    91
	 * and assigs these values to the newly created TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    92
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    93
	 * @param	tobj	the TuioObject to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    94
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    95
	public TuioObject (TuioObject tobj) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    96
		super(tobj);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    97
		symbol_id = tobj.getSymbolID();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    98
		angle = tobj.getAngle();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
    99
		rotation_speed = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   100
		rotation_accel = 0.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   101
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   102
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   103
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   104
	 * Takes a TuioTime argument and assigns it along with the provided 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   105
	 * X and Y coordinate, angle, X and Y velocity, motion acceleration,
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   106
	 * rotation speed and rotation acceleration to the private TuioObject attributes.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   107
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   108
	 * @param	ttime	the TuioTime to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   109
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   110
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   111
	 * @param	a	the angle coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   112
	 * @param	xs	the X velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   113
	 * @param	ys	the Y velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   114
	 * @param	rs	the rotation velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   115
	 * @param	ma	the motion acceleration to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   116
	 * @param	ra	the rotation acceleration to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   117
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   118
	public void update (TuioTime ttime, float xp, float yp, float a, float xs, float ys, float rs, float ma, float ra) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   119
		super.update(ttime,xp,yp,xs,ys,ma);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   120
		angle = a;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   121
		rotation_speed = rs;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   122
		rotation_accel = ra;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   123
		if ((rotation_accel!=0) && (state!=TUIO_STOPPED)) state = TUIO_ROTATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   124
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   125
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   126
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   127
	 * Assigns the provided X and Y coordinate, angle, X and Y velocity, motion acceleration
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   128
	 * rotation velocity and rotation acceleration to the private TuioContainer attributes.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   129
	 * The TuioTime time stamp remains unchanged.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   130
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   131
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   132
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   133
	 * @param	a	the angle coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   134
	 * @param	xs	the X velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   135
	 * @param	ys	the Y velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   136
	 * @param	rs	the rotation velocity to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   137
	 * @param	ma	the motion acceleration to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   138
	 * @param	ra	the rotation acceleration to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   139
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   140
	public void update (float xp, float yp, float a, float xs, float ys, float rs, float ma, float ra) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   141
		super.update(xp,yp,xs,ys,ma);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   142
		angle = a;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   143
		rotation_speed = rs;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   144
		rotation_accel = ra;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   145
		if ((rotation_accel!=0) && (state!=TUIO_STOPPED)) state = TUIO_ROTATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   146
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   147
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   148
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   149
	 * Takes a TuioTime argument and assigns it along with the provided 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   150
	 * X and Y coordinate and angle to the private TuioObject attributes.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   151
	 * The speed and accleration values are calculated accordingly.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   152
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   153
	 * @param	ttime	the TuioTime to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   154
	 * @param	xp	the X coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   155
	 * @param	yp	the Y coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   156
	 * @param	a	the angle coordinate to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   157
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   158
	public void update (TuioTime ttime, float xp, float yp, float a) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   159
		TuioPoint lastPoint = path.lastElement();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   160
		super.update(ttime,xp,yp);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   161
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   162
		TuioTime diffTime = currentTime.subtract(lastPoint.getTuioTime());
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   163
		float dt = diffTime.getTotalMilliseconds()/1000.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   164
		float last_angle = angle;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   165
		float last_rotation_speed = rotation_speed;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   166
		angle = a;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   167
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   168
		float da = (this.angle-last_angle)/(2.0f*(float)Math.PI);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   169
		if (da>0.75f) da-=1.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   170
		else if (da<-0.75f) da+=1.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   171
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   172
		rotation_speed = da/dt;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   173
		rotation_accel = (rotation_speed - last_rotation_speed)/dt;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   174
		if ((rotation_accel!=0) && (state!=TUIO_STOPPED)) state = TUIO_ROTATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   175
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   176
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   177
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   178
	 * Takes the atttibutes of the provided TuioObject 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   179
	 * and assigs these values to this TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   180
	 * The TuioTime time stamp of this TuioContainer remains unchanged.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   181
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   182
	 * @param	tobj	the TuioContainer to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   183
	 */	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   184
	public void update (TuioObject tobj) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   185
		super.update(tobj);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   186
		angle = tobj.getAngle();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   187
		rotation_speed = tobj.getRotationSpeed();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   188
		rotation_accel = tobj.getRotationAccel();
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   189
		if ((rotation_accel!=0) && (state!=TUIO_STOPPED)) state = TUIO_ROTATING;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   190
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   191
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   192
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   193
	 * This method is used to calculate the speed and acceleration values of a
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   194
	 * TuioObject with unchanged position and angle.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   195
	 *
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   196
	 * @param	ttime	the TuioTime to assign
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   197
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   198
	public void stop (TuioTime ttime) {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   199
		update(ttime,xpos,ypos, angle);
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   200
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   201
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   202
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   203
	 * Returns the symbol ID of this TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   204
	 * @return	the symbol ID of this TuioObject
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   205
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   206
	public int getSymbolID() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   207
		return symbol_id;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   208
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   209
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   210
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   211
	 * Returns the rotation angle of this TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   212
	 * @return	the rotation angle of this TuioObject
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   213
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   214
	public float getAngle() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   215
		return angle;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   216
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   217
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   218
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   219
	 * Returns the rotation angle in degrees of this TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   220
	 * @return	the rotation angle in degrees of this TuioObject
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   221
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   222
	public float getAngleDegrees() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   223
		return angle/(float)Math.PI*180.0f;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   224
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   225
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   226
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   227
	 * Returns the rotation speed of this TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   228
	 * @return	the rotation speed of this TuioObject
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   229
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   230
	public float getRotationSpeed() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   231
		return rotation_speed;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   232
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   233
		
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   234
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   235
	 * Returns the rotation acceleration of this TuioObject.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   236
	 * @return	the rotation acceleration of this TuioObject
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   237
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   238
	public float getRotationAccel() {
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   239
		return rotation_accel;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   240
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   241
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   242
	/**
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   243
	 * Returns true of this TuioObject is moving.
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   244
	 * @return	true of this TuioObject is moving
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   245
	 */
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   246
	public boolean isMoving() { 
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   247
		if ((state==TUIO_ACCELERATING) || (state==TUIO_DECELERATING) || (state==TUIO_ROTATING)) return true;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   248
		else return false;
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   249
	}
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   250
	
6fefd4afe506 First Import
bastiena
parents:
diff changeset
   251
}