|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.rim.device.api.math.Vector3f
public class Vector3f
A 3-element floating point vector.
When using a vector to represent a surface normal, the vector should typically be normalized. Other uses of directional vectors may wish to leave the magnitude of the vector in-tact. When used as a point, the elements of the vector represent a position in 3D space.
Field Summary | ||
---|---|---|
float |
x
The x-coordinate. |
|
float |
y
The y-coordinate. |
|
float |
z
The z-coordinate. |
Constructor Summary | ||
---|---|---|
Vector3f()
Constructs a new vector initialized to all zeros. |
||
Vector3f(float x,
float y,
float z)
Constructs a new vector initialized to the specified values. |
||
Vector3f(Vector3f v)
Constructs a new vector that is a copy of the specified vector. |
||
Vector3f(Vector3f p1,
Vector3f p2)
Constructs a vector that describes the direction between the given points. |
Method Summary | ||
---|---|---|
void |
add(Vector3f v)
Adds the elements of the specified vector to this one. |
|
static void |
add(Vector3f v1,
Vector3f v2,
Vector3f dst)
Adds the specified vectors and stores the result in dst . |
|
static float |
angle(Vector3f v1,
Vector3f v2)
Returns the angle (in radians) between the specified vectors. |
|
void |
cross(Vector3f v)
Sets this vector to the cross product between itself and the specified vector. |
|
static void |
cross(Vector3f v1,
Vector3f v2,
Vector3f dst)
Computes the cross product of the specified vectors and stores the result in dst . |
|
float |
distance(Vector3f v)
Returns the distance between this vector and v . |
|
float |
distanceSquared(Vector3f v)
Returns the squared distance between this vector and v . |
|
float |
dot(Vector3f v)
Returns the dot product of this vector and the specified vector. |
|
static float |
dot(Vector3f v1,
Vector3f v2)
Returns the dot produce between the specified vectors. |
|
boolean |
equals(Object obj)
Determines if the specified object is of type Vector3f and all of its elements are equal to the elements of this Vector3f. |
|
boolean |
equals(Vector3f v)
Returns true if all elements of the specified Vector3f are equal to the elements of this Vector3f. |
|
int |
hashCode()
Returns a hash code based on the elements of this vector. |
|
float |
length()
Computes the length of this vector. |
|
float |
lengthSquared()
Returns the squared length of this vector. |
|
void |
negate()
Negates this vector. |
|
void |
normalize()
Normalizes this vector. |
|
void |
normalize(Vector3f dst)
Normalizes this vector and stores the result in dst . |
|
void |
scale(float scalar)
Scales all elements of this vector by the specified value. |
|
void |
set(float x,
float y,
float z)
Sets the elements of this vector to the specified values. |
|
void |
set(float[] array,
int offset)
Sets the elements of this vector from the values in the specified array. |
|
void |
set(Vector3f v)
Sets the elements of this vector to those in the specified vector. |
|
void |
set(Vector3f p1,
Vector3f p2)
Sets this vector to the directional vector between the given points. |
|
void |
subtract(Vector3f v)
Subtracts this vector and the specified vector as (this - v)
and stores the result in this . |
|
static void |
subtract(Vector3f v1,
Vector3f v2,
Vector3f dst)
Subtracts the specified vectors and stores the result in dst . |
|
String |
toString()
Returns a String representation of the elements of this vector. |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public float x
public float y
public float z
Constructor Detail |
---|
public Vector3f()
public Vector3f(float x, float y, float z)
x
- the x-coordiantey
- the y-coordinatez
- the z-coordinatepublic Vector3f(Vector3f p1, Vector3f p2)
The new vector describes the direction vector from p1
to p2
,
computed as p2 - p1
.
p1
- the first pointp2
- the second pointpublic Vector3f(Vector3f v)
v
- the vector to copyMethod Detail |
---|
public static float angle(Vector3f v1, Vector3f v2)
v1
- the first vectorv2
- the second vector
public final void add(Vector3f v)
v
- the vector to addpublic static void add(Vector3f v1, Vector3f v2, Vector3f dst)
dst
.
v1
- the first vectorv2
- the second vectordst
- a vector to store the result inpublic final void cross(Vector3f v)
v
- the vector to compute the cross product withpublic static void cross(Vector3f v1, Vector3f v2, Vector3f dst)
dst
.
v1
- the first vectorv2
- the second vectordst
- a vector to store the result in (must not be equal to v1
or v2
)public final float distance(Vector3f v)
v
.
v
- the other vector
v
distanceSquared
public final float distanceSquared(Vector3f v)
v
.
When it is not neccessary to get the exact distance between two vectors
(for example, when simply comparing the distance between different vectors),
it is advised to use this method instead of distance
.
v
- the other vector
v
.distance
public final float dot(Vector3f v)
v
- the vector to compute the dot product with
public static float dot(Vector3f v1, Vector3f v2)
v1
- the first vectorv2
- the second vector
public boolean equals(Object obj)
equals
in class Object
obj
- the object to compare
Boolean.hashCode()
,
Hashtable
public boolean equals(Vector3f v)
v
- the vector to compare
public int hashCode()
hashCode
in class Object
Object.equals(java.lang.Object)
,
Hashtable
public final float length()
lengthSquared
public final float lengthSquared()
When it is not neccessary to get the exact length of a vector (for example,
when simply comparing the lengths of different vectors), it is advised to
use this method instead of length
.
length
public final void negate()
public final void normalize()
This method normalizes this Vector3f so that it is of unit length (in other words, the length of the vector after calling this method will be 1.0f). If the vector already has unit length or if the length of the vector is zero, this method does nothing.
public final void normalize(Vector3f dst)
dst
.
If the vector already has unit length or if the length of the vector
is zero, this method simply copies the current vector into dst
.
dst
- the destination vectorpublic final void scale(float scalar)
scalar
- the scalar valuepublic final void set(float x, float y, float z)
x
- the new x-coordinatey
- the new y-coordinatez
- the new z-coordinatepublic final void set(float[] array, int offset)
array
- an array containing the elements of the vector in the order x, y, z.offset
- the offset into the array of the x
elementpublic final void set(Vector3f v)
v
- the vector to copypublic final void set(Vector3f p1, Vector3f p2)
This result of this vector describes the direction from p1
to p2
,
computed as p2 - p1
.
p1
- the first pointp2
- the second pointpublic final void subtract(Vector3f v)
(this - v)
and stores the result in this
.
v
- the vector to subtractpublic static void subtract(Vector3f v1, Vector3f v2, Vector3f dst)
dst
.
The resulting vector is computed as (v1 - v2)
.
v1
- the first vectorv2
- the second vectordst
- the destination vectorpublic String toString()
toString
in class Object
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 1999-2010 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark of Sun Microsystems, Inc.