From 409aa9eb1fd2c506b717790d704809ce9c74070f Mon Sep 17 00:00:00 2001 From: Adam Date: Sat, 12 Aug 2017 22:26:43 -0400 Subject: [PATCH] runelite-api: move rotate() to Vertex --- .../main/java/net/runelite/api/Player.java | 18 +++--------------- .../java/net/runelite/api/model/Vertex.java | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Player.java b/runelite-api/src/main/java/net/runelite/api/Player.java index fd5422e59c..b9764e8037 100644 --- a/runelite-api/src/main/java/net/runelite/api/Player.java +++ b/runelite-api/src/main/java/net/runelite/api/Player.java @@ -128,24 +128,12 @@ public class Player extends Actor Vertex c = triangle.getC(); Triangle rotatedTriangle = new Triangle( - rotate(a, orientation), - rotate(b, orientation), - rotate(c, orientation) + a.rotate(orientation), + b.rotate(orientation), + c.rotate(orientation) ); rotatedTriangles.add(rotatedTriangle); } return rotatedTriangles; } - - private Vertex rotate(Vertex vertex, int orientation) - { - int sin = Perspective.SINE[orientation]; - int cos = Perspective.COSINE[orientation]; - - return new Vertex( - vertex.getX() * cos + vertex.getZ() * sin >> 16, - vertex.getY(), - vertex.getZ() * cos - vertex.getX() * sin >> 16 - ); - } } diff --git a/runelite-api/src/main/java/net/runelite/api/model/Vertex.java b/runelite-api/src/main/java/net/runelite/api/model/Vertex.java index c4d8c05cc4..70b9c6adff 100644 --- a/runelite-api/src/main/java/net/runelite/api/model/Vertex.java +++ b/runelite-api/src/main/java/net/runelite/api/model/Vertex.java @@ -24,6 +24,8 @@ */ package net.runelite.api.model; +import net.runelite.api.Perspective; + public class Vertex { private final int x; @@ -94,4 +96,21 @@ public class Vertex { return z; } + + /** + * Rotate the vertex by the given orientation + * @param orientation + * @return the newly rotated vertex + */ + public Vertex rotate(int orientation) + { + int sin = Perspective.SINE[orientation]; + int cos = Perspective.COSINE[orientation]; + + return new Vertex( + x * cos + z * sin >> 16, + y, + z * cos - x * sin >> 16 + ); + } }