Package zombie.iso
Class Vector2
java.lang.Object
zombie.iso.Vector2
- All Implemented Interfaces:
Cloneable
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionAdd another vector to this one and return thisstatic Vector2
Result = a + b * scaleSet the direction of this vector to point to another vector, maintaining the lengthfloat
angleBetween
(Vector2 other) Calculate angle between this and other vectorsfloat
Calculate the angle between this point and anotherclone()
Clone this vectorfloat
distanceTo
(Vector2 other) Calculate the distance between this point and anotherstatic float
dot
(float x, float y, float tx, float ty) float
boolean
See if this vector is equal to anotherstatic Vector2
Create a new vector from an AWT Pointstatic Vector2
fromLengthDirection
(float length, float direction) Create a new vector with a specified length and directionfloat
static float
getDirection
(float x, float y) float
Deprecated.The direction of the angle is backwards.float
get the length of this vectorfloat
get the squared length of this vectorfloat
getX()
float
getY()
float
void
rotate
(float rad) void
scale
(float scale) static Vector2
set
(float x, float y) Set the horizontal and vertical parts of this vectorMake this vector identical to another vectorsetDirection
(float direction) Set the direction of this vector, maintaining the lengthsetLength
(float length) Set the length of this vector, maintaining the directionsetLengthAndDirection
(float direction, float length) Set the length and direction of this vectorvoid
setX
(float x) void
setY
(float y) void
tangent()
Convert this vector to an AWT DimensionConvert this vector to an AWT PointtoString()
Returns a string representing this vector
-
Field Details
-
x
public float xThe horizontal part of this vector -
y
public float yThe vertical part of this vector
-
-
Constructor Details
-
Vector2
public Vector2()Create a new vector with zero length -
Vector2
Create a new vector which is identical to another vector- Parameters:
other
- TheVector2
to copy
-
Vector2
public Vector2(float x, float y) Create a new vector with specified horizontal and vertical parts- Parameters:
x
- The horizontal party
- The vertical part
-
-
Method Details
-
fromAwtPoint
Create a new vector from an AWT Point- Parameters:
p
- Thejava.awt.Point
to convert- Returns:
- A new
Vector2
representing the Point
-
fromLengthDirection
Create a new vector with a specified length and direction- Parameters:
direction
- The direction of the new vector, in radianslength
- The length of the new vector- Returns:
-
dot
public static float dot(float x, float y, float tx, float ty) -
addScaled
Result = a + b * scale- Returns:
- The supplied result vector.
-
rotate
public void rotate(float rad) -
add
Add another vector to this one and return this- Parameters:
other
- The otherVector2
to add to this one- Returns:
- this
-
aimAt
Set the direction of this vector to point to another vector, maintaining the length- Parameters:
other
- TheVector2
to point this one at.
-
angleTo
Calculate the angle between this point and another- Parameters:
other
- The second point as vector- Returns:
- The angle between them, in radians
-
angleBetween
Calculate angle between this and other vectors- Parameters:
other
- The other vector- Returns:
- The angle in radians in the range [0,PI]
-
clone
Clone this vector -
distanceTo
Calculate the distance between this point and another- Parameters:
other
- The second point as vector- Returns:
- The distance between them
-
dot
-
equals
See if this vector is equal to another -
getDirection
public float getDirection() -
getDirection
public static float getDirection(float x, float y) -
getDirectionNeg
Deprecated.The direction of the angle is backwards. Clockwise-positive.get the direction in which this vector is pointing
Note: if the length of this vector is 0, then the direction will also be 0- Returns:
- The direction in which this vector is pointing in radians
-
setDirection
Set the direction of this vector, maintaining the length- Parameters:
direction
- The new direction of this vector, in radians
-
getLength
public float getLength()get the length of this vector- Returns:
- The length of this vector
-
getLengthSquared
public float getLengthSquared()get the squared length of this vector- Returns:
- The squared length of this vector
-
setLength
Set the length of this vector, maintaining the direction- Parameters:
length
- The length of this vector
-
normalize
public float normalize() -
set
Make this vector identical to another vector- Parameters:
other
- TheVector2
to copy
-
set
Set the horizontal and vertical parts of this vector- Parameters:
x
- The horizontal party
- The vertical part
-
setLengthAndDirection
Set the length and direction of this vector- Parameters:
direction
- The direction of this vector, in radianslength
- The length of this vector
-
toAwtDimension
Convert this vector to an AWT Dimension- Returns:
- a
java.awt.Dimension
-
toAwtPoint
Convert this vector to an AWT Point- Returns:
- a
java.awt.Point
-
toString
Returns a string representing this vector -
getX
public float getX()- Returns:
- the x
-
setX
public void setX(float x) - Parameters:
x
- the x to set
-
getY
public float getY()- Returns:
- the y
-
setY
public void setY(float y) - Parameters:
y
- the y to set
-
tangent
public void tangent() -
scale
public void scale(float scale) -
scale
-