Revision acf2a9e1
Added by Leszek Koltunski 12 months ago
src/main/java/org/distorted/objectlib/objects/TwistyCoinTetrahedron.java | ||
---|---|---|
48 | 48 |
private float[][] mCuts; |
49 | 49 |
private float[][] mPosition; |
50 | 50 |
private int[] mQuatIndex; |
51 |
private boolean[][] mRotatable; |
|
51 | 52 |
|
52 | 53 |
private float[][] V,M,L; |
53 | 54 |
|
... | ... | |
62 | 63 |
|
63 | 64 |
public int[][] getScrambleEdges() |
64 | 65 |
{ |
65 |
if( mEdges==null ) mEdges = ScrambleEdgeGenerator.getScrambleEdgesSingle(mBasicAngle); |
|
66 |
if( mEdges==null ) |
|
67 |
{ |
|
68 |
setUpRotatable(); |
|
69 |
mEdges = ScrambleEdgeGenerator.getScrambleEdgesSingle(mBasicAngle, mRotatable); |
|
70 |
} |
|
71 |
|
|
66 | 72 |
return mEdges; |
67 | 73 |
} |
68 | 74 |
|
75 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
76 |
|
|
77 |
@Override |
|
78 |
public int[][] getScrambleAlgorithms() |
|
79 |
{ |
|
80 |
setUpRotatable(); |
|
81 |
return ScrambleEdgeGenerator.getScramblingAlgorithms(mBasicAngle, mRotatable); |
|
82 |
} |
|
83 |
|
|
69 | 84 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
70 | 85 |
|
71 | 86 |
public float[][] getCuts(int[] numLayers) |
... | ... | |
79 | 94 |
return mCuts; |
80 | 95 |
} |
81 | 96 |
|
97 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
98 |
|
|
99 |
private void setUpRotatable() |
|
100 |
{ |
|
101 |
if( mRotatable==null ) |
|
102 |
{ |
|
103 |
boolean[] tmp = new boolean[] {true,false,true}; |
|
104 |
mRotatable = new boolean[][] { tmp,tmp,tmp,tmp }; |
|
105 |
} |
|
106 |
} |
|
107 |
|
|
82 | 108 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
83 | 109 |
|
84 | 110 |
public boolean[][] getLayerRotatable(int[] numLayers) |
85 | 111 |
{ |
86 |
boolean[] tmp = new boolean[] {true,false,true};
|
|
87 |
return new boolean[][] { tmp,tmp,tmp,tmp };
|
|
112 |
setUpRotatable();
|
|
113 |
return mRotatable;
|
|
88 | 114 |
} |
89 | 115 |
|
90 | 116 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
Also available in: Unified diff
Support for automatic creation of Scramble Algorithms and Edges which ignore the 'non-rotatable' layers.
Implement this to the Coin Tetrahedron, Ancient Coin Cube & Tins Cube.