From 5471e916236f9b42ca2c717388764d0d706b2402 Mon Sep 17 00:00:00 2001 From: Kyle Goodale Date: Fri, 7 Dec 2018 13:59:54 -0500 Subject: [PATCH] perspective: use Path2D for construction instead of area in get2DGeometry Path2D is faster than area for appending and checking contains. --- .../src/main/java/net/runelite/api/Perspective.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Perspective.java b/runelite-api/src/main/java/net/runelite/api/Perspective.java index 0d66d5c396..8bde093ad4 100644 --- a/runelite-api/src/main/java/net/runelite/api/Perspective.java +++ b/runelite-api/src/main/java/net/runelite/api/Perspective.java @@ -29,6 +29,7 @@ import java.awt.Graphics2D; import java.awt.Polygon; import java.awt.Rectangle; import java.awt.geom.Area; +import java.awt.geom.Path2D; import java.awt.geom.Rectangle2D; import java.awt.image.BufferedImage; import java.util.ArrayList; @@ -546,7 +547,7 @@ public class Perspective ) { int radius = 5; - Area geometry = new Area(); + Path2D.Double geometry = new Path2D.Double(); final int tileHeight = getTileHeight(client, point, client.getPlane()); @@ -604,10 +605,10 @@ public class Perspective continue; } - geometry.add(new Area(clickableRect)); + geometry.append(clickableRect, false); } - return geometry; + return new Area(geometry); } private static Area getAABB(