Package org.bukkit
Class Location
java.lang.Object
org.bukkit.Location
- All Implemented Interfaces:
- Cloneable,- ConfigurationSerializable
Represents a 3-dimensional position in a world.
 
No constraints are placed on any angular values other than that they be specified in degrees. This means that negative angles or angles of greater magnitude than 360 are valid, but may be normalized to any other equivalent representation by the implementation.
No constraints are placed on any angular values other than that they be specified in degrees. This means that negative angles or angles of greater magnitude than 360 are valid, but may be normalized to any other equivalent representation by the implementation.
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionadd(double x, double y, double z) Adds the location by another.Adds the location by another.Adds the location by a vector.voidCheck if each component of this Location is finite.clone()static Locationdeserialize(Map<String, Object> args) Required method for deserializationdoubleGet the distance between this location and another.doubleGet the squared distance between this location and another.booleangetBlock()Gets the block at the represented locationintGets the floored value of the X component, indicating the block that this location is contained with.intGets the floored value of the Y component, indicating the block that this location is contained with.intGets the floored value of the Z component, indicating the block that this location is contained with.getChunk()Gets the chunk at the represented locationGets a unit-vector pointing in the direction that this Location is facing.floatgetPitch()Gets the pitch of this location, measured in degrees.getWorld()Gets the world that this location resides indoublegetX()Gets the x-coordinate of this locationdoublegetY()Gets the y-coordinate of this locationfloatgetYaw()Gets the yaw of this location, measured in degrees.doublegetZ()Gets the z-coordinate of this locationinthashCode()booleanChecks if world in this location is present and loaded.doublelength()Gets the magnitude of the location, defined as sqrt(x^2+y^2+z^2).doubleGets the magnitude of the location squared.static intlocToBlock(double loc) Safely converts a double (location coordinate) to an int (block coordinate)multiply(double m) Performs scalar multiplication, multiplying all components with a scalar.static floatnormalizePitch(float pitch) Normalizes the given pitch angle to a value between+/-90degrees.static floatnormalizeYaw(float yaw) Normalizes the given yaw angle to a value between+/-180degrees.Creates a Map representation of this class.setDirection(Vector vector) voidsetPitch(float pitch) Sets the pitch of this location, measured in degrees.voidSets the world that this location resides invoidsetX(double x) Sets the x-coordinate of this locationvoidsetY(double y) Sets the y-coordinate of this locationvoidsetYaw(float yaw) Sets the yaw of this location, measured in degrees.voidsetZ(double z) Sets the z-coordinate of this locationsubtract(double x, double y, double z) Subtracts the location by another.Subtracts the location by another.Subtracts the location by a vector.toString()toVector()Constructs a newVectorbased on this Locationzero()Zero this location's components.
- 
Constructor Details- 
LocationConstructs a new Location with the given coordinates- Parameters:
- world- The world in which this location resides
- x- The x-coordinate of this new location
- y- The y-coordinate of this new location
- z- The z-coordinate of this new location
 
- 
LocationConstructs a new Location with the given coordinates and direction- Parameters:
- world- The world in which this location resides
- x- The x-coordinate of this new location
- y- The y-coordinate of this new location
- z- The z-coordinate of this new location
- yaw- The absolute rotation on the x-plane, in degrees
- pitch- The absolute rotation on the y-plane, in degrees
 
 
- 
- 
Method Details- 
setWorldSets the world that this location resides in- Parameters:
- world- New world that this location resides in
 
- 
isWorldLoadedpublic boolean isWorldLoaded()Checks if world in this location is present and loaded.- Returns:
- true if is loaded, otherwise false
 
- 
getWorldGets the world that this location resides in- Returns:
- World that contains this location, or nullif it is not set
- Throws:
- IllegalArgumentException- when world is unloaded
- See Also:
 
- 
getChunkGets the chunk at the represented location- Returns:
- Chunk at the represented location
 
- 
getBlockGets the block at the represented location- Returns:
- Block at the represented location
 
- 
setXpublic void setX(double x) Sets the x-coordinate of this location- Parameters:
- x- X-coordinate
 
- 
getXpublic double getX()Gets the x-coordinate of this location- Returns:
- x-coordinate
 
- 
getBlockXpublic int getBlockX()Gets the floored value of the X component, indicating the block that this location is contained with.- Returns:
- block X
 
- 
setYpublic void setY(double y) Sets the y-coordinate of this location- Parameters:
- y- y-coordinate
 
- 
getYpublic double getY()Gets the y-coordinate of this location- Returns:
- y-coordinate
 
- 
getBlockYpublic int getBlockY()Gets the floored value of the Y component, indicating the block that this location is contained with.- Returns:
- block y
 
- 
setZpublic void setZ(double z) Sets the z-coordinate of this location- Parameters:
- z- z-coordinate
 
- 
getZpublic double getZ()Gets the z-coordinate of this location- Returns:
- z-coordinate
 
- 
getBlockZpublic int getBlockZ()Gets the floored value of the Z component, indicating the block that this location is contained with.- Returns:
- block z
 
- 
setYawpublic void setYaw(float yaw) Sets the yaw of this location, measured in degrees.- A yaw of 0 or 360 represents the positive z direction.
- A yaw of 180 represents the negative z direction.
- A yaw of 90 represents the negative x direction.
- A yaw of 270 represents the positive x direction.
 - Parameters:
