Revision 72d6857c
Added by Leszek Koltunski over 2 years ago
src/main/java/org/distorted/objectlib/effects/win/WinEffectGlow.java | ||
---|---|---|
67 | 67 |
degreeDyn.add(new Static1D(1.5f)); |
68 | 68 |
degreeDyn.add(new Static1D(1.0f)); |
69 | 69 |
|
70 |
Static3D move = mPre.getMove(); |
|
71 |
float moveX = move.get0(); |
|
72 |
float moveY = move.get1(); |
|
73 |
int width = mScreen.getWidth(); |
|
74 |
int height= mScreen.getHeight(); |
|
70 |
float moveX = mPre.getMoveX(); |
|
71 |
float moveY = mPre.getMoveY(); |
|
72 |
int width = mScreen.getWidth(); |
|
73 |
int height = mScreen.getHeight(); |
|
75 | 74 |
Static3D center = new Static3D(moveX/width, moveY/height, 0); |
76 | 75 |
float ratio = 0.5f*mObject.getRatio(); |
77 | 76 |
|
src/main/java/org/distorted/objectlib/main/ObjectControl.java | ||
---|---|---|
26 | 26 |
|
27 | 27 |
import org.distorted.library.main.QuatHelper; |
28 | 28 |
import org.distorted.library.type.Static2D; |
29 |
import org.distorted.library.type.Static3D; |
|
30 | 29 |
import org.distorted.library.type.Static4D; |
31 | 30 |
|
32 | 31 |
import org.distorted.objectlib.helpers.BlockController; |
... | ... | |
57 | 56 |
private Movement mMovement; |
58 | 57 |
private boolean mDragging, mBeginningRotation, mContinuingRotation; |
59 | 58 |
private int mScreenWidth, mScreenHeight, mScreenMin; |
60 |
private Static3D mMove;
|
|
59 |
private float mMoveX, mMoveY;
|
|
61 | 60 |
|
62 | 61 |
private float mRotAngle, mInitDistance; |
63 | 62 |
private float mStartRotX, mStartRotY; |
... | ... | |
330 | 329 |
private void prepareDown(MotionEvent event) |
331 | 330 |
{ |
332 | 331 |
mPointer1 = event.getPointerId(0); |
333 |
mX1 = event.getX(); |
|
334 |
mY1 = event.getY(); |
|
332 |
mX1 = event.getX() - mMoveX;
|
|
333 |
mY1 = event.getY() + mMoveY;
|
|
335 | 334 |
mPointer2 = INVALID_POINTER_ID; |
336 | 335 |
} |
337 | 336 |
|
... | ... | |
343 | 342 |
|
344 | 343 |
if( index1>=0 ) |
345 | 344 |
{ |
346 |
mX1 = event.getX(index1); |
|
347 |
mY1 = event.getY(index1); |
|
345 |
mX1 = event.getX(index1) - mMoveX;
|
|
346 |
mY1 = event.getY(index1) + mMoveY;
|
|
348 | 347 |
} |
349 | 348 |
|
350 | 349 |
int index2 = event.findPointerIndex(mPointer2); |
351 | 350 |
|
352 | 351 |
if( index2>=0 ) |
353 | 352 |
{ |
354 |
mX2 = event.getX(index2); |
|
355 |
mY2 = event.getY(index2); |
|
353 |
mX2 = event.getX(index2) - mMoveX;
|
|
354 |
mY2 = event.getY(index2) + mMoveY;
|
|
356 | 355 |
} |
357 | 356 |
} |
358 | 357 |
|
... | ... | |
373 | 372 |
if( mPointer1==INVALID_POINTER_ID ) |
374 | 373 |
{ |
375 | 374 |
mPointer1 = event.getPointerId(index); |
376 |
mX1 = event.getX(index); |
|
377 |
mY1 = event.getY(index); |
|
375 |
mX1 = event.getX(index) - mMoveX;
|
|
376 |
mY1 = event.getY(index) + mMoveY;
|
|
378 | 377 |
} |
379 | 378 |
else if( mPointer2==INVALID_POINTER_ID ) |
380 | 379 |
{ |
381 | 380 |
mPointer2 = event.getPointerId(index); |
382 |
mX2 = event.getX(index); |
|
383 |
mY2 = event.getY(index); |
|
381 |
mX2 = event.getX(index) - mMoveX;
|
|
382 |
mY2 = event.getY(index) + mMoveY;
|
|
384 | 383 |
} |
385 | 384 |
} |
386 | 385 |
|
... | ... | |
489 | 488 |
} |
490 | 489 |
} |
491 | 490 |
|
492 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
493 |
|
|
494 |
Static3D getMove() |
|
495 |
{ |
|
496 |
return mMove; |
|
497 |
} |
|
498 |
|
|
499 | 491 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
500 | 492 |
// INTERNAL API (for AutomaticControl) |
501 | 493 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
... | ... | |
536 | 528 |
|
537 | 529 |
mPreRender = new ObjectPreRender(act,this,actioner); |
538 | 530 |
mInterface = actioner; |
539 |
mMove = new Static3D(0,0,0); |
|
540 | 531 |
} |
541 | 532 |
|
542 | 533 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
... | ... | |
553 | 544 |
|
554 | 545 |
public void setMove(int xmove, int ymove) |
555 | 546 |
{ |
556 |
mMove = new Static3D(xmove,ymove,0); |
|
557 |
mPreRender.setMove(mMove); |
|
547 |
mMoveX = xmove; |
|
548 |
mMoveY = ymove; |
|
549 |
|
|
550 |
mPreRender.setMove(xmove,ymove); |
|
558 | 551 |
} |
559 | 552 |
|
560 | 553 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
src/main/java/org/distorted/objectlib/main/ObjectPreRender.java | ||
---|---|---|
47 | 47 |
private final BlockController mBlockController; |
48 | 48 |
private final ObjectLibInterface mInterface; |
49 | 49 |
private String mDebug; |
50 |
private Static3D mMove;
|
|
50 |
private float mMoveX, mMoveY;
|
|
51 | 51 |
|
52 | 52 |
private boolean mFinishRotation, mRemoveRotation, mRemovePatternRotation, mAddRotation, |
53 | 53 |
mSetQuat, mChangeObject, mSolveObject, mScrambleObject, |
... | ... | |
87 | 87 |
mNewObject = null; |
88 | 88 |
|
89 | 89 |
mDebug = ""; |
90 |
mMove = new Static3D(0,0,0); |
|
91 | 90 |
|
92 | 91 |
mScreenWidth = 0; |
93 | 92 |
mScrambleObjectNum = 0; |
... | ... | |
106 | 105 |
|
107 | 106 |
if( mOldObject!=null ) mOldObject.releaseResources(); |
108 | 107 |
mOldObject = mNewObject; |
108 |
Static3D move = new Static3D(mMoveX,mMoveY,0); |
|
109 | 109 |
|
110 |
mNewObject = object.create( mController.getQuat(), mController.getMove(), mAct.get().getResources(), mScreenWidth);
|
|
110 |
mNewObject = object.create( mController.getQuat(), move, mAct.get().getResources(), mScreenWidth);
|
|
111 | 111 |
|
112 | 112 |
if( mNewObject!=null ) |
113 | 113 |
{ |
... | ... | |
318 | 318 |
|
319 | 319 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
320 | 320 |
|
321 |
void setMove(Static3D move)
|
|
321 |
void setMove(float xmove, float ymove)
|
|
322 | 322 |
{ |
323 |
mMove = move; |
|
323 |
mMoveX = xmove; |
|
324 |
mMoveY = ymove; |
|
324 | 325 |
} |
325 | 326 |
|
326 | 327 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
... | ... | |
341 | 342 |
|
342 | 343 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
343 | 344 |
|
344 |
public Static3D getMove()
|
|
345 |
public float getMoveX()
|
|
345 | 346 |
{ |
346 |
return mMove; |
|
347 |
return mMoveX; |
|
348 |
} |
|
349 |
|
|
350 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
351 |
|
|
352 |
public float getMoveY() |
|
353 |
{ |
|
354 |
return mMoveY; |
|
347 | 355 |
} |
348 | 356 |
|
349 | 357 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
Also available in: Unified diff
off-center objects: finished.