Zoom y carga de archivos TIFF muy grandes

Tengo un mapa de alta resolución muy grande que quiero usar en una aplicación (el tamaño de la imagen es de alrededor de 80 mb).

Me gustaría saber lo siguiente:

¿Cómo puedo cargar esta imagen de la mejor manera posible? Sé que tomará algunos segundos cargar la imagen (lo cual está bien) pero me gustaría notificar al usuario sobre el progreso. Me gustaría usar un modo determinado y mostrar esto en algún tipo deJProgressBar al usuario. Esto debe reflejar el número de bytes que se han cargado o algo así. ¿Hay algún método de carga de imágenes que pueda proporcionar esta funcionalidad (comoImageIO.read())?Debido a que el mapa es de muy alta resolución, me gustaría ofrecerle al usuario que se desplace para acercar y alejar la imagen. ¿Cómo puedo hacer esto de la mejor manera? Sé a ciencia cierta que volver a escalar unaBufferedImage la manera estándar tomaría mucho tiempo para un archivo tan grande. ¿Hay alguna forma eficiente de hacer esto?

¡Gracias por su aporte!

Saludos cordiales,
Héctor van den Boorn

PD. La imagen será dibujada en el lienzo de un JPanel.

Hola Andrew, muchas gracias por tu ayuda; Todo funcionó perfectamente y se está cargando rápido. Sin su experiencia y explicación, todavía habría estado trabajando en esto, por lo que ha ganado la recompensa y la plaza.

Lo que hice fue lo siguiente; Usando el marcador de imágenes, creé varias imágenes de diferente resolución y al comienzo de la ejecución cargué solo la resolución más pequeña. imagen. El resto se carga en subprocesos separados para que la ejecución no se detenga. Usando la información que me proporcionaste, uso las imágenes apropiadas al acercarme o alejarme. Soy un poco escéptico sobre el uso de los azulejos porque necesito dibujar mis propias imágenes en la parte superior del mapa y no pude encontrar la función de pintura en el frasco externo que me dijiste que usara, así que terminé usando algo simple; cuando el zoom o el panorama, el modo de cambio de escala se establece en rápido y cuando no lo hace o el desplazamiento, el ajuste de escala se establece en suave para imágenes de píxel perfecto (como usted sugirió), pero esto resulta ser lo suficientemente rápido y no lo hago No necesito azulejos (aunque veo que con imágenes aún más grandes sería necesario y entiendo la información que me has proporcionado).

Así que gracias de nuevo y todo está funcionando perfectamente :)

Respuestas a la pregunta(1)

Su respuesta a la pregunta