From 8d19288f81826a9728693f66d704c2063db3a828 Mon Sep 17 00:00:00 2001 From: yugecin Date: Sun, 5 Mar 2017 21:20:56 +0100 Subject: [PATCH] remove the pair --- src/itdelatrisu/opsu/Utils.java | 10 ---------- src/itdelatrisu/opsu/render/CurveRenderState.java | 12 +++++++----- .../opsudance/objects/curves/FakeCombinedCurve.java | 11 ++++++----- 3 files changed, 13 insertions(+), 20 deletions(-) diff --git a/src/itdelatrisu/opsu/Utils.java b/src/itdelatrisu/opsu/Utils.java index 3043131f..9930f1d1 100644 --- a/src/itdelatrisu/opsu/Utils.java +++ b/src/itdelatrisu/opsu/Utils.java @@ -660,14 +660,4 @@ public class Utils { (float) (Options.height / 2d + Math.sin(ang) * d) }; } - - public static class Pair { - public F first; - public S second; - public Pair(F first, S second) { - this.first = first; - this.second = second; - } - } - } diff --git a/src/itdelatrisu/opsu/render/CurveRenderState.java b/src/itdelatrisu/opsu/render/CurveRenderState.java index 9670680d..d897f117 100644 --- a/src/itdelatrisu/opsu/render/CurveRenderState.java +++ b/src/itdelatrisu/opsu/render/CurveRenderState.java @@ -26,7 +26,8 @@ import itdelatrisu.opsu.objects.curves.Vec2f; import java.nio.ByteBuffer; import java.nio.FloatBuffer; import java.nio.IntBuffer; -import java.util.LinkedList; +import java.util.Iterator; +import java.util.List; import org.lwjgl.BufferUtils; import org.lwjgl.opengl.EXTFramebufferObject; @@ -70,7 +71,7 @@ public class CurveRenderState { private int spliceFrom; private int spliceTo; - protected LinkedList> pointsToRender; + protected List pointsToRender; private final int mirrors; @@ -141,7 +142,7 @@ public class CurveRenderState { lastPointDrawn = -1; // force redraw } - public void draw(Color color, Color borderColor, LinkedList> pointsToRender) { + public void draw(Color color, Color borderColor, List pointsToRender) { lastPointDrawn = -1; firstPointDrawn = -1; this.pointsToRender = pointsToRender; @@ -386,8 +387,9 @@ public class CurveRenderState { } private void renderCurve(int mirror) { - for (Utils.Pair point : pointsToRender) { - for (int i = point.first * 2; i < point.second * 2 - 1; ++i) { + Iterator iter = pointsToRender.iterator(); + while (iter.hasNext()) { + for (int i = iter.next() * 2, end = iter.next() * 2 - 1; i < end; ++i) { final int index = i + curve.length * 2 * mirror; GL11.glDrawArrays(GL11.GL_TRIANGLE_FAN, index * (NewCurveStyleState.DIVIDES + 2), NewCurveStyleState.DIVIDES + 2); } diff --git a/src/yugecin/opsudance/objects/curves/FakeCombinedCurve.java b/src/yugecin/opsudance/objects/curves/FakeCombinedCurve.java index 79239640..db0d4f65 100644 --- a/src/yugecin/opsudance/objects/curves/FakeCombinedCurve.java +++ b/src/yugecin/opsudance/objects/curves/FakeCombinedCurve.java @@ -17,23 +17,23 @@ */ package yugecin.opsudance.objects.curves; -import itdelatrisu.opsu.Utils; import itdelatrisu.opsu.beatmap.HitObject; import itdelatrisu.opsu.objects.curves.Curve; import itdelatrisu.opsu.objects.curves.Vec2f; import itdelatrisu.opsu.render.CurveRenderState; import org.newdawn.slick.Color; -import java.util.LinkedList; +import java.util.ArrayList; +import java.util.List; public class FakeCombinedCurve extends Curve { - private LinkedList> pointsToRender; + private List pointsToRender; public FakeCombinedCurve(Vec2f[] points) { super(new HitObject(0, 0, 0), false); this.curve = points; - pointsToRender = new LinkedList<>(); + pointsToRender = new ArrayList<>(); } public void initForFrame() { @@ -41,7 +41,8 @@ public class FakeCombinedCurve extends Curve { } public void addRange(int from, int to) { - pointsToRender.add(new Utils.Pair<>(from, to)); + pointsToRender.add(from); + pointsToRender.add(to); } @Override