Java的世界风跟踪鼠标位置(tracking mouse position on Java Wor

2019-10-19 01:40发布

我想一个鼠标监听器添加到使用我的地球addMouseListener 。 它不显示任何错误,我甚至能够添加mouseClicked(MouseEvent e)仍然没有任何错误。 但最后,当我试图让使用当前位置worldWindowGLCanvas1.getCurrentPosition()它显示NULL,即使我点击地球或外...有人可以帮我做这个? 不要担心多余的空格。 由于网站不接受我的问题,我已经修改了:)

Answer 1:

我不知道如果这是你在问什么,但是这是为我工作:

final WorldWindowGLCanvas aCanvas = new WorldWindowGLCanvas();
aCanvas.setModel(new BasicModel());
aCanvas.getInputHandler().addMouseListener(new MouseAdapter() {
    @Override
    public void mouseClicked(MouseEvent pE) {

        Position aCurrentPosition = aCanvas.getCurrentPosition();

        //Or whatever work:      
        if(aCurrentPosition != null) {

            System.out.println("Current Pos= " + aCurrentPosition);

        } else {

            System.out.println("Current Pos is null!");

        }
    }
});

我加入了空检查,看它是否会永远得到null,并且它没有。 这段代码使得假设是一个鼠标点击会重新中心地球到那个位置。 调用aCanvas.getCurrentPosition()应返回地球中心。 如果画布上没有呈现或不可见,则此方法将返回null。



文章来源: tracking mouse position on Java WorldWind
标签: worldwind