Comunidad de diseño web y desarrollo en internet online

trabajo de imagenes como google earth

Citar            
MensajeEscrito el 19 Dic 2006 07:53 pm
saludos soy yo nuevamente...

tanto google earth como sus versiones flash trabajan las imagenes en baja para cuando se logra un acercamiento estas cargan en mejor calidad... mi pregunta es alguien sabe como hacer esto en flash ya que carga solamente lo que esta visible lo demas lo deja en una calidad menor y asi optimiza recursos.

Gracias.

Por Kalakfactory

38 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Dic 2006 03:41 am
Bueno, el concepto no es complicado, pero realizarlo si.

Lo ideal sería que usaras la clase tween para aumentar el tamaño de cada imagen.

Obviamente, estas perderían calidad, pero es en ese momento que comenzás a cargar las nuevas imágenes encima de las anteriores.

Los mayores problemas te los va a dar el hecho de que necesitás que encajen perfectamente. Eso se soluciona fácilmente (de nuevo, simple el concepto, difícil la realización).

Para esto, hay que saber exactamente a que porcentaje del zoom corresponden las imágenes nuevas (los aumentos).

Supongamos 200%

Bien, apartir del 100% de zoom, habría que cargar estas imágenes chicas (esto depende del efecto que quieras, ya que va a demorar cada zoom, pero al acercar no vas a tener tanto tiempo de edspera ya que este viene luego.

El 200% significa que vas a necesitar 4 imágenes chicas por cada grande manteniendo la escala.

Sabiendo el tamaño de las imágenes y un poco de matemática de primer grado se calcula la ubicación de las nuevas imágenes.

O sea. Si el ancho den una imágen a tamaño sin escalar es de 200x200 px entonces, cada una de las 4 imágenes a cargar se ubican (trabajando con puntos de anclaje en la esquina superior izquierda) en:

img1: x=0 y=0
img2: x=100 y=0
img3: x=0 y=100
img4: x=100 y=100

Recordá, que las imágenes nuevas también miden 200x200 px. Estos valores se aplican cuando ya están escaladas (al 50%).

Espero haberme explicado bien, lo único que queda es borrar las imágenes que ya no se ven para no sobrecargar la memoria. algo así:

Código :

if (cargadas4imagenesDeCuadrado1) {
borrar cuadrado1;
}


Espero esta explicación te haya sido útil ^^

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie
Citar            
MensajeEscrito el 20 Dic 2006 12:05 pm
el concepto lo entiendo....
y de hecho es no es complejo pero requiere de un trabajo en materia de imagenes bastante alto..

ahora el tema esta que en estos zoom solo se carga el rectangulo que esta visible.... por que si uno se desplaza hacia uno de los lados estos aun estan borrosos por que no han sido cargados... esto me da a entender que no es un simple sistema de imagenes en 3 o 4 tipos de calidad... sino que hay algun codigo java o algo por el estilo que manipula el efecto cargando solo lo que esta presente..

:crap:

Por Kalakfactory

38 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Dic 2006 08:04 pm
Eso lo podés hacer con arrays. Cada imágen se cargaría con un array que indique cada una de las cuatro imágenes que la componen (insisto con el cuatro porque simplifica las cosas, pero cualquier cuadrado perfecto 4, 9, 16, etc.. debería funcionar).

Si una imagen x está siendo vista, el programa debería solamente cargar aquellas imagenes aumentadas indicadas en el Array.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.