Some package shifting. Alpha stack now toggleable.

This commit is contained in:
ondra
2014-04-16 14:46:43 +02:00
parent 6843e746bc
commit 043dd69c4a
96 changed files with 278 additions and 249 deletions
@@ -9,9 +9,9 @@ import java.util.ArrayList;
import java.util.Map.Entry;
import java.util.TreeMap;
import mightypork.util.constraints.vect.Vect;
import mightypork.util.constraints.vect.VectConst;
import mightypork.util.math.Range;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.math.constraints.vect.VectConst;
import mightypork.util.objects.Convert;
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints;
package mightypork.util.constraints;
/**
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints;
package mightypork.util.constraints;
/**
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints;
package mightypork.util.constraints;
/**
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints;
package mightypork.util.constraints;
/**
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints;
package mightypork.util.constraints;
import java.util.LinkedHashSet;
@@ -1,15 +1,15 @@
package mightypork.util.math.constraints.num;
package mightypork.util.constraints.num;
import mightypork.util.annotations.FactoryMethod;
import mightypork.util.constraints.DigestCache;
import mightypork.util.constraints.Digestable;
import mightypork.util.constraints.num.caching.NumCache;
import mightypork.util.constraints.num.caching.NumDigest;
import mightypork.util.constraints.num.mutable.NumVar;
import mightypork.util.constraints.num.proxy.NumBound;
import mightypork.util.constraints.num.proxy.NumBoundAdapter;
import mightypork.util.math.Calc;
import mightypork.util.math.constraints.DigestCache;
import mightypork.util.math.constraints.Digestable;
import mightypork.util.math.constraints.num.caching.NumCache;
import mightypork.util.math.constraints.num.caching.NumDigest;
import mightypork.util.math.constraints.num.mutable.NumVar;
import mightypork.util.math.constraints.num.proxy.NumBound;
import mightypork.util.math.constraints.num.proxy.NumBoundAdapter;
public abstract class Num implements NumBound, Digestable<NumDigest> {
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.num;
package mightypork.util.constraints.num;
import mightypork.util.math.constraints.num.caching.NumDigest;
import mightypork.util.constraints.num.caching.NumDigest;
/**
@@ -1,10 +1,10 @@
package mightypork.util.math.constraints.num.caching;
package mightypork.util.constraints.num.caching;
import mightypork.util.math.constraints.ConstraintCache;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.math.constraints.num.mutable.NumVar;
import mightypork.util.math.constraints.num.proxy.NumAdapter;
import mightypork.util.constraints.ConstraintCache;
import mightypork.util.constraints.num.Num;
import mightypork.util.constraints.num.mutable.NumVar;
import mightypork.util.constraints.num.proxy.NumAdapter;
/**
@@ -1,8 +1,8 @@
package mightypork.util.math.constraints.num.caching;
package mightypork.util.constraints.num.caching;
import mightypork.util.annotations.DefaultImpl;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.num.caching;
package mightypork.util.constraints.num.caching;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
public class NumDigest {
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints.num.mutable;
package mightypork.util.constraints.num.mutable;
import mightypork.util.control.timing.Pauseable;
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints.num.mutable;
package mightypork.util.constraints.num.mutable;
import mightypork.util.math.Calc;
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints.num.mutable;
package mightypork.util.constraints.num.mutable;
import mightypork.util.math.Calc;
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.num.mutable;
package mightypork.util.constraints.num.mutable;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.num.mutable;
package mightypork.util.constraints.num.mutable;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.num.proxy;
package mightypork.util.constraints.num.proxy;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
public abstract class NumAdapter extends Num {
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.num.proxy;
package mightypork.util.constraints.num.proxy;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.num.proxy;
package mightypork.util.constraints.num.proxy;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
public class NumBoundAdapter extends NumAdapter implements PluggableNumBound {
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.num.proxy;
package mightypork.util.constraints.num.proxy;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
public class NumProxy extends NumAdapter {
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints.num.proxy;
package mightypork.util.constraints.num.proxy;
/**
@@ -1,20 +1,20 @@
package mightypork.util.math.constraints.rect;
package mightypork.util.constraints.rect;
import mightypork.util.annotations.FactoryMethod;
import mightypork.util.math.constraints.DigestCache;
import mightypork.util.math.constraints.Digestable;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.math.constraints.num.NumConst;
import mightypork.util.math.constraints.rect.builders.TiledRect;
import mightypork.util.math.constraints.rect.caching.RectCache;
import mightypork.util.math.constraints.rect.caching.RectDigest;
import mightypork.util.math.constraints.rect.mutable.RectVar;
import mightypork.util.math.constraints.rect.proxy.RectBound;
import mightypork.util.math.constraints.rect.proxy.RectBoundAdapter;
import mightypork.util.math.constraints.rect.proxy.RectVectAdapter;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.math.constraints.vect.VectConst;
import mightypork.util.constraints.DigestCache;
import mightypork.util.constraints.Digestable;
import mightypork.util.constraints.num.Num;
import mightypork.util.constraints.num.NumConst;
import mightypork.util.constraints.rect.builders.TiledRect;
import mightypork.util.constraints.rect.caching.RectCache;
import mightypork.util.constraints.rect.caching.RectDigest;
import mightypork.util.constraints.rect.mutable.RectVar;
import mightypork.util.constraints.rect.proxy.RectBound;
import mightypork.util.constraints.rect.proxy.RectBoundAdapter;
import mightypork.util.constraints.rect.proxy.RectVectAdapter;
import mightypork.util.constraints.vect.Vect;
import mightypork.util.constraints.vect.VectConst;
/**
@@ -1,10 +1,10 @@
package mightypork.util.math.constraints.rect;
package mightypork.util.constraints.rect;
import mightypork.util.math.constraints.num.NumConst;
import mightypork.util.math.constraints.rect.caching.RectDigest;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.math.constraints.vect.VectConst;
import mightypork.util.constraints.num.NumConst;
import mightypork.util.constraints.rect.caching.RectDigest;
import mightypork.util.constraints.vect.Vect;
import mightypork.util.constraints.vect.VectConst;
/**
@@ -1,9 +1,9 @@
package mightypork.util.math.constraints.rect.builders;
package mightypork.util.constraints.rect.builders;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.math.constraints.rect.proxy.RectProxy;
import mightypork.util.constraints.num.Num;
import mightypork.util.constraints.rect.Rect;
import mightypork.util.constraints.rect.proxy.RectProxy;
/**
@@ -1,10 +1,10 @@
package mightypork.util.math.constraints.rect.caching;
package mightypork.util.constraints.rect.caching;
import mightypork.util.math.constraints.ConstraintCache;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.math.constraints.rect.mutable.RectVar;
import mightypork.util.math.constraints.rect.proxy.RectAdapter;
import mightypork.util.constraints.ConstraintCache;
import mightypork.util.constraints.rect.Rect;
import mightypork.util.constraints.rect.mutable.RectVar;
import mightypork.util.constraints.rect.proxy.RectAdapter;
/**
@@ -1,8 +1,8 @@
package mightypork.util.math.constraints.rect.caching;
package mightypork.util.constraints.rect.caching;
import mightypork.util.annotations.DefaultImpl;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.constraints.rect.Rect;
/**
@@ -1,8 +1,8 @@
package mightypork.util.math.constraints.rect.caching;
package mightypork.util.constraints.rect.caching;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.math.constraints.rect.RectConst;
import mightypork.util.constraints.rect.Rect;
import mightypork.util.constraints.rect.RectConst;
public class RectDigest {
@@ -1,8 +1,8 @@
package mightypork.util.math.constraints.rect.mutable;
package mightypork.util.constraints.rect.mutable;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.rect.Rect;
import mightypork.util.constraints.vect.Vect;
/**
@@ -1,8 +1,8 @@
package mightypork.util.math.constraints.rect.mutable;
package mightypork.util.constraints.rect.mutable;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.math.constraints.vect.mutable.VectVar;
import mightypork.util.constraints.vect.Vect;
import mightypork.util.constraints.vect.mutable.VectVar;
public class RectVar extends RectMutable {
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints.rect.proxy;
package mightypork.util.constraints.rect.proxy;
/**
@@ -1,9 +1,9 @@
package mightypork.util.math.constraints.rect.proxy;
package mightypork.util.constraints.rect.proxy;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.math.constraints.vect.proxy.VectAdapter;
import mightypork.util.constraints.rect.Rect;
import mightypork.util.constraints.vect.Vect;
import mightypork.util.constraints.vect.proxy.VectAdapter;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.rect.proxy;
package mightypork.util.constraints.rect.proxy;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.constraints.rect.Rect;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.rect.proxy;
package mightypork.util.constraints.rect.proxy;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.constraints.rect.Rect;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.rect.proxy;
package mightypork.util.constraints.rect.proxy;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.constraints.rect.Rect;
public class RectProxy extends RectAdapter {
@@ -1,8 +1,8 @@
package mightypork.util.math.constraints.rect.proxy;
package mightypork.util.constraints.rect.proxy;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.rect.Rect;
import mightypork.util.constraints.vect.Vect;
/**
@@ -1,19 +1,19 @@
package mightypork.util.math.constraints.vect;
package mightypork.util.constraints.vect;
import mightypork.util.annotations.DefaultImpl;
import mightypork.util.annotations.FactoryMethod;
import mightypork.util.math.constraints.DigestCache;
import mightypork.util.math.constraints.Digestable;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.math.constraints.num.NumConst;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.math.constraints.vect.caching.VectCache;
import mightypork.util.math.constraints.vect.caching.VectDigest;
import mightypork.util.math.constraints.vect.mutable.VectVar;
import mightypork.util.math.constraints.vect.proxy.VectBound;
import mightypork.util.math.constraints.vect.proxy.VectBoundAdapter;
import mightypork.util.math.constraints.vect.proxy.VectNumAdapter;
import mightypork.util.constraints.DigestCache;
import mightypork.util.constraints.Digestable;
import mightypork.util.constraints.num.Num;
import mightypork.util.constraints.num.NumConst;
import mightypork.util.constraints.rect.Rect;
import mightypork.util.constraints.vect.caching.VectCache;
import mightypork.util.constraints.vect.caching.VectDigest;
import mightypork.util.constraints.vect.mutable.VectVar;
import mightypork.util.constraints.vect.proxy.VectBound;
import mightypork.util.constraints.vect.proxy.VectBoundAdapter;
import mightypork.util.constraints.vect.proxy.VectNumAdapter;
/**
@@ -1,10 +1,10 @@
package mightypork.util.math.constraints.vect;
package mightypork.util.constraints.vect;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.math.constraints.num.NumConst;
import mightypork.util.math.constraints.rect.RectConst;
import mightypork.util.math.constraints.vect.caching.VectDigest;
import mightypork.util.constraints.num.Num;
import mightypork.util.constraints.num.NumConst;
import mightypork.util.constraints.rect.RectConst;
import mightypork.util.constraints.vect.caching.VectDigest;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.vect;
package mightypork.util.constraints.vect;
import mightypork.util.math.constraints.vect.proxy.VectAdapter;
import mightypork.util.constraints.vect.proxy.VectAdapter;
public class VectProxy extends VectAdapter {
@@ -1,10 +1,10 @@
package mightypork.util.math.constraints.vect.caching;
package mightypork.util.constraints.vect.caching;
import mightypork.util.math.constraints.ConstraintCache;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.math.constraints.vect.mutable.VectVar;
import mightypork.util.math.constraints.vect.proxy.VectAdapter;
import mightypork.util.constraints.ConstraintCache;
import mightypork.util.constraints.vect.Vect;
import mightypork.util.constraints.vect.mutable.VectVar;
import mightypork.util.constraints.vect.proxy.VectAdapter;
/**
@@ -1,8 +1,8 @@
package mightypork.util.math.constraints.vect.caching;
package mightypork.util.constraints.vect.caching;
import mightypork.util.annotations.DefaultImpl;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.vect.Vect;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.vect.caching;
package mightypork.util.constraints.vect.caching;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.vect.Vect;
public class VectDigest {
@@ -1,12 +1,12 @@
package mightypork.util.math.constraints.vect.mutable;
package mightypork.util.constraints.vect.mutable;
import mightypork.util.annotations.FactoryMethod;
import mightypork.util.constraints.num.mutable.NumAnimated;
import mightypork.util.constraints.vect.Vect;
import mightypork.util.control.timing.Pauseable;
import mightypork.util.control.timing.Updateable;
import mightypork.util.math.Easing;
import mightypork.util.math.constraints.num.mutable.NumAnimated;
import mightypork.util.math.constraints.vect.Vect;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.vect.mutable;
package mightypork.util.constraints.vect.mutable;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.vect.Vect;
/**
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints.vect.mutable;
package mightypork.util.constraints.vect.mutable;
/**
@@ -1,4 +1,4 @@
package mightypork.util.math.constraints.vect.proxy;
package mightypork.util.constraints.vect.proxy;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.vect.proxy;
package mightypork.util.constraints.vect.proxy;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.vect.Vect;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.vect.proxy;
package mightypork.util.constraints.vect.proxy;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.vect.Vect;
/**
@@ -1,7 +1,7 @@
package mightypork.util.math.constraints.vect.proxy;
package mightypork.util.constraints.vect.proxy;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.vect.Vect;
public class VectBoundAdapter extends VectAdapter implements PluggableVectBound {
@@ -1,9 +1,9 @@
package mightypork.util.math.constraints.vect.proxy;
package mightypork.util.constraints.vect.proxy;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.math.constraints.num.proxy.NumBound;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.num.Num;
import mightypork.util.constraints.num.proxy.NumBound;
import mightypork.util.constraints.vect.Vect;
/**
+1 -1
View File
@@ -6,7 +6,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.vect.Vect;
import org.lwjgl.BufferUtils;
+1 -1
View File
@@ -1,7 +1,7 @@
package mightypork.util.math;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.constraints.vect.Vect;
/**
+41 -9
View File
@@ -4,8 +4,8 @@ package mightypork.util.math.color;
import java.util.Stack;
import mightypork.util.annotations.FactoryMethod;
import mightypork.util.constraints.num.Num;
import mightypork.util.math.Calc;
import mightypork.util.math.constraints.num.Num;
/**
@@ -36,7 +36,8 @@ public abstract class Color {
public static final Color ORANGE = rgb(1, 0.78, 0);
public static final Color PINK = rgb(1, 0.68, 0.68);
private static final Stack<Num> globalAlphaStack = new Stack<>();
private static final Stack<Num> alphaStack = new Stack<>();
private static volatile boolean alphaStackEnabled = true;
@FactoryMethod
@@ -160,8 +161,11 @@ public abstract class Color {
{
double alpha = rawAlpha();
for (Num n : globalAlphaStack) {
alpha *= clamp(n.value());
if (alphaStackEnabled) {
for (Num n : alphaStack) {
alpha *= clamp(n.value());
}
}
return clamp(alpha);
@@ -190,7 +194,11 @@ public abstract class Color {
*/
public static void pushAlpha(Num alpha)
{
globalAlphaStack.push(alpha);
if (!alphaStackEnabled) {
return;
}
alphaStack.push(alpha);
}
@@ -198,15 +206,39 @@ public abstract class Color {
* Remove a pushed alpha multiplier from the stack. If there's no remaining
* multiplier on the stack, an exception is raised.
*
* @return the popped multiplier
* @throws IllegalStateException if the stack is empty
*/
public static Num popAlpha()
public static void popAlpha()
{
if (globalAlphaStack.isEmpty()) {
if (!alphaStackEnabled) {
return;
}
if (alphaStack.isEmpty()) {
throw new IllegalStateException("Global alpha stack underflow.");
}
return globalAlphaStack.pop();
alphaStack.pop();
}
/**
* Enable alpha stack. When disabled, pushAlpha() and popAlpha() have no
* effect.
*
* @param yes
*/
public static void enableAlphaStack(boolean yes)
{
alphaStackEnabled = yes;
}
/**
* @return true if alpha stack is enabled.
*/
public static boolean isAlphaStackEnabled()
{
return alphaStackEnabled;
}
}
+1 -1
View File
@@ -1,7 +1,7 @@
package mightypork.util.math.color;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
public class ColorHsb extends Color {
+1 -1
View File
@@ -1,7 +1,7 @@
package mightypork.util.math.color;
import mightypork.util.math.constraints.num.Num;
import mightypork.util.constraints.num.Num;
public class ColorRgb extends Color {
+2 -2
View File
@@ -1,11 +1,11 @@
package mightypork.util.objects;
import mightypork.util.constraints.vect.Vect;
import mightypork.util.constraints.vect.VectConst;
import mightypork.util.logging.Log;
import mightypork.util.math.Calc;
import mightypork.util.math.Range;
import mightypork.util.math.constraints.vect.Vect;
import mightypork.util.math.constraints.vect.VectConst;
/**