|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.xistrat.util.ExportData
org.xistrat.util.ExportOrbits
public abstract class ExportOrbits
containing orbit (trail) data
Field Summary |
---|
Fields inherited from class org.xistrat.util.ExportData |
---|
_vertices, _verts, faceData, fastFace, poly, polygons |
Constructor Summary | |
---|---|
ExportOrbits(java.lang.String graph,
java.lang.String old_variant)
|
Method Summary | |
---|---|
protected java.util.LinkedList<java.lang.Integer> |
doMultiBodySP(int[][] pieceInfo,
java.lang.String[] keys,
FastFace fastFace)
up to now only single-letter keys are allowed |
protected java.util.LinkedList<java.lang.Integer> |
doSP(int stand,
int next,
java.lang.String key,
java.util.HashMap<java.lang.String,java.util.LinkedList<EdgeData>> etrls,
int[] origin,
FastFace fastFace)
up to now only keys starting with a,b,A or B supported(!) |
protected void |
fillMultiBodyTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails)
this method constructs the trails for a system of two Chess pieces of type A and opposite colour there are reasons to construct the orbits prior to a representation dump, because that way one orbit may be used several times later for different combinations of generators/labels at the moment we create the trails for all possible starting positions, this implies of course quite a lot of memory space consumption, and one could reuse a once contructed orbit in case a legal position to start with has already been reached within another trail before this would save some space, but later on the retrieval of the trails (given a position) would require more time, since one would have to search within the orbits a little bit. but there is certainly a way to avoid this problem by using a faster data structure like an array or a hashmap or whatsoever pay attention to the fact that the actual orbit and the originally intended places may not coincide due to dynamics |
protected java.lang.String[] |
fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails)
method overloading |
protected java.lang.String[] |
fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails,
java.util.HashMap<java.lang.String,java.util.LinkedList<EdgeData>> etrls)
|
protected java.lang.String[] |
fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails,
java.util.HashMap<java.lang.String,java.util.LinkedList<EdgeData>> etrls,
int many)
|
protected java.lang.String[] |
fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails,
int many)
|
protected java.lang.String[] |
fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails,
int many,
FastFace fast,
FaceData data)
|
protected int |
getAddon(java.lang.String key,
java.lang.String is,
int[] distIE)
|
protected java.util.LinkedList<java.lang.Integer> |
getAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails,
int precessor,
int location,
int precessor_,
int location_,
java.lang.String key,
java.lang.String is,
int[] distIE,
FastFace fastFace)
|
protected java.util.LinkedList<java.lang.Integer> |
getAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails,
int precessor,
int location,
java.lang.String key,
java.lang.String is,
int[] distIE)
|
protected java.util.LinkedList<java.lang.Integer> |
getAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails,
int precessor,
int location,
java.lang.String key,
java.lang.String is,
int[] distIE,
FastFace fastFace)
single piece version |
protected int[] |
getDistIE(int help_next)
|
protected int[] |
getDistIE(int help_next,
FastFace fastFace)
adaptive definition of what is straight |
protected java.util.LinkedList<java.lang.Integer> |
getMultiBodyAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails,
int precessor,
int location,
int precessor_,
int location_,
int keyk,
int isk,
java.lang.String[] gens,
int[] distIE,
int[] distIE_)
|
protected java.util.LinkedList<java.lang.Integer> |
getMultiBodyAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails,
int precessor,
int location,
int precessor_,
int location_,
int keyk,
int isk,
java.lang.String[] gens,
int[] distIE,
int[] distIE_,
FastFace fastFace)
|
protected int |
getSummand(java.lang.String key,
int[] distIE,
int pointer)
the following case shooting could be unified now that things are understood, see getAxis() for how to do this |
protected boolean |
isOrig(java.util.LinkedList<EdgeData> walk,
java.util.LinkedList<java.util.LinkedList<EdgeData>> orig_walks)
simply tests if a LinkedList is identical (regarding the contained values) to s.th. contained in a list of other lists |
protected java.util.LinkedList<java.lang.Integer> |
moveEndToFront(java.util.LinkedList<java.lang.Integer> list)
move the last entries to the front of a list |
protected java.util.LinkedList<java.lang.Integer> |
moveFrontToEnd(java.util.LinkedList<java.lang.Integer> list)
move the first 4 entries to the end of a list |
Methods inherited from class org.xistrat.util.ExportData |
---|
main |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ExportOrbits(java.lang.String graph, java.lang.String old_variant)
graph
- surface to be usedold_variant
- optionally what variantMethod Detail |
---|
protected int[] getDistIE(int help_next)
protected int[] getDistIE(int help_next, FastFace fastFace)
protected java.util.LinkedList<java.lang.Integer> doSP(int stand, int next, java.lang.String key, java.util.HashMap<java.lang.String,java.util.LinkedList<EdgeData>> etrls, int[] origin, FastFace fastFace)
protected java.util.LinkedList<java.lang.Integer> doMultiBodySP(int[][] pieceInfo, java.lang.String[] keys, FastFace fastFace)
pieceInfo
- is [0,1] [int stand, int next, int stand_, int next_]keys
- fastFace
- protected java.util.LinkedList<java.lang.Integer> moveEndToFront(java.util.LinkedList<java.lang.Integer> list)
moveFrontToEnd(java.util.LinkedList)
protected java.util.LinkedList<java.lang.Integer> moveFrontToEnd(java.util.LinkedList<java.lang.Integer> list)
moveEndToFront(java.util.LinkedList)
protected int getSummand(java.lang.String key, int[] distIE, int pointer)
protected java.util.LinkedList<java.lang.Integer> getMultiBodyAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails, int precessor, int location, int precessor_, int location_, int keyk, int isk, java.lang.String[] gens, int[] distIE, int[] distIE_)
protected java.util.LinkedList<java.lang.Integer> getMultiBodyAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails, int precessor, int location, int precessor_, int location_, int keyk, int isk, java.lang.String[] gens, int[] distIE, int[] distIE_, FastFace fastFace)
protected java.util.LinkedList<java.lang.Integer> getAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails, int precessor, int location, java.lang.String key, java.lang.String is, int[] distIE)
protected int getAddon(java.lang.String key, java.lang.String is, int[] distIE)
protected java.util.LinkedList<java.lang.Integer> getAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails, int precessor, int location, java.lang.String key, java.lang.String is, int[] distIE, FastFace fastFace)
protected java.util.LinkedList<java.lang.Integer> getAxis(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails, int precessor, int location, int precessor_, int location_, java.lang.String key, java.lang.String is, int[] distIE, FastFace fastFace)
getSummand(java.lang.String, int[], int)
protected java.lang.String[] fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails)
trails
- a referenceprotected java.lang.String[] fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails, java.util.HashMap<java.lang.String,java.util.LinkedList<EdgeData>> etrls)
protected java.lang.String[] fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails, int many)
protected java.lang.String[] fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails, java.util.HashMap<java.lang.String,java.util.LinkedList<EdgeData>> etrls, int many)
protected java.lang.String[] fillTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails, int many, FastFace fast, FaceData data)
protected void fillMultiBodyTrails(java.util.HashMap<java.lang.String,java.util.LinkedList<java.lang.Integer>> trails)
there are reasons to construct the orbits prior to a representation dump, because that way one orbit may be used several times later for different combinations of generators/labels
at the moment we create the trails for all possible starting positions, this implies of course quite a lot of memory space consumption, and one could reuse a once contructed orbit in case a legal position to start with has already been reached within another trail before
this would save some space, but later on the retrieval of the trails (given a position) would require more time, since one would have to search within the orbits a little bit. but there is certainly a way to avoid this problem by using a faster data structure like an array or a hashmap or whatsoever
pay attention to the fact that the actual orbit and the originally intended places may not coincide due to dynamics
trails
- references orbits to be filledfillTrails(java.util.HashMap>)
protected boolean isOrig(java.util.LinkedList<EdgeData> walk, java.util.LinkedList<java.util.LinkedList<EdgeData>> orig_walks)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |