public class Location extends Object implements Cloneable, ConfigurationSerializable
Constructor and Description |
---|
Location(World world,
double x,
double y,
double z)
Constructs a new Location with the given coordinates
|
Location(World world,
double x,
double y,
double z,
float yaw,
float pitch)
Constructs a new Location with the given coordinates and direction
|
Modifier and Type | Method and Description |
---|---|
Location |
add(double x,
double y,
double z)
Adds the location by another.
|
Location |
add(Location vec)
Adds the location by another.
|
Location |
add(Vector vec)
Adds the location by a vector.
|
void |
checkFinite()
Check if each component of this Location is finite.
|
Location |
clone() |
static Location |
deserialize(Map<String,Object> args)
Required method for deserialization
|
double |
distance(Location o)
Get the distance between this location and another.
|
double |
distanceSquared(Location o)
Get the squared distance between this location and another.
|
boolean |
equals(Object obj) |
Block |
getBlock()
Gets the block at the represented location
|
int |
getBlockX()
Gets the floored value of the X component, indicating the block that
this location is contained with.
|
int |
getBlockY()
Gets the floored value of the Y component, indicating the block that
this location is contained with.
|
int |
getBlockZ()
Gets the floored value of the Z component, indicating the block that
this location is contained with.
|
Chunk |
getChunk()
Gets the chunk at the represented location
|
Vector |
getDirection()
Gets a unit-vector pointing in the direction that this Location is
facing.
|
float |
getPitch()
Gets the pitch of this location, measured in degrees.
|
World |
getWorld()
Gets the world that this location resides in
|
double |
getX()
Gets the x-coordinate of this location
|
double |
getY()
Gets the y-coordinate of this location
|
float |
getYaw()
Gets the yaw of this location, measured in degrees.
|
double |
getZ()
Gets the z-coordinate of this location
|
int |
hashCode() |
double |
length()
Gets the magnitude of the location, defined as sqrt(x^2+y^2+z^2).
|
double |
lengthSquared()
Gets the magnitude of the location squared.
|
static int |
locToBlock(double loc)
Safely converts a double (location coordinate) to an int (block
coordinate)
|
Location |
multiply(double m)
Performs scalar multiplication, multiplying all components with a
scalar.
|
Map<String,Object> |
serialize()
Creates a Map representation of this class.
|
Location |
setDirection(Vector vector)
|
void |
setPitch(float pitch)
Sets the pitch of this location, measured in degrees.
|
void |
setWorld(World world)
Sets the world that this location resides in
|
void |
setX(double x)
Sets the x-coordinate of this location
|
void |
setY(double y)
Sets the y-coordinate of this location
|
void |
setYaw(float yaw)
Sets the yaw of this location, measured in degrees.
|
void |
setZ(double z)
Sets the z-coordinate of this location
|
Location |
subtract(double x,
double y,
double z)
Subtracts the location by another.
|
Location |
subtract(Location vec)
Subtracts the location by another.
|
Location |
subtract(Vector vec)
Subtracts the location by a vector.
|
String |
toString() |
Vector |
toVector()
Constructs a new
Vector based on this Location |
Location |
zero()
Zero this location's components.
|
public Location(World world, double x, double y, double z)
world
- The world in which this location residesx
- The x-coordinate of this new locationy
- The y-coordinate of this new locationz
- The z-coordinate of this new locationpublic Location(World world, double x, double y, double z, float yaw, float pitch)
world
- The world in which this location residesx
- The x-coordinate of this new locationy
- The y-coordinate of this new locationz
- The z-coordinate of this new locationyaw
- The absolute rotation on the x-plane, in degreespitch
- The absolute rotation on the y-plane, in degreespublic void setWorld(World world)
world
- New world that this location resides inpublic World getWorld()
public Chunk getChunk()
public Block getBlock()
public void setX(double x)
x
- X-coordinatepublic double getX()
public int getBlockX()
public void setY(double y)
y
- y-coordinatepublic double getY()
public int getBlockY()
public void setZ(double z)
z
- z-coordinatepublic double getZ()
public int getBlockZ()
public void setYaw(float yaw)
yaw
- new rotation's yawpublic float getYaw()
public void setPitch(float pitch)
pitch
- new incline's pitchpublic float getPitch()
public Vector getDirection()
public Location setDirection(Vector vector)
vector
- the direction vectorpublic Location add(Location vec)
vec
- The other locationIllegalArgumentException
- for differing worldsVector
public Location add(Vector vec)
vec
- Vector to useVector
public Location add(double x, double y, double z)
x
- X coordinatey
- Y coordinatez
- Z coordinateVector
public Location subtract(Location vec)
vec
- The other locationIllegalArgumentException
- for differing worldsVector
public Location subtract(Vector vec)
vec
- The vector to useVector
public Location subtract(double x, double y, double z)
x
- X coordinatey
- Y coordinatez
- Z coordinateVector
public double length()
Vector
public double lengthSquared()
Vector
public double distance(Location o)
o
- The other locationIllegalArgumentException
- for differing worldsVector
public double distanceSquared(Location o)
o
- The other locationIllegalArgumentException
- for differing worldsVector
public Location multiply(double m)
m
- The factorVector
public Location zero()
Vector
public Vector toVector()
Vector
based on this Locationpublic void checkFinite() throws IllegalArgumentException
IllegalArgumentException
- if any component is not finitepublic static int locToBlock(double loc)
loc
- Precise coordinatepublic Map<String,Object> serialize()
ConfigurationSerializable
This class must provide a method to restore this class, as defined in
the ConfigurationSerializable
interface javadocs.
serialize
in interface ConfigurationSerializable
public static Location deserialize(Map<String,Object> args)
args
- map to deserializeIllegalArgumentException
- if the world don't existsConfigurationSerializable
Copyright © 2017. All rights reserved.