Revision 5a4d4fba
Added by Leszek Koltunski almost 4 years ago
src/main/java/org/distorted/patterns/RubikPattern.java | ||
---|---|---|
19 | 19 |
|
20 | 20 |
package org.distorted.patterns; |
21 | 21 |
|
22 |
import org.distorted.main.RubikPostRender;
|
|
22 |
import org.distorted.main.RubikPreRender;
|
|
23 | 23 |
|
24 | 24 |
import java.util.ArrayList; |
25 | 25 |
import java.util.List; |
... | ... | |
149 | 149 |
|
150 | 150 |
///////////////////////////////////////////////////////////// |
151 | 151 |
|
152 |
void makeMove(RubikPostRender post, int pattern)
|
|
152 |
void makeMove(RubikPreRender pre, int pattern)
|
|
153 | 153 |
{ |
154 | 154 |
if( !mInitialized ) initialize(); |
155 | 155 |
|
156 | 156 |
if( pattern>=0 && pattern<numPatterns ) |
157 | 157 |
{ |
158 | 158 |
Pattern p = mPatterns.get(pattern); |
159 |
if( p!=null ) p.makeMove(post);
|
|
159 |
if( p!=null ) p.makeMove(pre);
|
|
160 | 160 |
} |
161 | 161 |
} |
162 | 162 |
|
163 | 163 |
///////////////////////////////////////////////////////////// |
164 | 164 |
|
165 |
void backMove(RubikPostRender post, int pattern)
|
|
165 |
void backMove(RubikPreRender pre, int pattern)
|
|
166 | 166 |
{ |
167 | 167 |
if( !mInitialized ) initialize(); |
168 | 168 |
|
169 | 169 |
if( pattern>=0 && pattern<numPatterns ) |
170 | 170 |
{ |
171 | 171 |
Pattern p = mPatterns.get(pattern); |
172 |
if( p!=null ) p.backMove(post);
|
|
172 |
if( p!=null ) p.backMove(pre);
|
|
173 | 173 |
} |
174 | 174 |
} |
175 | 175 |
|
... | ... | |
191 | 191 |
|
192 | 192 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
193 | 193 |
|
194 |
private static class Pattern implements RubikPostRender.ActionFinishedListener
|
|
194 |
private static class Pattern implements RubikPreRender.ActionFinishedListener
|
|
195 | 195 |
{ |
196 | 196 |
private String nameStr, moveStr; |
197 | 197 |
private int[][] moves; |
... | ... | |
249 | 249 |
|
250 | 250 |
///////////////////////////////////////////////////////////// |
251 | 251 |
|
252 |
void makeMove(RubikPostRender post)
|
|
252 |
void makeMove(RubikPreRender pre)
|
|
253 | 253 |
{ |
254 | 254 |
if( !mInitialized ) initialize(); |
255 | 255 |
|
... | ... | |
260 | 260 |
if( curMove>numMove ) |
261 | 261 |
{ |
262 | 262 |
curMove= 0; |
263 |
post.initializeObject(null);
|
|
263 |
pre.initializeObject(null);
|
|
264 | 264 |
} |
265 | 265 |
else |
266 | 266 |
{ |
267 | 267 |
int axis = moves[curMove-1][0]; |
268 | 268 |
int rowBitmap= moves[curMove-1][1]; |
269 | 269 |
int bareAngle= moves[curMove-1][2]; |
270 |
int angle = bareAngle*(360/post.getObject().getBasicAngle());
|
|
270 |
int angle = bareAngle*(360/pre.getObject().getBasicAngle());
|
|
271 | 271 |
int numRot = Math.abs(bareAngle); |
272 | 272 |
|
273 | 273 |
if( angle!=0 ) |
274 | 274 |
{ |
275 | 275 |
mCanRotate = false; |
276 |
post.addRotation(this, axis, rowBitmap, angle, numRot*DURATION_MILLIS);
|
|
276 |
pre.addRotation(this, axis, rowBitmap, angle, numRot*DURATION_MILLIS);
|
|
277 | 277 |
} |
278 | 278 |
else |
279 | 279 |
{ |
... | ... | |
289 | 289 |
|
290 | 290 |
///////////////////////////////////////////////////////////// |
291 | 291 |
|
292 |
void backMove(RubikPostRender post)
|
|
292 |
void backMove(RubikPreRender pre)
|
|
293 | 293 |
{ |
294 | 294 |
if( !mInitialized ) initialize(); |
295 | 295 |
|
... | ... | |
300 | 300 |
if( curMove<0 ) |
301 | 301 |
{ |
302 | 302 |
curMove=numMove; |
303 |
post.initializeObject(moves);
|
|
303 |
pre.initializeObject(moves);
|
|
304 | 304 |
} |
305 | 305 |
else |
306 | 306 |
{ |
307 | 307 |
int axis = moves[curMove][0]; |
308 | 308 |
int rowBitmap= moves[curMove][1]; |
309 | 309 |
int bareAngle= moves[curMove][2]; |
310 |
int angle = bareAngle*(360/post.getObject().getBasicAngle());
|
|
310 |
int angle = bareAngle*(360/pre.getObject().getBasicAngle());
|
|
311 | 311 |
int numRot = Math.abs(bareAngle); |
312 | 312 |
|
313 | 313 |
if( angle!=0 ) |
314 | 314 |
{ |
315 | 315 |
mCanRotate = false; |
316 |
post.addRotation(this, axis, rowBitmap, -angle, numRot*DURATION_MILLIS);
|
|
316 |
pre.addRotation(this, axis, rowBitmap, -angle, numRot*DURATION_MILLIS);
|
|
317 | 317 |
} |
318 | 318 |
else |
319 | 319 |
{ |
... | ... | |
483 | 483 |
|
484 | 484 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
485 | 485 |
|
486 |
public void makeMove(RubikPostRender post, int tab, int cat, int pat)
|
|
486 |
public void makeMove(RubikPreRender pre, int tab, int cat, int pat)
|
|
487 | 487 |
{ |
488 | 488 |
Category c = getCategory(tab,cat); |
489 |
if( c!=null ) c.makeMove(post,pat);
|
|
489 |
if( c!=null ) c.makeMove(pre,pat);
|
|
490 | 490 |
} |
491 | 491 |
|
492 | 492 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
493 | 493 |
|
494 |
public void backMove(RubikPostRender post, int tab, int cat, int pat)
|
|
494 |
public void backMove(RubikPreRender pre, int tab, int cat, int pat)
|
|
495 | 495 |
{ |
496 | 496 |
Category c = getCategory(tab,cat); |
497 |
if( c!=null ) c.backMove(post,pat);
|
|
497 |
if( c!=null ) c.backMove(pre,pat);
|
|
498 | 498 |
} |
499 | 499 |
|
500 | 500 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
Also available in: Unified diff
Convert the PostRender to a PreRender, called before we render.
This makes more sense as this way things are prepared for the very first render.