Project

General

Profile

« Previous | Next » 

Revision f5c134c3

Added by Leszek Koltunski over 3 years ago

Fixes for the Rex Cube (still doesn't work)

View differences:

src/main/java/org/distorted/objects/TwistyRex.java
36 36
import java.util.Random;
37 37

  
38 38
import static org.distorted.effects.scramble.ScrambleEffect.START_AXIS;
39
import static org.distorted.objects.FactoryCubit.REX_D;
39 40

  
40 41
///////////////////////////////////////////////////////////////////////////////////////////////////
41 42

  
......
191 192
  Static3D[] getCubitPositions(int numLayers)
192 193
    {
193 194
    final float DIST = 0.50f;
194
    final float E    = SQ3/3;
195
    final float DIST2= SQ3/6*(1.0f-2*REX_D);
195 196

  
196 197
    final Static3D[] CENTERS = new Static3D[42];
197 198

  
198
    CENTERS[ 0] = new Static3D( +DIST  , +DIST*E, +DIST*E);
199
    CENTERS[ 1] = new Static3D( +DIST  , +DIST*E, -DIST*E);
200
    CENTERS[ 2] = new Static3D( +DIST  , -DIST*E, -DIST*E);
201
    CENTERS[ 3] = new Static3D( +DIST  , -DIST*E, +DIST*E);
202
    CENTERS[ 4] = new Static3D( -DIST  , +DIST*E, +DIST*E);
203
    CENTERS[ 5] = new Static3D( -DIST  , +DIST*E, -DIST*E);
204
    CENTERS[ 6] = new Static3D( -DIST  , -DIST*E, -DIST*E);
205
    CENTERS[ 7] = new Static3D( -DIST  , -DIST*E, +DIST*E);
206
    CENTERS[ 8] = new Static3D( +DIST*E, +DIST  , +DIST*E);
207
    CENTERS[ 9] = new Static3D( +DIST*E, +DIST  , -DIST*E);
208
    CENTERS[10] = new Static3D( -DIST*E, +DIST  , -DIST*E);
209
    CENTERS[11] = new Static3D( -DIST*E, +DIST  , +DIST*E);
210
    CENTERS[12] = new Static3D( +DIST*E, -DIST  , +DIST*E);
211
    CENTERS[13] = new Static3D( +DIST*E, -DIST  , -DIST*E);
212
    CENTERS[14] = new Static3D( -DIST*E, -DIST  , -DIST*E);
213
    CENTERS[15] = new Static3D( -DIST*E, -DIST  , +DIST*E);
214
    CENTERS[16] = new Static3D( +DIST*E, +DIST*E, +DIST  );
215
    CENTERS[17] = new Static3D( +DIST*E, -DIST*E, +DIST  );
216
    CENTERS[18] = new Static3D( -DIST*E, -DIST*E, +DIST  );
217
    CENTERS[19] = new Static3D( -DIST*E, +DIST*E, +DIST  );
218
    CENTERS[20] = new Static3D( +DIST*E, +DIST*E, -DIST  );
219
    CENTERS[21] = new Static3D( +DIST*E, -DIST*E, -DIST  );
220
    CENTERS[22] = new Static3D( -DIST*E, -DIST*E, -DIST  );
221
    CENTERS[23] = new Static3D( -DIST*E, +DIST*E, -DIST  );
222

  
223
    CENTERS[24] = new Static3D( +DIST  , +0.00f , +0.00f );
224
    CENTERS[25] = new Static3D( -DIST  , +0.00f , +0.00f );
225
    CENTERS[26] = new Static3D( +0.00f , +DIST  , +0.00f );
226
    CENTERS[27] = new Static3D( +0.00f , -DIST  , +0.00f );
227
    CENTERS[28] = new Static3D( +0.00f , +0.00f , +DIST  );
228
    CENTERS[29] = new Static3D( +0.00f , +0.00f , -DIST  );
229

  
230
    CENTERS[30] = new Static3D( +0.00f , +DIST  , +DIST  );
231
    CENTERS[31] = new Static3D( +DIST  , +0.00f , +DIST  );
232
    CENTERS[32] = new Static3D( +0.00f , -DIST  , +DIST  );
233
    CENTERS[33] = new Static3D( -DIST  , +0.00f , +DIST  );
234
    CENTERS[34] = new Static3D( +DIST  , +DIST  , +0.00f );
235
    CENTERS[35] = new Static3D( +DIST  , -DIST  , +0.00f );
236
    CENTERS[36] = new Static3D( -DIST  , -DIST  , +0.00f );
237
    CENTERS[37] = new Static3D( -DIST  , +DIST  , +0.00f );
238
    CENTERS[38] = new Static3D( +0.00f , +DIST  , -DIST  );
239
    CENTERS[39] = new Static3D( +DIST  , +0.00f , -DIST  );
240
    CENTERS[40] = new Static3D( +0.00f , -DIST  , -DIST  );
241
    CENTERS[41] = new Static3D( -DIST  , +0.00f , -DIST  );
199
    CENTERS[ 0] = new Static3D( +DIST , +DIST2, +DIST2);
200
    CENTERS[ 1] = new Static3D( +DIST , +DIST2, -DIST2);
201
    CENTERS[ 2] = new Static3D( +DIST , -DIST2, -DIST2);
202
    CENTERS[ 3] = new Static3D( +DIST , -DIST2, +DIST2);
203
    CENTERS[ 4] = new Static3D( -DIST , +DIST2, +DIST2);
204
    CENTERS[ 5] = new Static3D( -DIST , +DIST2, -DIST2);
205
    CENTERS[ 6] = new Static3D( -DIST , -DIST2, -DIST2);
206
    CENTERS[ 7] = new Static3D( -DIST , -DIST2, +DIST2);
207
    CENTERS[ 8] = new Static3D( +DIST2, +DIST , +DIST2);
208
    CENTERS[ 9] = new Static3D( +DIST2, +DIST , -DIST2);
209
    CENTERS[10] = new Static3D( -DIST2, +DIST , -DIST2);
210
    CENTERS[11] = new Static3D( -DIST2, +DIST , +DIST2);
211
    CENTERS[12] = new Static3D( +DIST2, -DIST , +DIST2);
212
    CENTERS[13] = new Static3D( +DIST2, -DIST , -DIST2);
213
    CENTERS[14] = new Static3D( -DIST2, -DIST , -DIST2);
214
    CENTERS[15] = new Static3D( -DIST2, -DIST , +DIST2);
215
    CENTERS[16] = new Static3D( +DIST2, +DIST2, +DIST );
216
    CENTERS[17] = new Static3D( +DIST2, -DIST2, +DIST );
217
    CENTERS[18] = new Static3D( -DIST2, -DIST2, +DIST );
218
    CENTERS[19] = new Static3D( -DIST2, +DIST2, +DIST );
219
    CENTERS[20] = new Static3D( +DIST2, +DIST2, -DIST );
220
    CENTERS[21] = new Static3D( +DIST2, -DIST2, -DIST );
221
    CENTERS[22] = new Static3D( -DIST2, -DIST2, -DIST );
222
    CENTERS[23] = new Static3D( -DIST2, +DIST2, -DIST );
223

  
224
    CENTERS[24] = new Static3D( +DIST , +0.00f, +0.00f);
225
    CENTERS[25] = new Static3D( -DIST , +0.00f, +0.00f);
226
    CENTERS[26] = new Static3D( +0.00f, +DIST , +0.00f);
227
    CENTERS[27] = new Static3D( +0.00f, -DIST , +0.00f);
228
    CENTERS[28] = new Static3D( +0.00f, +0.00f, +DIST );
229
    CENTERS[29] = new Static3D( +0.00f, +0.00f, -DIST );
230

  
231
    CENTERS[30] = new Static3D( +0.00f, +DIST , +DIST );
232
    CENTERS[31] = new Static3D( +DIST , +0.00f, +DIST );
233
    CENTERS[32] = new Static3D( +0.00f, -DIST , +DIST );
234
    CENTERS[33] = new Static3D( -DIST , +0.00f, +DIST );
235
    CENTERS[34] = new Static3D( +DIST , +DIST , +0.00f);
236
    CENTERS[35] = new Static3D( +DIST , -DIST , +0.00f);
237
    CENTERS[36] = new Static3D( -DIST , -DIST , +0.00f);
238
    CENTERS[37] = new Static3D( -DIST , +DIST , +0.00f);
239
    CENTERS[38] = new Static3D( +0.00f, +DIST , -DIST );
240
    CENTERS[39] = new Static3D( +DIST , +0.00f, -DIST );
241
    CENTERS[40] = new Static3D( +0.00f, -DIST , -DIST );
242
    CENTERS[41] = new Static3D( -DIST , +0.00f, -DIST );
242 243

  
243 244
    return CENTERS;
244 245
    }
......
316 317
    {
317 318
    MeshBase mesh;
318 319

  
319
    if( cubit<12 )
320
    if( cubit<24 )
320 321
      {
321 322
      if( mCornerMesh==null ) mCornerMesh = FactoryCubit.getInstance().createRexCornerMesh();
322 323
      mesh = mCornerMesh.copy(true);
323 324
      }
324
    else if( cubit<18 )
325
    else if( cubit<30 )
325 326
      {
326 327
      if( mFaceMesh==null ) mFaceMesh = FactoryCubit.getInstance().createRexFaceMesh();
327 328
      mesh = mFaceMesh.copy(true);

Also available in: Unified diff