Trabalhar com Mapeamento de Imagens em Java

Boa noite pessoal!!
Pesquisei em alguns tópicos aqui no site e na documentação, porém ainda to com dúvidas de como fazer o que preciso.

Preciso fazer “Um mapa iterativo” para a faculdade.
Eu ja tenho a ideia de como será, porém não estou sabendo por onde começar.
A ideia seria:

Utilizar um mapa padrão, criar alguns pontos nele, visíveis mesmo, umas bolinhas.
Quando eu passar o mouse em cima desse ponto abrir uma janelinha (parecido com o Word, quando vc passa o mouse em cima de uma função e abre uma janela explicando ela e mostrando a tecla de atalho)
Ou se isso não for não customizavel ou complicado, abrir um JOptionPane mesmo, sem problemas.

Segue abaixo um exemplo da ideia:

Mas definindo aqui minha maior dificuldade no momento, é de fazer o mapeamento da imagem e colocar esses pontos.
Os pontos também poderiam fazer parte da imagem assim como no exemplo que dei, mas ainda acabo caindo na duvida de mapear dentro do java esses pontos.

Uma opção é usar Java2D e carregar o mapa de uma imagem (png, jpeg), exibindo-a sobre um JPanel dentro de um JFrame.

Para os pontos, você pode ter uma classe (ex: PontoNoMapa) para representá-los, com coordenadas X e Y e um método desenhar() para desenhar o ponto no mapa.

Adicionando listeners a seu JFrame para a movimentação do mouse (mousemotionlistener, se não me engano) e você pode ter as coordenadas do mouse, podendo saber se ele passa sobre um ponto, e realizando o evento para exibir as informações quando isso acontecer (ex: exibir outro JFrame menor, ou mesmo uma “janela” desenhada também com Java2D).

Abraço.

2 curtidas