com.itextpdf.text.pdf.parser
Class Vector

java.lang.Object
  extended by com.itextpdf.text.pdf.parser.Vector

public class Vector
extends Object

Represents a vector (i.e. a point in space). This class is completely unrelated to the Vector class in the standard JRE.

For many PDF related operations, the z coordinate is specified as 1 This is to support the coordinate transformation calculations. If it helps, just think of all PDF drawing operations as occurring in a single plane with z=1.


Field Summary
static int I1
          index of the X coordinate
static int I2
          index of the Y coordinate
static int I3
          index of the Z coordinate
private  float[] vals
          the values inside the vector
 
Constructor Summary
Vector(float x, float y, float z)
          Creates a new Vector
 
Method Summary
 Vector cross(Matrix by)
          Computes the cross product of this vector and the specified matrix
 Vector cross(Vector with)
          Computes the cross product of this vector and the specified vector
 float dot(Vector with)
          Computes the dot product of this vector with the specified vector
 boolean equals(Object obj)
           
 float get(int index)
          Gets the value from a coordinate of the vector
 float length()
          Computes the length of this vector
Note: If you are working with raw vectors from PDF, be careful - the Z axis will generally be set to 1.
 float lengthSquared()
          Computes the length squared of this vector.
 Vector multiply(float by)
          Multiplies the vector by a scalar
 Vector normalize()
          Normalizes the vector (i.e.
 Vector subtract(Vector v)
          Computes the difference between this vector and the specified vector
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

I1

public static final int I1
index of the X coordinate

See Also:
Constant Field Values

I2

public static final int I2
index of the Y coordinate

See Also:
Constant Field Values

I3

public static final int I3
index of the Z coordinate

See Also:
Constant Field Values

vals

private final float[] vals
the values inside the vector

Constructor Detail

Vector

public Vector(float x,
              float y,
              float z)
Creates a new Vector

Parameters:
x - the X coordinate
y - the Y coordinate
z - the Z coordinate
Method Detail

get

public float get(int index)
Gets the value from a coordinate of the vector

Parameters:
index - the index of the value to get (I1, I2 or I3)
Returns:
a coordinate value

cross

public Vector cross(Matrix by)
Computes the cross product of this vector and the specified matrix

Parameters:
by - the matrix to cross this vector with
Returns:
the result of the cross product

subtract

public Vector subtract(Vector v)
Computes the difference between this vector and the specified vector

Parameters:
v - the vector to subtract from this one
Returns:
the results of the subtraction

cross

public Vector cross(Vector with)
Computes the cross product of this vector and the specified vector

Parameters:
with - the vector to cross this vector with
Returns:
the cross product

normalize

public Vector normalize()
Normalizes the vector (i.e. returns the unit vector in the same orientation as this vector)

Returns:
the unit vector
Since:
5.0.1

multiply

public Vector multiply(float by)
Multiplies the vector by a scalar

Parameters:
by - the scalar to multiply by
Returns:
the result of the scalar multiplication
Since:
5.0.1

dot

public float dot(Vector with)
Computes the dot product of this vector with the specified vector

Parameters:
with - the vector to dot product this vector with
Returns:
the dot product

length

public float length()
Computes the length of this vector
Note: If you are working with raw vectors from PDF, be careful - the Z axis will generally be set to 1. If you want to compute the length of a vector, subtract it from the origin first (this will set the Z axis to 0).
For example: aVector.subtract(originVector).length();

Returns:
the length of this vector

lengthSquared

public float lengthSquared()
Computes the length squared of this vector. The square of the length is less expensive to compute, and is often useful without taking the square root.

Note: See the important note under length()

Returns:
the square of the length of the vector

toString

public String toString()
Overrides:
toString in class Object
See Also:
Object.toString()

equals

public boolean equals(Object obj)
Overrides:
equals in class Object
Since:
5.0.1
See Also:
Object.equals(java.lang.Object)

Hosted by Hostbasket