JXMapViewer меняет ориентацию на заголовок - PullRequest
3 голосов
/ 16 апреля 2010

Я пытаюсь использовать JXMapViewer (из swingx-ws) с Open Street Maps. Мне было интересно, можно ли будет отображать листы карты в JXMapViewer на основе заголовка, а не на север вверх. Например, обычные автомобильные GPS-навигаторы позволяют вам это делать.

Я просмотрел документацию, и, похоже, нет простого способа сделать это. Есть ли что-то еще, что выполняет это, кроме JXMapViewer?

1 Ответ

3 голосов
/ 19 апреля 2010

Неважно, я нашел решение.Вот как я это сделал (если кому-то интересно):

Я подклассифицировал JXMapViewer и переопределил метод рисования.В методе рисования содержимое JPanel преобразуется в BufferedImage, который затем поворачивается в соответствии с углом и затем рисуется поверх панели.

, поэтому super.paint () -> BufferedImage-> применяет affineTransformationк нему -> нарисовать новое изображение.

Конечно, вам также необходимо переопределить методы convertGeoPositionToPoint и convertPointToGeoPosition, принимая во внимание тот факт, что изображение поворачивается.

...