Point da = map1().getMapPosition(48.922499263758255, 16.875);
System.out.println(da);


有人能帮我吗?我想通过使用此getMapPosition将坐标转换为点,但是我所做的一切都为我提供了null值。为什么会这样呢?

谢谢。

最佳答案

快速查看相关的JMapViewer源显示,您对getMapPosition()的调用会调用附近的重载,且checkOutside设置为true。如果与坐标对应的null在可见地图之外,则结果为Point

if (checkOutside && (p.x < 0 || p.y < 0 || p.x > getWidth() || p.y > getHeight())) {
    return null;
}


而是使用允许您将checkOutside显式设置为false的实现之一。例如,

Point da = map1().getMapPosition(48.9225, 16.875, false);


要么

Coordinate coord = new Coordinate(48.9225, 16.875);
Point da = map1().getMapPosition(coord, false);

关于java - getMapPostition返回空值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43463367/

10-09 04:08