Project

General

Profile

« Previous | Next » 

Revision e82f3f9c

Added by Leszek Koltunski almost 4 years ago

Port RubikCube to the new library.

View differences:

build.gradle
35 35

  
36 36
dependencies {
37 37
    implementation fileTree(dir: 'libs', include: ['*.jar'])
38
    implementation 'com.google.firebase:firebase-analytics:17.4.2'
39
    implementation 'com.google.firebase:firebase-crashlytics:17.0.0'
38
    implementation 'com.google.firebase:firebase-analytics:17.4.3'
39
    implementation 'com.google.firebase:firebase-crashlytics:17.0.1'
40 40

  
41 41
    api project(':distorted-library')
42 42
    implementation 'androidx.appcompat:appcompat:1.1.0'
src/main/java/org/distorted/objects/RubikCube.java
150 150
      int association = 1;
151 151
      MeshBase[] meshes = new MeshRectangles[MESHES];
152 152
      meshes[0] = new MeshRectangles(14,14);
153
      meshes[0].setEffectAssociation(0,association);
153
      meshes[0].setEffectAssociation(0,association,0);
154 154

  
155 155
      for(int i=1; i<MESHES; i++)
156 156
        {
157 157
        association <<=1;
158 158
        meshes[i] = meshes[0].copy(true);
159
        meshes[i].setEffectAssociation(0,association);
159
        meshes[i].setEffectAssociation(0,association,0);
160 160
        }
161 161

  
162 162
      mMesh = new MeshJoined(meshes);
......
194 194
      Static1D dRad  = new Static1D(1);
195 195

  
196 196
      VertexEffectMove   effect0 = new VertexEffectMove(new Static3D(0,0,+0.5f));
197
      effect0.setMeshAssociation(-1,63);  // all 6 sides
197
      effect0.setMeshAssociation(63,-1);  // all 6 sides
198 198
      VertexEffectRotate effect1 = new VertexEffectRotate( angle180, axisX, center );
199
      effect1.setMeshAssociation(-1,32);  // back
199
      effect1.setMeshAssociation(32,-1);  // back
200 200
      VertexEffectRotate effect2 = new VertexEffectRotate( angle90 , axisX, center );
201
      effect2.setMeshAssociation(-1, 8);  // bottom
201
      effect2.setMeshAssociation( 8,-1);  // bottom
202 202
      VertexEffectRotate effect3 = new VertexEffectRotate( angle270, axisX, center );
203
      effect3.setMeshAssociation(-1, 4);  // top
203
      effect3.setMeshAssociation( 4,-1);  // top
204 204
      VertexEffectRotate effect4 = new VertexEffectRotate( angle270, axisY, center );
205
      effect4.setMeshAssociation(-1, 2);  // left
205
      effect4.setMeshAssociation( 2,-1);  // left
206 206
      VertexEffectRotate effect5 = new VertexEffectRotate( angle90 , axisY, center );
207
      effect5.setMeshAssociation(-1, 1);  // right
207
      effect5.setMeshAssociation( 1,-1);  // right
208 208

  
209 209
      VertexEffectDeform effect6 = new VertexEffectDeform(dVec0, dRad, dCen0, dReg);
210 210
      VertexEffectDeform effect7 = new VertexEffectDeform(dVec1, dRad, dCen1, dReg);
src/main/java/org/distorted/objects/RubikPyraminx.java
216 216
    MeshBase[] meshes = new MeshTriangles[MESHES];
217 217

  
218 218
    meshes[0] = new MeshTriangles(5);
219
    meshes[0].setEffectAssociation(0,association);
219
    meshes[0].setEffectAssociation(0,association,0);
220 220

  
221 221
    for(int i=1; i<MESHES; i++)
222 222
      {
223 223
      association <<= 1;
224 224
      meshes[i] = meshes[0].copy(true);
225
      meshes[i].setEffectAssociation(0,association);
225
      meshes[i].setEffectAssociation(0,association,0);
226 226
      }
227 227

  
228 228
    Static4D[] textureMaps = new Static4D[MESHES];
......
263 263
    Static3D center = new Static3D(0,0,0);
264 264
    Static4D region = new Static4D(0,0,0,0.6f);
265 265

  
266
    VertexEffectScale effect1 = new VertexEffectScale ( new Static3D(1,SQ3/2,1) );
266
    VertexEffectScale   effect1 = new VertexEffectScale ( new Static3D(1,SQ3/2,1) );
267 267
    VertexEffectRotate  effect2 = new VertexEffectRotate( new Static1D(90), new Static3D(1,0,0), new Static3D(0,0,0) );
268
    VertexEffectMove effect3 = new VertexEffectMove  ( new Static3D(0,-SQ3*SQ2/12,SQ3/12) );
268
    VertexEffectMove    effect3 = new VertexEffectMove  ( new Static3D(0,-SQ3*SQ2/12,SQ3/12) );
269 269
    VertexEffectRotate  effect4 = new VertexEffectRotate( new Static1D(180), new Static3D(0,0,1), center1 );
270 270
    VertexEffectRotate  effect5 = new VertexEffectRotate( angle, axis1, center1 );
271 271
    VertexEffectRotate  effect6 = new VertexEffectRotate( angle, axis2, center2 );
272 272
    VertexEffectRotate  effect7 = new VertexEffectRotate( angle, axis3, center2 );
273 273

  
274
    VertexEffectDeform effect8 = new VertexEffectDeform(dVec0, dRad, dCen0, dReg);
275
    VertexEffectDeform effect9 = new VertexEffectDeform(dVec1, dRad, dCen1, dReg);
276
    VertexEffectDeform effect10= new VertexEffectDeform(dVec2, dRad, dCen2, dReg);
277
    VertexEffectDeform effect11= new VertexEffectDeform(dVec3, dRad, dCen3, dReg);
274
    VertexEffectDeform  effect8 = new VertexEffectDeform(dVec0, dRad, dCen0, dReg);
275
    VertexEffectDeform  effect9 = new VertexEffectDeform(dVec1, dRad, dCen1, dReg);
276
    VertexEffectDeform  effect10= new VertexEffectDeform(dVec2, dRad, dCen2, dReg);
277
    VertexEffectDeform  effect11= new VertexEffectDeform(dVec3, dRad, dCen3, dReg);
278 278

  
279
    VertexEffectSink   effect12= new VertexEffectSink( new Static1D(1.3f), center, region );
279
    VertexEffectSink    effect12= new VertexEffectSink( new Static1D(1.3f), center, region );
280 280

  
281
    effect4.setMeshAssociation(-1,14);  // apply to mesh[1], [2] and [3]
282
    effect5.setMeshAssociation(-1, 2);  // apply only to mesh[1]
283
    effect6.setMeshAssociation(-1, 4);  // apply only to mesh[2]
284
    effect7.setMeshAssociation(-1, 8);  // apply only to mesh[3]
281
    effect4.setMeshAssociation(14,-1);  // apply to mesh[1], [2] and [3]
282
    effect5.setMeshAssociation( 2,-1);  // apply only to mesh[1]
283
    effect6.setMeshAssociation( 4,-1);  // apply only to mesh[2]
284
    effect7.setMeshAssociation( 8,-1);  // apply only to mesh[3]
285 285

  
286 286
    result.apply(effect1);
287 287
    result.apply(effect2);

Also available in: Unified diff