|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.diamondspin.DSFrontierManager
public class DSFrontierManager
Nested Class Summary | |
---|---|
protected class |
DSFrontierManager.DSFrontierManagerHelper
|
Field Summary | |
---|---|
static int |
ASK
|
static int |
CLIP
|
static int |
CLIP_EXT
|
static int |
FOLD
|
protected HashMap<DSFrame,DSFrontierManager.DSFrontierManagerHelper> |
helpers
|
BufferedImage |
img
|
static int |
MAX_OP
|
static int |
MOVE
|
static int |
NOT_USED
|
protected int[] |
oper
|
protected int |
oper_num
|
protected Point2D.Double |
p
|
protected DSFrame |
r
|
static int |
RESIZE
|
static int |
ROTATE
|
static int |
USED_NOT_SOLVED
|
static int |
USED_SOLVED
|
protected Point2D.Double |
v
|
static int |
ZOOM
|
Constructor Summary | |
---|---|
DSFrontierManager(Point2D.Double a,
double vx,
double vy,
DSFrame relative,
int o)
|
|
DSFrontierManager(Point2D.Double a,
Point2D.Double vect_dir,
DSFrame relative,
int o)
|
|
DSFrontierManager(Point2D.Double a,
Point2D.Double b,
DSFrame relative,
int o,
boolean unused)
|
Method Summary | |
---|---|
void |
addOperation(int o)
perform the operation o if the existing ones failled |
void |
changeFrontier(Point a,
Point vect_dir)
|
protected void |
checkFrontier(DSFrame f,
DSFrontierManager.DSFrontierManagerHelper h)
Check if f is corssing the frontier. |
void |
freeFrame(DSFrame f)
|
protected double |
getFrontierDist(double x,
double y)
|
protected double |
getFrontierDist(Point2D.Double fp)
Get the ORIENTED minimal distance between the point FP and the frontier line. |
int |
getFrontierSide(DSFrame f)
Is f on the left or the right of the fontier ? We use only the Center of f to compute this. |
double |
getMaximumFrontierDist(DSFrame f)
|
double |
getMaximumFrontierDist(DSFrame f,
Point2D.Double max_dist_point)
|
protected double |
getMaximumFrontierDist(PathIterator pi,
Point2D.Double max_dist_point)
PI points must be in global corrdinates. |
boolean |
isCrossingFrontier(DSFrame f)
Check is f is crossing the border. |
void |
manageFrame(DSFrame f)
|
protected int |
numCrossingFrontier(double referenceSide,
PathIterator pi)
|
int |
numCrossingFrontier(DSFrame f)
Return the number of corners of others special points of F which are not on the SAME side than the center of F. |
protected boolean |
opClip(DSFrame f)
|
protected boolean |
opFold(DSFrame f)
|
protected boolean |
opMove(DSFrame f)
|
protected boolean |
opResize(DSFrame f)
|
protected boolean |
opRotate(DSFrame f)
F is crossing the border. |
protected boolean |
opuClip(DSFrame f,
DSFrontierManager.DSFrontierManagerHelper h)
|
protected boolean |
opuFold(DSFrame f,
DSFrontierManager.DSFrontierManagerHelper h)
|
protected boolean |
opuMove(DSFrame f,
DSFrontierManager.DSFrontierManagerHelper h)
|
protected boolean |
opuResize(DSFrame f,
DSFrontierManager.DSFrontierManagerHelper h)
|
protected boolean |
opuRotate(DSFrame f,
DSFrontierManager.DSFrontierManagerHelper h)
We will try to unrotate F to make f.getBeta() approching h.o_beta modulo 2PI. |
protected boolean |
opuZoom(DSFrame f,
DSFrontierManager.DSFrontierManagerHelper h)
Here's the deal : F is no more crossing the border. |
protected boolean |
opZoom(DSFrame f)
Here's the deal : F is crossing the border. |
void |
paint(Graphics2D g)
|
void |
setOperation(int o)
Clear the op list and set oper[0] to o |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int ASK
public static final int CLIP
public static final int MOVE
public static final int ZOOM
public static final int RESIZE
public static final int FOLD
public static final int ROTATE
public static final int NOT_USED
public static final int USED_NOT_SOLVED
public static final int USED_SOLVED
public static final int CLIP_EXT
public static final int MAX_OP
protected Point2D.Double p
protected Point2D.Double v
protected DSFrame r
protected HashMap<DSFrame,DSFrontierManager.DSFrontierManagerHelper> helpers
protected int[] oper
protected int oper_num
public BufferedImage img
Constructor Detail |
---|
public DSFrontierManager(Point2D.Double a, Point2D.Double b, DSFrame relative, int o, boolean unused)
public DSFrontierManager(Point2D.Double a, double vx, double vy, DSFrame relative, int o)
public DSFrontierManager(Point2D.Double a, Point2D.Double vect_dir, DSFrame relative, int o)
Method Detail |
---|
public void changeFrontier(Point a, Point vect_dir)
public void setOperation(int o)
public void addOperation(int o)
public void manageFrame(DSFrame f)
public void freeFrame(DSFrame f)
public void paint(Graphics2D g)
public boolean isCrossingFrontier(DSFrame f)
public int numCrossingFrontier(DSFrame f)
protected int numCrossingFrontier(double referenceSide, PathIterator pi)
public double getMaximumFrontierDist(DSFrame f)
public double getMaximumFrontierDist(DSFrame f, Point2D.Double max_dist_point)
protected double getMaximumFrontierDist(PathIterator pi, Point2D.Double max_dist_point)
public int getFrontierSide(DSFrame f)
protected double getFrontierDist(Point2D.Double fp)
protected double getFrontierDist(double x, double y)
protected void checkFrontier(DSFrame f, DSFrontierManager.DSFrontierManagerHelper h)
protected boolean opZoom(DSFrame f)
protected boolean opuZoom(DSFrame f, DSFrontierManager.DSFrontierManagerHelper h)
protected boolean opRotate(DSFrame f)
protected boolean opuRotate(DSFrame f, DSFrontierManager.DSFrontierManagerHelper h)
protected boolean opMove(DSFrame f)
protected boolean opuMove(DSFrame f, DSFrontierManager.DSFrontierManagerHelper h)
protected boolean opClip(DSFrame f)
protected boolean opuClip(DSFrame f, DSFrontierManager.DSFrontierManagerHelper h)
protected boolean opResize(DSFrame f)
protected boolean opuResize(DSFrame f, DSFrontierManager.DSFrontierManagerHelper h)
protected boolean opFold(DSFrame f)
protected boolean opuFold(DSFrame f, DSFrontierManager.DSFrontierManagerHelper h)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |