Package com.itextpdf.text.pdf.parser
Class Vector
- java.lang.Object
-
- com.itextpdf.text.pdf.parser.Vector
-
public class Vector extends java.lang.Object
Represents a vector (i.e. a point in space). This class is completely unrelated to theVector
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.
-
-
Constructor Summary
Constructors Constructor Description Vector(float x, float y, float z)
Creates a new Vector
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Vector
cross(Matrix by)
Computes the cross product of this vector and the specified matrixVector
cross(Vector with)
Computes the cross product of this vector and the specified vectorfloat
dot(Vector with)
Computes the dot product of this vector with the specified vectorboolean
equals(java.lang.Object obj)
float
get(int index)
Gets the value from a coordinate of the vectorint
hashCode()
Calculates the hashcode using the values.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 scalarVector
normalize()
Normalizes the vector (i.e.Vector
subtract(Vector v)
Computes the difference between this vector and the specified vectorjava.lang.String
toString()
-
-
-
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
-
-
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 underlength()
- Returns:
- the square of the length of the vector
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
- See Also:
Object.toString()
-
hashCode
public int hashCode()
Calculates the hashcode using the values.- Overrides:
hashCode
in classjava.lang.Object
- Since:
- 5.0.6
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
-