Merge pull request #2596 from Abextm/perspective-nonnull

runelite-api: Annotate Perspective methods with `@Nonnull`
This commit is contained in:
Adam
2018-05-11 17:35:44 -04:00
committed by GitHub

View File

@@ -34,6 +34,7 @@ import java.awt.image.BufferedImage;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import javax.annotation.Nonnull;
import net.runelite.api.coords.LocalPoint; import net.runelite.api.coords.LocalPoint;
import net.runelite.api.model.Jarvis; import net.runelite.api.model.Jarvis;
import net.runelite.api.model.Triangle; import net.runelite.api.model.Triangle;
@@ -71,7 +72,7 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the position in * @return a {@link Point} on screen corresponding to the position in
* 3D-space * 3D-space
*/ */
public static Point worldToCanvas(Client client, int x, int y, int plane) public static Point worldToCanvas(@Nonnull Client client, int x, int y, int plane)
{ {
return worldToCanvas(client, x, y, plane, 0); return worldToCanvas(client, x, y, plane, 0);
} }
@@ -88,7 +89,7 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the position in * @return a {@link Point} on screen corresponding to the position in
* 3D-space * 3D-space
*/ */
public static Point worldToCanvas(Client client, int x, int y, int plane, int zOffset) public static Point worldToCanvas(@Nonnull Client client, int x, int y, int plane, int zOffset)
{ {
return worldToCanvas(client, x, y, plane, x, y, zOffset); return worldToCanvas(client, x, y, plane, x, y, zOffset);
} }
@@ -110,7 +111,7 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the position in * @return a {@link Point} on screen corresponding to the position in
* 3D-space * 3D-space
*/ */
public static Point worldToCanvas(Client client, int x, int y, int plane, int tileX, int tileY) public static Point worldToCanvas(@Nonnull Client client, int x, int y, int plane, int tileX, int tileY)
{ {
return worldToCanvas(client, x, y, plane, tileX, tileY, 0); return worldToCanvas(client, x, y, plane, tileX, tileY, 0);
} }
@@ -133,7 +134,7 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the position in * @return a {@link Point} on screen corresponding to the position in
* 3D-space * 3D-space
*/ */
public static Point worldToCanvas(Client client, int x, int y, int plane, int tileX, int tileY, int zOffset) public static Point worldToCanvas(@Nonnull Client client, int x, int y, int plane, int tileX, int tileY, int zOffset)
{ {
if (x >= 128 && y >= 128 && x <= 13056 && y <= 13056) if (x >= 128 && y >= 128 && x <= 13056 && y <= 13056)
{ {
@@ -179,7 +180,7 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the position in * @return a {@link Point} on screen corresponding to the position in
* 3D-space * 3D-space
*/ */
public static Point worldToMiniMap(Client client, int x, int y) public static Point worldToMiniMap(@Nonnull Client client, int x, int y)
{ {
return worldToMiniMap(client, x, y, 6400); return worldToMiniMap(client, x, y, 6400);
} }
@@ -195,7 +196,7 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the position in * @return a {@link Point} on screen corresponding to the position in
* 3D-space * 3D-space
*/ */
public static Point worldToMiniMap(Client client, int x, int y, int distance) public static Point worldToMiniMap(@Nonnull Client client, int x, int y, int distance)
{ {
int angle = client.getMapAngle() & 0x7FF; int angle = client.getMapAngle() & 0x7FF;
@@ -233,7 +234,7 @@ public class Perspective
* @param plane the client plane/ground level * @param plane the client plane/ground level
* @return the offset from the ground of the tile * @return the offset from the ground of the tile
*/ */
public static int getTileHeight(Client client, int localX, int localY, int plane) public static int getTileHeight(@Nonnull Client client, int localX, int localY, int plane)
{ {
int sceneX = localX >> LOCAL_COORD_BITS; int sceneX = localX >> LOCAL_COORD_BITS;
int sceneY = localY >> LOCAL_COORD_BITS; int sceneY = localY >> LOCAL_COORD_BITS;
@@ -266,7 +267,7 @@ public class Perspective
* @return a {@link Polygon} on screen corresponding to the given * @return a {@link Polygon} on screen corresponding to the given
* localLocation. * localLocation.
*/ */
public static Polygon getCanvasTilePoly(Client client, LocalPoint localLocation) public static Polygon getCanvasTilePoly(@Nonnull Client client, @Nonnull LocalPoint localLocation)
{ {
return getCanvasTileAreaPoly(client, localLocation, 1); return getCanvasTileAreaPoly(client, localLocation, 1);
} }
@@ -280,7 +281,7 @@ public class Perspective
* size = 3 * size = 3
* @return a polygon representing the tiles in the area * @return a polygon representing the tiles in the area
*/ */
public static Polygon getCanvasTileAreaPoly(Client client, LocalPoint localLocation, int size) public static Polygon getCanvasTileAreaPoly(@Nonnull Client client, @Nonnull LocalPoint localLocation, int size)
{ {
int plane = client.getPlane(); int plane = client.getPlane();
int halfTile = LOCAL_TILE_SIZE / 2; int halfTile = LOCAL_TILE_SIZE / 2;
@@ -329,7 +330,13 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the given * @return a {@link Point} on screen corresponding to the given
* localLocation. * localLocation.
*/ */
public static Point getCanvasTextLocation(Client client, Graphics2D graphics, LocalPoint localLocation, String text, int zOffset) public static Point getCanvasTextLocation(
@Nonnull Client client,
@Nonnull Graphics2D graphics,
@Nonnull LocalPoint localLocation,
@Nonnull String text,
int zOffset
)
{ {
int plane = client.getPlane(); int plane = client.getPlane();
@@ -358,7 +365,12 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the given * @return a {@link Point} on screen corresponding to the given
* localLocation. * localLocation.
*/ */
public static Point getCanvasImageLocation(Client client, Graphics2D graphics, LocalPoint localLocation, BufferedImage image, int zOffset) public static Point getCanvasImageLocation(
@Nonnull Client client,
@Nonnull Graphics2D graphics,
@Nonnull LocalPoint localLocation,
@Nonnull BufferedImage image,
int zOffset)
{ {
int plane = client.getPlane(); int plane = client.getPlane();
@@ -384,7 +396,11 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the given * @return a {@link Point} on screen corresponding to the given
* localLocation. * localLocation.
*/ */
public static Point getMiniMapImageLocation(Client client, LocalPoint localLocation, BufferedImage image) public static Point getMiniMapImageLocation(
@Nonnull Client client,
@Nonnull LocalPoint localLocation,
@Nonnull BufferedImage image
)
{ {
Point p = Perspective.worldToMiniMap(client, localLocation.getX(), localLocation.getY()); Point p = Perspective.worldToMiniMap(client, localLocation.getX(), localLocation.getY());
@@ -410,7 +426,13 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the given * @return a {@link Point} on screen corresponding to the given
* localLocation. * localLocation.
*/ */
public static Point getCanvasSpriteLocation(Client client, Graphics2D graphics, LocalPoint localLocation, SpritePixels sprite, int zOffset) public static Point getCanvasSpriteLocation(
@Nonnull Client client,
@Nonnull Graphics2D graphics,
@Nonnull LocalPoint localLocation,
@Nonnull SpritePixels sprite,
int zOffset
)
{ {
int plane = client.getPlane(); int plane = client.getPlane();
@@ -440,7 +462,7 @@ public class Perspective
* @param tileY the Y coordinate of the tile that the object using the model is on * @param tileY the Y coordinate of the tile that the object using the model is on
* @return the clickable area of {@code model}, rotated to angle {@code orientation}, at the height of tile ({@code tileX}, {@code tileY}) * @return the clickable area of {@code model}, rotated to angle {@code orientation}, at the height of tile ({@code tileX}, {@code tileY})
*/ */
public static Area getClickbox(Client client, Model model, int orientation, int tileX, int tileY) public static Area getClickbox(@Nonnull Client client, Model model, int orientation, int tileX, int tileY)
{ {
if (model == null) if (model == null)
{ {
@@ -467,7 +489,13 @@ public class Perspective
return clickBox; return clickBox;
} }
private static Area get2DGeometry(Client client, List<Triangle> triangles, int orientation, int tileX, int tileY) private static Area get2DGeometry(
@Nonnull Client client,
@Nonnull List<Triangle> triangles,
int orientation,
int tileX,
int tileY
)
{ {
int radius = 5; int radius = 5;
Area geometry = new Area(); Area geometry = new Area();
@@ -530,7 +558,13 @@ public class Perspective
return geometry; return geometry;
} }
private static Area getAABB(Client client, List<Vertex> vertices, int orientation, int tileX, int tileY) private static Area getAABB(
@Nonnull Client client,
@Nonnull List<Vertex> vertices,
int orientation,
int tileX,
int tileY
)
{ {
int maxX = 0; int maxX = 0;
int minX = 0; int minX = 0;
@@ -656,7 +690,12 @@ public class Perspective
* @return a {@link Point} on screen corresponding to the given * @return a {@link Point} on screen corresponding to the given
* localLocation. * localLocation.
*/ */
public static Point getCanvasTextMiniMapLocation(Client client, Graphics2D graphics, LocalPoint localLocation, String text) public static Point getCanvasTextMiniMapLocation(
@Nonnull Client client,
@Nonnull Graphics2D graphics,
@Nonnull LocalPoint localLocation,
@Nonnull String text
)
{ {
Point p = Perspective.worldToMiniMap(client, localLocation.getX(), localLocation.getY()); Point p = Perspective.worldToMiniMap(client, localLocation.getX(), localLocation.getY());