getMapPostition returns 空值

getMapPostition returns null value

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

有人可以帮助我吗?我想通过使用此 getMapPosition 将坐标转换为点,但无论我做什么,它都会给我一个 null 值。为什么会这样?

谢谢。

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

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);