Num/Rect/Vect Constructors for Bounds

This commit is contained in:
Ondřej Hruška
2014-04-14 22:04:10 +02:00
parent 0236e779c3
commit d96c1c1272
7 changed files with 50 additions and 6 deletions
@@ -4,11 +4,9 @@ package mightypork.gamecore.control.timing;
import java.util.LinkedHashSet;
import java.util.Set;
import mightypork.utils.math.constraints.RectCache;
/**
* Used to poll a number of {@link Pollable}s, such as {@link RectCache}
* Used to poll a number of {@link Pollable}s
*
* @author MightyPork
*/
@@ -7,12 +7,17 @@ import mightypork.utils.math.Calc;
public abstract class Num implements NumBound {
static final double CMP_EPSILON = 0.0000001;
public static final NumConst ZERO = Num.make(0);
public static final NumConst ONE = Num.make(1);
@FactoryMethod
public static Num make(NumBound bound)
{
return new NumBoundAdapter(bound);
}
@FactoryMethod
public static NumConst make(double value)
{
@@ -9,6 +9,15 @@ public class NumBoundAdapter extends NumAdapter implements PluggableNumBound {
private NumBound backing = null;
public NumBoundAdapter() {
}
public NumBoundAdapter(NumBound bound) {
backing = bound;
}
@Override
public void setNum(NumBound rect)
{
@@ -36,6 +36,13 @@ public abstract class Rect implements RectBound {
}
@FactoryMethod
public static Rect make(RectBound bound)
{
return new RectBoundAdapter(bound);
}
@FactoryMethod
public static Rect make(Num x, Num y, Num width, Num height)
{
@@ -10,11 +10,20 @@ import mightypork.utils.math.constraints.RectBound;
*
* @author MightyPork
*/
public abstract class RectBoundAdapter extends RectAdapter implements PluggableRectBound {
public class RectBoundAdapter extends RectAdapter implements PluggableRectBound {
private RectBound backing = null;
public RectBoundAdapter() {
}
public RectBoundAdapter(RectBound bound) {
backing = bound;
}
@Override
public void setRect(RectBound rect)
{
@@ -35,6 +35,13 @@ public abstract class Vect implements VectBound {
}
@FactoryMethod
public static Vect make(VectBound bound)
{
return new VectBoundAdapter(bound);
}
@FactoryMethod
public static VectConst make(NumConst xc, NumConst yc)
{
@@ -10,6 +10,15 @@ public class VectBoundAdapter extends VectAdapter implements PluggableVectBound
private VectBound backing = null;
public VectBoundAdapter() {
}
public VectBoundAdapter(VectBound bound) {
backing = bound;
}
@Override
public void setVect(VectBound rect)
{