如何围绕固定(焦点)点进行缩放?即在缩放时焦点应保持在相同位置。我使用以下代码:
public void scaleAroundPoint(float scale,float focusX,float focusY) {
float oldX=focusX/this.getScaleX();
float oldY=focusY/this.getScaleY();
float oldScale=this.getScaleX();
this.setScaleX(scale);
this.setScaleY(scale);
float newX=focusX/this.getScaleX();
float newY=focusY/this.getScaleY();
float dx=oldX-newX;
float dy=oldY-newY;
this.setX(this.getX()-dx);
this.setY(this.getY()-dy);
}
但它导致焦点不是我在focusX,focusY
中传递的点PS: setPivotX,setPivotY方法不适合我,因为我也同时使用缩放执行双轴滚动,所以它最好是枢轴点保持在0,0