Project

General

Profile

« Previous | Next » 

Revision c2207ff3

Added by Leszek Koltunski about 2 years ago

Provide the correct quat set (not group!) for the Mixup Cube.

View differences:

src/main/java/org/distorted/objectlib/objects/TwistyMixup.java
58 58
    super(numL, meshState, iconMode, numL[0], quat, move, scale, stream);
59 59
    }
60 60

  
61
///////////////////////////////////////////////////////////////////////////////////////////////////
62
// We need to explicitly provide the quaternions because here they do not even make a group!
63
// (we can move the front center by X and Y [ X=(1,0,0)45deg, Y=(0,1,0)45deg ] but not by XY)
64

  
65
  @Override
66
  public Static4D[] getQuats()
67
    {
68
    return new Static4D[]
69
      {
70
      new Static4D ( 0.00000000f, 0.00000000f, 0.00000000f, 1.00000000f),
71
      new Static4D ( 0.38268346f, 0.00000000f, 0.00000000f, 0.92387950f),
72
      new Static4D ( 0.70710677f, 0.00000000f, 0.00000000f, 0.70710677f),
73
      new Static4D ( 0.92387950f, 0.00000000f, 0.00000000f, 0.38268343f),
74
      new Static4D ( 1.00000000f, 0.00000000f, 0.00000000f,-0.00000004f),
75
      new Static4D ( 0.92387950f, 0.00000000f, 0.00000000f,-0.38268352f),
76
      new Static4D ( 0.70710677f, 0.00000000f, 0.00000000f,-0.70710677f),
77
      new Static4D ( 0.38268328f, 0.00000000f, 0.00000000f,-0.92387962f),
78
      new Static4D ( 0.00000000f, 0.38268346f, 0.00000000f, 0.92387950f),
79
      new Static4D ( 0.00000000f, 0.70710677f, 0.00000000f, 0.70710677f),
80
      new Static4D ( 0.00000000f, 0.92387950f, 0.00000000f, 0.38268343f),
81
      new Static4D ( 0.00000000f, 0.92387950f, 0.00000000f,-0.38268352f),
82
      new Static4D ( 0.00000000f, 0.70710677f, 0.00000000f,-0.70710677f),
83
      new Static4D ( 0.00000000f, 0.38268328f, 0.00000000f,-0.92387962f),
84
      new Static4D (-0.27059805f, 0.65328145f, 0.27059805f, 0.65328145f),
85
      new Static4D (-0.65328145f, 0.27059805f, 0.65328145f, 0.27059805f),
86
      new Static4D (-0.65328145f,-0.27059811f, 0.65328145f,-0.27059811f),
87
      new Static4D (-0.27059793f,-0.65328151f, 0.27059793f,-0.65328151f),
88
      new Static4D ( 0.00000000f, 0.00000000f, 0.70710677f, 0.70710677f),
89
      new Static4D ( 0.27059805f,-0.27059805f, 0.65328145f, 0.65328145f),
90
      new Static4D ( 0.49999997f,-0.49999997f, 0.49999997f, 0.49999997f),
91
      new Static4D ( 0.65328145f,-0.65328145f, 0.27059805f, 0.27059805f),
92
      new Static4D ( 0.70710677f,-0.70710677f,-0.00000003f,-0.00000003f),
93
      new Static4D ( 0.65328145f,-0.65328145f,-0.27059811f,-0.27059811f),
94
      new Static4D ( 0.49999997f,-0.49999997f,-0.49999997f,-0.49999997f),
95
      new Static4D ( 0.27059793f,-0.27059793f,-0.65328151f,-0.65328151f),
96
      new Static4D ( 0.27059805f, 0.27059805f, 0.65328145f, 0.65328145f),
97
      new Static4D ( 0.49999997f, 0.49999997f, 0.49999997f, 0.49999997f),
98
      new Static4D ( 0.65328145f, 0.65328145f, 0.27059805f, 0.27059805f),
99
      new Static4D ( 0.65328145f, 0.65328145f,-0.27059811f,-0.27059811f),
100
      new Static4D ( 0.49999997f, 0.49999997f,-0.49999997f,-0.49999997f),
101
      new Static4D ( 0.27059793f, 0.27059793f,-0.65328151f,-0.65328151f),
102
      new Static4D ( 0.27059799f, 0.65328145f, 0.65328145f, 0.27059799f),
103
      new Static4D (-0.27059799f, 0.65328145f, 0.65328145f,-0.27059799f),
104
      new Static4D (-0.65328145f, 0.27059796f, 0.27059796f,-0.65328145f),
105
      new Static4D (-0.65328145f,-0.27059814f,-0.27059814f,-0.65328145f),
106
      new Static4D ( 0.00000000f, 0.00000000f, 1.00000000f,-0.00000004f),
107
      new Static4D (-0.00000002f,-0.38268346f, 0.92387950f,-0.00000004f),
108
      new Static4D (-0.00000003f,-0.70710677f, 0.70710677f,-0.00000003f),
109
      new Static4D (-0.00000004f,-0.92387950f, 0.38268343f,-0.00000002f),
110
      new Static4D (-0.00000004f,-1.00000000f,-0.00000004f, 0.00000000f),
111
      new Static4D (-0.00000004f,-0.92387950f,-0.38268352f, 0.00000002f),
112
      new Static4D (-0.00000003f,-0.70710677f,-0.70710677f, 0.00000003f),
113
      new Static4D (-0.00000002f,-0.38268328f,-0.92387962f, 0.00000004f),
114
      new Static4D ( 0.38268346f,-0.00000002f, 0.92387950f,-0.00000004f),
115
      new Static4D ( 0.70710677f,-0.00000003f, 0.70710677f,-0.00000003f),
116
      new Static4D ( 0.92387950f,-0.00000004f, 0.38268343f,-0.00000002f),
117
      new Static4D ( 0.92387950f,-0.00000004f,-0.38268352f, 0.00000002f),
118
      new Static4D ( 0.70710677f,-0.00000003f,-0.70710677f, 0.00000003f),
119
      new Static4D ( 0.38268328f,-0.00000002f,-0.92387962f, 0.00000004f),
120
      new Static4D ( 0.65328145f, 0.27059802f, 0.65328145f,-0.27059808f),
121
      new Static4D ( 0.27059808f, 0.65328145f, 0.27059802f,-0.65328145f),
122
      new Static4D (-0.27059808f, 0.65328145f,-0.27059814f,-0.65328145f),
123
      new Static4D (-0.65328151f, 0.27059796f,-0.65328151f,-0.27059790f),
124
      new Static4D ( 0.00000000f, 0.00000000f, 0.70710677f,-0.70710677f),
125
      new Static4D (-0.27059805f,-0.27059805f, 0.65328145f,-0.65328145f),
126
      new Static4D (-0.49999997f,-0.49999997f, 0.49999997f,-0.49999997f),
127
      new Static4D (-0.65328145f,-0.65328145f, 0.27059805f,-0.27059805f),
128
      new Static4D (-0.70710677f,-0.70710677f,-0.00000003f, 0.00000003f),
129
      new Static4D (-0.65328145f,-0.65328145f,-0.27059811f, 0.27059811f),
130
      new Static4D (-0.49999997f,-0.49999997f,-0.49999997f, 0.49999997f),
131
      new Static4D (-0.27059793f,-0.27059793f,-0.65328151f, 0.65328151f),
132
      new Static4D ( 0.27059805f,-0.27059805f, 0.65328145f,-0.65328145f),
133
      new Static4D ( 0.49999997f,-0.49999997f, 0.49999997f,-0.49999997f),
134
      new Static4D ( 0.65328145f,-0.65328145f, 0.27059805f,-0.27059805f),
135
      new Static4D ( 0.65328145f,-0.65328145f,-0.27059811f, 0.27059811f),
136
      new Static4D ( 0.49999997f,-0.49999997f,-0.49999997f, 0.49999997f),
137
      new Static4D ( 0.27059793f,-0.27059793f,-0.65328151f, 0.65328151f),
138
      new Static4D ( 0.65328145f,-0.27059799f, 0.27059799f,-0.65328145f),
139
      new Static4D ( 0.65328145f, 0.27059799f,-0.27059799f,-0.65328145f),
140
      new Static4D ( 0.27059796f, 0.65328145f,-0.65328145f,-0.27059796f),
141
      new Static4D (-0.27059814f, 0.65328145f,-0.65328145f, 0.27059814f),
142
      };
143
    }
144

  
61 145
///////////////////////////////////////////////////////////////////////////////////////////////////
62 146

  
63 147
  public ScrambleState[] getScrambleStates()
......
152 236
    }
153 237

  
154 238
///////////////////////////////////////////////////////////////////////////////////////////////////
155
// TODO
156 239

  
157 240
  public float[][] getCubitPositions(int[] numLayers)
158 241
    {
......
207 290
    {
208 291
    if( mQuatIndex==null )
209 292
      {
210
      mQuatIndex = new int[] { 0,1,3,2,8,9,16,23,
211
                               0,15,3,17,10,37,36,8,1,24,2,22,
212
                               0,2,1,3,10,8 };
293
      mQuatIndex = new int[] { 0,2,6,4,9,40,36,38,
294
                               0,18,6,54,12,45,48,9,2,20,4,56,
295
                               0,4,2,6,12,9 };
213 296
      }
214 297

  
215 298
    return mObjectQuats[mQuatIndex[cubit]];

Also available in: Unified diff