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

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

谢谢。

4

1 回答 1

1

对相关来源的快速检查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);
于 2017-04-19T02:28:50.170 回答