Tenho um software utilizado pelos geólogos para fazer descrição mineralógica de amostras de rocha. Este software interage com um dispositivo que move a platina do microscópio. Ou seja, à medida que o geólogo vai descrevendo os minerais na amostra, a platina vai modendo-se para o próximo ponto de descrição. Essa análise do Geólogo cria uma espécie de percurso de descrição. É importante manter e representar no software este percurso. Entre um ponto de descrição e outro, existe um passo de deslocamento. Este passo pode variar entre 0,005mm e 16mm. A amostra da rocha tem 40mmX40mm. Eu represento essa amostra em um JPanel de 400X400 pixels. Todavia, quando preciso representar passos muito pequenos (0,005mm, por exemplo), o usuário não consegue distinguir os pontos de descrição representados no “mapa”. Por isso, preciso implementar um tipo de zoom.
A primeira técnica que resolvi implementar é a de foco+contexto. Ou seja, eu altero a escala de tudo e foco na parte desejada. Mas não sei como fazer isso direito…Até consegui aumentar ou diminuir a representação das minhas estruturas, mas tem vezes que eu preciso gerar áreas desenhadas muito grandes, que não cabem em JPanels, e meu usuário deveria ser capaz de movimentar essa visualização, clicando em cima e arrastando…Alguém tem alguma idéia de como posso fazer?