Project

General

Profile

« Previous | Next » 

Revision 5be5c5db

Added by Leszek Koltunski 9 months ago

Improve Coin Tetrahedron

View differences:

src/main/java/org/distorted/objectlib/objects/TwistyCoinTetrahedron.java
41 41
         };
42 42

  
43 43
  private static final int N = 5;
44
  private static final float D = 0.9f;
45 44

  
46 45
  private int[][] mEdges;
47 46
  private int[][] mBasicAngle;
......
347 346

  
348 347
  private float[][] produceCenter()
349 348
    {
349
    final float D = 0.96f;
350 350
    float[][] ret = new float[3*N+1][];
351 351

  
352 352
    float[] rot = new float[] { V[0][0]-M[0][0], V[0][1]-M[0][1], V[0][2]-M[0][2] };
......
481 481
    for(int i=1; i<=N-1; i++)
482 482
      {
483 483
      ret[i] = new int[3];
484
      ret[i][0] = i-1;
484
      ret[i][0] = 3*N;
485 485
      ret[i][1] = i;
486
      ret[i][2] = 3*N;
486
      ret[i][2] = i-1;
487 487

  
488 488
      ret[N-1+i] = new int[3];
489
      ret[N-1+i][0] = N+i-1;
489
      ret[N-1+i][0] = 3*N;
490 490
      ret[N-1+i][1] = N+i;
491
      ret[N-1+i][2] = 3*N;
491
      ret[N-1+i][2] = N+i-1;
492 492

  
493 493
      ret[2*N-2+i] = new int[3];
494
      ret[2*N-2+i][0] = 2*N+i-1;
494
      ret[2*N-2+i][0] = 3*N;
495 495
      ret[2*N-2+i][1] = 2*N+i;
496
      ret[2*N-2+i][2] = 3*N;
496
      ret[2*N-2+i][2] = 2*N+i-1;
497 497
      }
498 498

  
499 499
    ret[3*N-2] = new int[] {   N-1,   N, 3*N };
......
570 570
      }
571 571
    else if( variant==1 )
572 572
      {
573
      float h = isInIconMode() ? 0.0001f : 0.015f;
573
      float h = isInIconMode() ? 0.0001f : 0.001f;
574 574
      float[][] bands = { {h,15,0.05f,0.1f,5,0,0}, {h,15,0.05f,0.1f,2,0,0} };
575 575
      int num = 3+3*(N-1)+1;
576 576
      int[] indices   = new int[num];
......
604 604
      }
605 605
    else if( variant==1 )
606 606
      {
607
      return null;
607
      float[][] corners = { {0.02f,0.20f} };
608
      int[] indices     = new int[3*N+1];
609
      for(int i=0; i<3*N+1; i++) indices[i] = -1;
610
      indices[  N-1] = 0;
611
      indices[2*N-1] = 0;
612
      indices[3*N-1] = 0;
613

  
614
      float[][] centers = { { 0.0f, -SQ2/4, -0.5f } };
615
      return FactoryCubit.generateVertexEffect(getVertices(variant),corners,indices,centers,indices);
608 616
      }
609 617
    else
610 618
      {

Also available in: Unified diff