1 package at
.mus
.recognition
.dtw
;
3 import at
.mus
.recognition
.ICoordinate
;
5 public class Acceleration
implements ICoordinate
{
8 public Acceleration(float x
, float y
, float z
) {
14 public Acceleration(float[] value
) {
15 this(value
[0], value
[1], value
[2]);
19 * Returns distance between 2 vectors
24 public float distance(ICoordinate acc
) {
25 return (float) Math
.sqrt(difference((Acceleration
)acc
).length());
29 * Returns length of the vector
32 public float length() {
33 return (float)Math
.sqrt(x
*x
+ y
*y
+ z
*z
);
37 * Returns difference between 2 vectors
40 public Acceleration
difference(Acceleration acc
) {
41 return new Acceleration(x
- acc
.x
, y
- acc
.y
, z
- acc
.z
);
45 public ICoordinate
add(ICoordinate other
) {
46 Acceleration acc
= (Acceleration
)other
;
47 return new Acceleration(x
+acc
.x
, y
+acc
.y
, z
+acc
.z
);
51 public ICoordinate
divide(float f
) {
52 return new Acceleration((float)x
/f
, (float)y
/f
, (float)z
/f
);
56 public float[] coords() {
57 return new float[] { x
, y
, z
};
61 public void coords(float[] coords
) {