Imagem, coordenadas e Java

3 respostas
L

Boa tarde pessoal,
Estou com um probleminha.
Preciso criar um programa onde cada pedaço de uma imagem façam ações diferentes com um clique de mouse.
Por exemplo só para entender:

Tenho a imagem de um corpo humano.

Cliquei na mao - abana o braço em sinal de tchau.
Cliquei na cabecao - responde que sim movimentando a cabeca.
*Nao é este o caso, é só para entender.

A solução que pensei foi recortar cada pedaço da imagem (fazendo diversas imagens), tentar ajeitar na tela pelo layout absoluto, tratar essas imagens como button, e adicionar os eventos.
Mas isso vai dar um grande trabalho.

A pergunta é esta:
Alguém sabe outro modo mais simples de fazer isso, ou tratar os clique do mouse por coordenadas em cima de toda imagem (sem precisar cortar pedaços dela), ou se é possível fazer isso.

Aguardo uma resposta, e muito obrigado pela atenção.

Até mais.
Luiz

3 Respostas

E

Pelo que entendi é algo parecido com isso:
http://www.guj.com.br/posts/list/48296.java#253077
Fiz um exemplo pra ilustrar a minha solução…É necessário ver se a sua imagem tem uma divisão padrão em áreas como no meu exemplo…

L

O exemplo esta muito legal, eu só não sei se ira servir completamente, pois (me corrija se eu estiver errado) para cada clique ele executa a mesma ação, eu gostaria que para as coordenadas (x, y, w, z) fizesse uma ação, para a coordenada (a,b,c,d) fizesse outra ação, isto é possível?

ViniGodoy

Se for 2D, use Java2D diretamente. Aí vc desenha a imagem onde quiser e rastreia os cliques em toda a área de desenho. Fica mais fácil de programar e mais rápido do que xunxar com componentes do Swing também.

Se for 3D, você pode usar o JOGL para o opengl (que já tem métodos de picking), ou usar uma engine pronta, como o JMonkeyEngine.

Criado 25 de outubro de 2008
Ultima resposta 27 de out. de 2008
Respostas 3
Participantes 3