0

在大多数应用程序中,向下旋转轮子会减小缩放对象的大小,而向上旋转轮子会增加大小。

在 piccolo2d 中,默认行为是相反的:

private static void showWorldNode() {
        new PFrame() {

            @Override
            public void initialize() {

                getCanvas().getLayer().addChild(worldNode);

                PMouseWheelZoomEventHandler mouseWheelZoomEventHandler = new PMouseWheelZoomEventHandler();
                mouseWheelZoomEventHandler.zoomAboutMouse();
                getCanvas().addInputEventListener(mouseWheelZoomEventHandler);
            }

        };
    }

如何恢复为默认值?

4

1 回答 1

1

您可以提供负比例因子来反转行为,例如:

mouseWheelZoomEventHandler.setScaleFactor(-0.1d);

PMouseWheelZoomEventHandler根据比例因子和MouseWheelEvent.getWheelRotation()的值计算缩放值,它返回:

如果鼠标滚轮向上/远离用户旋转,则为负值,如果鼠标滚轮向下/向用户旋转,则为正值

这是来自的相关代码PMouseWheelZoomEventHandler

double scale = 1.0d + event.getWheelRotation() * scaleFactor;
于 2014-05-21T03:44:00.953 回答