3D그래픽2011. 12. 2. 15:00


물리 엔진을 제대로 사용하려면 이런 도구가 필요하다는 거군...
정말 그 깊이의 끝이 어디인지 가늠할 수가 없구나.

https://www.codeandweb.com/physicseditor


'3D그래픽' 카테고리의 다른 글

Graphics and Game Gems Database  (0) 2012.01.20
3D Model Archive Collection  (0) 2011.12.03
Up vector에 따른 좌표 축  (0) 2011.11.23
OpenGL ES 2.0 Built-in Constant on NVIDIA Tegra 2 AP20H(LG P990)  (0) 2011.10.28
The Cg Tutorial  (0) 2011.10.22
Posted by 세월의돌
리눅스 & 안드로이드2011. 12. 1. 20:04
안드로이드 Activity의 onTouchEvent에서 pinch zoom in&out을 구현하는 방법은 다음과 같다.

@Override

public boolean onTouchEvent(MotionEvent event) {

final int pointerCount = event.getPointerCount();

final int actionMasked = event.getActionMasked();


if (pointerCount == 2 && actionMasked == MotionEvent.ACTION_MOVE) {

final float distX = event.getX(1) - event.getX(0);

final float distY = event.getY(1) - event.getY(0);

final float distance = (float) Math.sqrt(distX * distX + distY * distY);

float diff = 0;


if (mLastDistance == Float.MIN_VALUE) {

mLastDistance = distance;

} else {

diff = distance - mLastDistance;

mLastDistance = distance;

}


return true;

} else if (actionMasked == MotionEvent.ACTION_POINTER_UP) {

mLastDistance = Float.MIN_VALUE;

}

}


diff 에 MotionEvent.ACTION_MOVE 이벤트 마다, 실제 pinch gesture에 의해 변환된 차이가 저장된다.
이 값을 이용하여 적절히 활용하면 된다.

실제 거리가 아닌 비율이 필요하다면, 제곱근 연산을 제거할 수 도 있겠다.

Posted by 세월의돌