- yaw- new rotation's yaw
 
- 
getYawpublic float getYaw()Gets the yaw of this location, measured in degrees.- A yaw of 0 or 360 represents the positive z direction.
- A yaw of 180 represents the negative z direction.
- A yaw of 90 represents the negative x direction.
- A yaw of 270 represents the positive x direction.
 - Returns:
- the rotation's yaw
 
- 
setPitchpublic void setPitch(float pitch) Sets the pitch of this location, measured in degrees.- A pitch of 0 represents level forward facing.
- A pitch of 90 represents downward facing, or negative y direction.
- A pitch of -90 represents upward facing, or positive y direction.
 - Parameters:
- pitch- new incline's pitch
 
- 
getPitchpublic float getPitch()Gets the pitch of this location, measured in degrees.- A pitch of 0 represents level forward facing.
- A pitch of 90 represents downward facing, or negative y direction.
- A pitch of -90 represents upward facing, or positive y direction.
 - Returns:
- the incline's pitch
 
- 
getDirectionGets a unit-vector pointing in the direction that this Location is facing.
- 
setDirection- Parameters:
- vector- the direction vector
- Returns:
- the same location
 
- 
addAdds the location by another.- Parameters:
- vec- The other location
- Returns:
- the same location
- Throws:
- IllegalArgumentException- for differing worlds
- See Also:
 
- 
addAdds the location by a vector.- Parameters:
- vec- Vector to use
- Returns:
- the same location
- See Also:
 
- 
addAdds the location by another. Not world-aware.- Parameters:
- x- X coordinate
- y- Y coordinate
- z- Z coordinate
- Returns:
- the same location
- See Also:
 
- 
subtractSubtracts the location by another.- Parameters:
- vec- The other location
- Returns:
- the same location
- Throws:
- IllegalArgumentException- for differing worlds
- See Also:
 
- 
subtractSubtracts the location by a vector.- Parameters:
- vec- The vector to use
- Returns:
- the same location
- See Also:
 
- 
subtractSubtracts the location by another. Not world-aware and orientation independent.- Parameters:
- x- X coordinate
- y- Y coordinate
- z- Z coordinate
- Returns:
- the same location
- See Also:
 
- 
lengthpublic double length()Gets the magnitude of the location, defined as sqrt(x^2+y^2+z^2). The value of this method is not cached and uses a costly square-root function, so do not repeatedly call this method to get the location's magnitude. NaN will be returned if the inner result of the sqrt() function overflows, which will be caused if the length is too long. Not world-aware and orientation independent.- Returns:
- the magnitude
- See Also:
 
- 
lengthSquaredpublic double lengthSquared()Gets the magnitude of the location squared. Not world-aware and orientation independent.- Returns:
- the magnitude
- See Also:
 
- 
distanceGet the distance between this location and another. The value of this method is not cached and uses a costly square-root function, so do not repeatedly call this method to get the location's magnitude. NaN will be returned if the inner result of the sqrt() function overflows, which will be caused if the distance is too long.- Parameters:
- o- The other location
- Returns:
- the distance
- Throws:
- IllegalArgumentException- for differing worlds
- See Also:
 
- 
distanceSquaredGet the squared distance between this location and another.- Parameters:
- o- The other location
- Returns:
- the distance
- Throws:
- IllegalArgumentException- for differing worlds
- See Also:
 
- 
multiplyPerforms scalar multiplication, multiplying all components with a scalar. Not world-aware.- Parameters:
- m- The factor
- Returns:
- the same location
- See Also:
 
- 
zeroZero this location's components. Not world-aware.- Returns:
- the same location
- See Also:
 
- 
equals
- 
hashCodepublic int hashCode()
- 
toString
- 
toVectorConstructs a newVectorbased on this Location- Returns:
- New Vector containing the coordinates represented by this Location
 
- 
clone
- 
checkFiniteCheck if each component of this Location is finite.- Throws:
- IllegalArgumentException- if any component is not finite
 
- 
locToBlockpublic static int locToBlock(double loc) Safely converts a double (location coordinate) to an int (block coordinate)- Parameters:
- loc- Precise coordinate
- Returns:
- Block coordinate
 
- 
serializeDescription copied from interface:ConfigurationSerializableCreates a Map representation of this class.This class must provide a method to restore this class, as defined in the ConfigurationSerializableinterface javadocs.- Specified by:
- serializein interface- ConfigurationSerializable
- Returns:
- Map containing the current state of this class
 
- 
deserializeRequired method for deserialization- Parameters:
- args- map to deserialize
- Returns:
- deserialized location
- Throws:
- IllegalArgumentException- if the world don't exists
- See Also:
 
- 
normalizeYawpublic static float normalizeYaw(float yaw) Normalizes the given yaw angle to a value between+/-180degrees.- Parameters:
- yaw- the yaw in degrees
- Returns:
- the normalized yaw in degrees
- See Also:
 
- 
normalizePitchpublic static float normalizePitch(float pitch) Normalizes the given pitch angle to a value between+/-90degrees.- Parameters:
- pitch- the pitch in degrees
- Returns:
- the normalized pitch in degrees
- See Also:
 
 
-