All Packages This Package Class Hierarchy Class Search Index
java.lang.Object
|
+----acg.stuttgart.rich.vector.VectorND
|
+----acg.stuttgart.rich.vector.Vector3D
| Summary |
public class Vector3D
extends acg.stuttgart.rich.vector.VectorND
{
// Fields 1
public float[] array;
// Constructors 4
public Vector3D();
public Vector3D(Vector3D);
public Vector3D(float, float, float);
public Vector3D(float[]) throws VectorNDException;
// Methods 18
public static void rotateZ(float, Vector3D[]);
public static void screenMap(Dimension, float, float, float, float, Vector2D[], int[][]) throws VectorNDException;
public static void screenMap(Dimension, float, float, float, float, Vector3D[], int[][]) throws VectorNDException;
public static void simpleProject(float, Vector3D[], Vector2D[]) throws VectorNDException;
public static void translate(Vector3D, Vector3D[]);
public Vector3D add(Vector3D);
public void addIP(Vector3D);
public Vector3D cross(Vector3D);
public float inner(Vector3D);
public float magnitude();
public Vector3D multiply(float);
public void multiplyIP(float);
public float[][] outer(Vector3D);
public void set(Vector3D);
public void set(float, float, float);
public Vector3D subtract(Vector3D);
public void subtractIP(Vector3D);
public float[] toArray();
}
| Cross Reference |
| Fields |
· array | Summary | Top |
public float[] array
An array of floats representing the vector.
| Constructors |
· Vector3D | Summary | Top |
public Vector3D()
The default constructor.
· Vector3D | Summary | Top |
public Vector3D(float x,
float y,
float z)
Constructs a Vector3D from three floats.
Parameter Description xThe first coordinate. yThe second coordinate. zThe third coordinate.
· Vector3D | Summary | Top |
public Vector3D(float[] array) throws VectorNDException
Constructs a Vector3D from an array of floats.
Parameter Description array[]An array of three floats.
· Vector3D | Summary | Top |
public Vector3D(Vector3D obj)
Copy constructor. This method returns a new Vector3D identical to its argument.
Parameter Description objThe vector to be copied.
| Methods |
· simpleProject | Summary | Top |
public static void simpleProject(float viewPlane,
Vector3D[] p,
Vector2D[] r) throws VectorNDException
This is a very simple projection operation which assumes the camera is located at the origin and is pointing down the positive Y axis, with the up vector pointing in the direction of positive Z. The distance of the viewing plane from the eye point (origin) is specified by viewPlane. No clipping or rotation is done here. Note that this method operates in-place (no new storage is allocated) and that the length of
p[]must match that ofr[].
Parameter Description viewPlaneThe distance of the viewing plane from the eye point. p[]An array of 3D points to be projected. r[]An array of 2D points resulting from the projection
· translate | Summary | Top |
public static void translate(Vector3D trans,
Vector3D[] p)
The translate method takes an array of vectors
p[]and translates them by the vectortrans. This method operates in-place, making it faster than a series of Vector3D::add calls.
Parameter Description transA translation vector. p[]The array of vectors to be translated.
· rotateZ | Summary | Top |
public static void rotateZ(float radians,
Vector3D[] p)
The rotateZ method rotates the list of points
p[]byradiansaround the Z axis. This method operates in-place.
Parameter Description radiansThe angle of rotation in radians. p[]The array of vectors to be rotated.
· screenMap | Summary | Top |
public static void screenMap(Dimension screen,
float xmin,
float ymin,
float xrange,
float yrange,
Vector2D[] p,
int[][] r) throws VectorNDException
The screenMap method takes an array of 2D vectors (presumably returned by simpleProject) and maps them into screen coordinates. Note that this method operates in place, and that the length of
pandr[]must be the same.
Parameter Description screenthe size of the screen. xminclipping window minimum x. yminclipping window minimum y. xrangewidth of clipping window. yrangeheight of clipping window. p[]an array of N 2D vectors. r[][]a two dimensional array of integers (dimension N X 2) which will hold the transformed points.
· screenMap | Summary | Top |
public static void screenMap(Dimension screen,
float xmin,
float ymin,
float xrange,
float yrange,
Vector3D[] p,
int[][] r) throws VectorNDException
This version of screenMap takes an array of 3D vectors and maps them into screen coordinates by ignoring the the z coordinate, which is assumed to be one. Note that this method operates in place, and that the length of
pandr[]must be the same.
Parameter Description screenthe size of the screen. xminclipping window minimum x. yminclipping window minimum y. xrangewidth of clipping window. yrangeheight of clipping window. p[]an array of N 3D vectors. r[][]a two dimensional array of integers (dimension N X 2) which will hold the transformed points.
· toArray | Summary | Top |
public float[] toArray()
The
toArray()method returns an array representation of a Vector3D.
- Overrides:
- toArray in class VectorND
· magnitude | Summary | Top |
public float magnitude()
The magnitude method returns the magnitude of a Vector3D.
· set | Summary | Top |
public void set(float x,
float y,
float z)
Set this vector to (x,y,z)
Parameter Description xThe first coordinate. yThe second coordinate. zThe third coordinate.
· set | Summary | Top |
public void set(Vector3D obj)
Set this vector to this other vector
Parameter Description objThe vector to be copied.
· add | Summary | Top |
public Vector3D add(Vector3D a)
Addition method.
Parameter Description aThe second vector.
- Returns:
- The addition of two vectors.
· addIP | Summary | Top |
public void addIP(Vector3D a)
In-place addition.
Parameter Description aThe second vector.
· subtract | Summary | Top |
public Vector3D subtract(Vector3D a)
Subtraction method.
Parameter Description aThe second vector.
- Returns:
this - a
· subtractIP | Summary | Top |
public void subtractIP(Vector3D a)
In-place subtraction method.
Parameter Description aThe second vector.
· multiply | Summary | Top |
public Vector3D multiply(float s)
Multiplication method.
Parameter Description sA scaling factor.
- Returns:
this * s
· multiplyIP | Summary | Top |
public void multiplyIP(float s)
In-place multiplication method.
Parameter Description sA scaling factor.
· inner | Summary | Top |
public float inner(Vector3D a)
Inner product method. Computes inner (dot) product of two vectors.
Parameter Description aThe second vector.
- Returns:
- The (scalar) inner product.
· outer | Summary | Top |
public float[][] outer(Vector3D a)
Outer product method. Computes the outer product of two vectors. Note: this results in a square matrix of dimension 3x3.
Parameter Description XNeeds to be documented
- Returns:
- The matrix resulting from the outer product of the two vectors in the form of a 3x3 array of floats.
· cross | Summary | Top |
public Vector3D cross(Vector3D a)
This method calculates the cross product of two three-dimensional vectors.
Parameter Description aThe second vector.
- Returns:
- A Vector3D representing the cross product.
All Packages This Package Class Hierarchy Class Search IndexFreshly brewed Java API Documentation automatically generated with polardoc Version 1.0.7