Project

General

Profile

« Previous | Next » 

Revision b63235a0

Added by Leszek Koltunski over 1 year ago

Make it possible to create Diamond and Icosahedron-shaped objects to be read from json.

View differences:

src/main/java/org/distorted/objectlib/objects/TwistyMasterball.java
21 21
import org.distorted.objectlib.main.ObjectType;
22 22
import org.distorted.objectlib.shape.ShapeDiamond;
23 23
import org.distorted.objectlib.scrambling.ScrambleState;
24
import org.distorted.objectlib.touchcontrol.TouchControlBall;
24 25

  
25 26
import java.io.InputStream;
26 27

  
......
192 193
    }
193 194

  
194 195
///////////////////////////////////////////////////////////////////////////////////////////////////
195
// A = PI/8
196 196

  
197 197
  public Static3D[] getFaceAxis()
198 198
    {
199
    final float sinA = (float)(0.5f*Math.sqrt(2-SQ2));
200
    final float cosA = (float)(0.5f*Math.sqrt(2+SQ2));
201

  
202
    float X = sinA*cosA/(1+cosA*cosA);
203
    float Y = cosA*cosA/(1+cosA*cosA);
204
    float Z = cosA*cosA/(1+cosA*cosA);
205

  
206
    float LEN = (float)Math.sqrt(X*X + Y*Y + Z*Z);
207
    X /= LEN;
208
    Y /= LEN;
209
    Z /= LEN;
210

  
211
    return new Static3D[]
212
        {
213
          new Static3D( X, Y, Z),
214
          new Static3D( X,-Y, Z),
215
          new Static3D( Z, Y, X),
216
          new Static3D( Z,-Y, X),
217
          new Static3D( Z, Y,-X),
218
          new Static3D( Z,-Y,-X),
219
          new Static3D( X, Y,-Z),
220
          new Static3D( X,-Y,-Z),
221
          new Static3D(-X, Y,-Z),
222
          new Static3D(-X,-Y,-Z),
223
          new Static3D(-Z, Y,-X),
224
          new Static3D(-Z,-Y,-X),
225
          new Static3D(-Z, Y, X),
226
          new Static3D(-Z,-Y, X),
227
          new Static3D(-X, Y, Z),
228
          new Static3D(-X,-Y, Z),
229
        };
199
    return TouchControlBall.FACE_AXIS;
230 200
    }
231 201

  
232 202
///////////////////////////////////////////////////////////////////////////////////////////////////

Also available in: Unified diff