cocos2dx-Android地圖縮放計算偏移左上角原點去了,用coco2d-android版本在寫個地圖,兩指縮放,一直往左上角原點偏移過去,正常地圖兩指縮放,應該在中間。 一直獲取不到當前螢屏顯示中點位置,不知道是不是轉換世界坐標出錯,還是怎么回事
/**
* 有兩個手指按在螢屏上移動時,為縮放狀態 放大縮小
* 多指操作 手指抖動導致螢屏抖動
*
* @param event
*/
public void handleMultiTouch(MotionEvent event) {
mFingerDis = distanceBetweenFingers(event);
float fingersScale = (float) (distanceBetweenFingers(event) / lastFingerDis);
if (Math.abs(mFingerDis - lastFingerDis) > 5) {
if (mFingerDis > lastFingerDis) {
if (getScale() < SCALE_MAX_NUM) {
//獲取2點 中點坐標進行縮放
this.setScale(getScale() * fingersScale);
lastFingerDis = mFingerDis;
}
} else {
//縮放小于1倍就停止縮放
if (getScale() > SCALE_MIX_NUM) {
this.setScale((getScale() * fingersScale));
}
lastFingerDis = mFingerDis;
}
}
}
this.setScale((getScale() * fingersScale)); 單純計算縮放倍數縮放,縮放效果,左上角偏移了
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/42563.html
標籤:Cocos2d-x
上一篇:h5代碼轉小程式
下一篇:高內聚,低耦合
