public class Vector2D extends Object implements Cloneable, Serializable
Constructor and Description |
---|
Vector2D()
Constructs a new Vectors initialized with x=1 and y=0.
|
Vector2D(double x,
double y)
Constructs a new vector with the given coordinates.
|
Vector2D(Point2D point)
Constructs a new vector between the origin and the given point.
|
Vector2D(Point2D point1,
Point2D point2)
Constructs a new vector between two points
|
Modifier and Type | Method and Description |
---|---|
Vector2D |
clone() |
static Vector2D |
create(double x,
double y)
Static factory for creating a new point in cartesian coordinates.
|
static Vector2D |
create(Point2D point)
Static factory for creating a new vector from the coordinate of a point.
|
static Vector2D |
createPolar(double rho,
double theta)
Creates a new vector by specifying the distance to the origin, and the
angle with the horizontal.
|
double |
cross(Vector2D v)
Get the cross product with point
p . |
static double |
cross(Vector2D v1,
Vector2D v2)
Get the cross product of the two vectors, defined by :
|
double |
dot(Vector2D v)
Get the dot product with point
p . |
static double |
dot(Vector2D v1,
Vector2D v2)
Get the dot product of the two vectors, defined by :
|
boolean |
equals(Object obj)
Test whether this object is the same as another vector.
|
double |
getAngle()
Returns the angle with the horizontal axis, in radians.
|
double |
getNorm()
Computes the norm of the vector
|
Vector2D |
getNormalizedVector()
Returns the vector with same direction as this one, but with norm equal
to 1.
|
Vector2D |
getOpposite()
Returns the opposite vector v2 of this, such that the sum of this and v2
equals the null vector.
|
double |
getX() |
double |
getY() |
boolean |
isColinear(Vector2D v)
test if the two vectors are colinear
|
static boolean |
isColinear(Vector2D v1,
Vector2D v2)
Tests if the two vectors are colinear
|
boolean |
isOrthogonal(Vector2D v)
test if the two vectors are orthogonal
|
static boolean |
isOrthogonal(Vector2D v1,
Vector2D v2)
Tests if the two vectors are orthogonal
|
Vector2D |
minus(Vector2D v)
Returns the subtraction of current vector with vector given as
parameter.
|
void |
normalize()
Normalizes the vector, such that its norms becomes 1.
|
Vector2D |
plus(Vector2D v)
Returns the sum of current vector with vector given as parameter.
|
void |
setAsPolar(double rho,
double theta)
Deprecated.
vectors will become imutable in a future release
|
void |
setVector(double x,
double y)
Deprecated.
vectors will become imutable in a future release
|
void |
setX(double x)
Deprecated.
vectors will become imutable in a future release
|
void |
setY(double y)
Deprecated.
vectors will become imutable in a future release
|
Vector2D |
times(double k)
Multiplies the vector by a scalar amount.
|
String |
toString() |
Vector2D |
transform(AffineTransform2D trans)
Transform the vector, by using only the first 4 parameters of the
transform.
|
public Vector2D()
public Vector2D(Point2D point)
public Vector2D(double x, double y)
public static Vector2D create(Point2D point)
public static Vector2D create(double x, double y)
public static final Vector2D createPolar(double rho, double theta)
public static final double dot(Vector2D v1, Vector2D v2)
dx1*dy2 + dx2*dy1
Dot product is zero if the vectors defined by the 2 vectors are orthogonal. It is positive if vectors are in the same direction, and negative if they are in opposite direction.
public static final double cross(Vector2D v1, Vector2D v2)
dx1*dy2 - dx2*dy1
cross product is zero for colinear vectors. It is positive if angle between vector 1 and vector 2 is comprised between 0 and PI, and negative otherwise.
public static final boolean isColinear(Vector2D v1, Vector2D v2)
public static final boolean isOrthogonal(Vector2D v1, Vector2D v2)
public double getX()
public double getY()
@Deprecated public void setX(double x)
@Deprecated public void setY(double y)
@Deprecated public void setVector(double x, double y)
@Deprecated public void setAsPolar(double rho, double theta)
public Vector2D getOpposite()
this
.public double getNorm()
public double getAngle()
public void normalize()
public Vector2D getNormalizedVector()
public boolean isColinear(Vector2D v)
public boolean isOrthogonal(Vector2D v)
public double dot(Vector2D v)
p
. Dot product id defined
by :
x1*y2 + x2*y1
Dot product is zero if the vectors defined by the 2 points are orthogonal. It is positive if vectors are in the same direction, and negative if they are in opposite direction.
public double cross(Vector2D v)
p
. Cross product is
defined by :
x1*y2 - x2*y1
cross product is zero for colinear vector. It is positive if angle between vector 1 and vector 2 is comprised between 0 and PI, and negative otherwise.
public Vector2D plus(Vector2D v)
public Vector2D minus(Vector2D v)
public Vector2D times(double k)
k
- the scale factorpublic Vector2D transform(AffineTransform2D trans)
trans
- an affine transformpublic boolean equals(Object obj)
Copyright © 2012 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.