Wednesday, April 25, 2012

Monitoreando la actividad del Popocatépetl



Emiliano Sánchez, un amigo en línea, que sigue mis pasos en programación me hizo una consulta: debido a la actividad volcánica del Popocatépetl, la cual está siendo monitoreada constantemente por el CENAPRED, hay en la página web de dicha institución imágenes del volcán, que se toman cada minuto. La idea de Emiliano es capturar las imágenes que produce el CENAPRED del Popocatépetl (que se generan minuto a minuto) y entonces, una vez que se tengan cientos, quizás miles de imágenes, crear una película de todo el desarrollo de lo que está pasando en el volcán.

El programa

Con esta idea en mente me di a la tarea de ver cómo se podía bajar una imagen de una página web. Hallé, para mi fortuna, que el CENAPRED, en su dirección (URL):

http://www.cenapred.unam.mx/images/popo1.jpg

genera una imagen llamada popo1.jpg por minuto. Esta imagen siempre es la misma, es decir, siempre se llama igual.

Escribí entonces un programa que captura la imagen generada por el CENAPRED cada minuto y la va guardando con nombres que tienen un número secuencial al final de su nombre de manera que pueda tener, por ejemplo, las siguientes imágenes: popo-1.jpg, popo-2.jpg, popo-3.jpg, etc. Así, se puede guardar toda la secuencia de fotos que automáticamente se generan en el sitio web.

El software permite alimentar la ruta de donde se obtendrá la imagen, el nombre con el que se va a guardar y finalmente, el contador para empezar la secuencia de fotos. Con estos datos, el programa funciona minuto a minuto.

Como efecto adicional, el programa presenta en la pantalla la última foto que se haya tomado. Tiene además una barra de progreso que cuenta hasta 60 segundos. De esta manera el usuario está siempre informado de lo que está pasando mientras el software corre.



Siguiente paso

Una vez que el sistema ha guardado las imágenes que genera la página del CENAPRED, se puede crear un archivo de video (formato AVI) que puede desplegar cada foto como una película. Para ello usé el componente en Delphi, AviWriter, para crear fácilmente archivos AVI, de Elliott Shevin, el cual usa mucho código de Anders Melander. Este programa simplemente pide las imágenes que queremos cargar para hacer el video y lo hace prácticamente de inmediato. Es una solución rápida, sin intención de ser la mejor solución, pero funciona.


Más información

El programa es totalmente gratuito. Si alguien lo quiere, escríbame y se lo mando a vuelta de correo. Para comentarios, ideas y consultas, favor de escribir a morsa@la-morsa.com

Tom Logan Volleyball Player Profile & Inages 2012


Full name: Logan Maile Lei Tom
Birth Date: May 25, 1981
Place of Birth: Napa, California, USA
Age: 30
Position: Outside Hitter
Height: 6-1
Weight: 170/77 Kilograms
Hometown: Salt Lake City, Utah
College: Stanford
Joined Team: January 2000
Current club: Fenerbahçe Universal
 Tom Logan
 Tom Logan
 Tom Logan
 Tom Logan
 Tom Logan
 Tom Logan
 Tom Logan
 Tom Logan
Tom Logan

Tuesday, April 24, 2012

Un llavero de alta tecnología

La tecnología para el consumidor final parece no tener jamás límites. La electrónica cada vez hace componentes más y más chicos, y los dispositivos son además más aguantadores y baratos de fabricar de manera que si, se descompone alguno de ellos, es mejor comprar uno nuevo que intentar siquiera repararlo.

Hoy en día tenemos todo tipo de dispositivos móviles. Los teléfonos "inteligentes" actuales tienen pantallas de cristal líquido, que soportan incluso miles de colores. Usan resoluciones cada vez más finas y la verdad me parece increíble que algunos componentes de estos teléfonos puedan tener estas calidades que asombran, partiendo del precio en el que son fabricados y vendidos. Para estas cuestiones los chinos hacen cosas fantásticas.

Y si hablo de esto es porque el otro día el papá de Pilar me regaló un llavero que me trajo de un viaje que hizo por Estados Unidos. Se trata de una cajita transparente que muestra mi nombre "Manuel", que se enciende y se paga cada cierto tiempo. Como el llaverito es transparente, es claro que es un artilugio electrónico. Tiene una pantalla de LCD a color, pero no tiene pilas. No. Tiene celdas solares por lo que el llavero tendrá una vida tan larga como la vida útil de los componentes que usa. Como está en un empaque de acrílico transparente, sellado, no se le puede meter agua ni polvo. En principio, pienso, puede durar toda la vida.

En la parte trasera del llavero le pegaron una calcomanía que dice "Miami", que con el tiempo se desgastará... y cuando eso pase, podré ver la parte trasera de la mini pantallita LCD que tiene el posmoderno llaverito. La verdad es que es un regalo original, el cual agradezco al papá de Pilar.

He aquí un video, el cual me mostró Ahmed Alejandro Díaz Barriga, el cual muestra un llavero de esta naturaleza:


____
(*) La imagen muestra ese llavero pero con un logotipo comercial. Evidentemente se puede poner cualquier imagen o texto que se deseé. Como la imagen es gif, quizás hasta se ve el parpadeo.

Friday, April 20, 2012

Stephanie Rice Hot 2012

 Stephanie Rice Hot 
 Stephanie Rice Hot 
 Stephanie Rice Hot 
Stephanie Rice Hot 

Stephanie Rice Australia Female Swimming Player Profile & Pictures 2012


Full name: Stephanie Louise Rice
Nickname(s): Ricey, Steph
Nationality: Australia
Born: 17 June 1988
Hometown: Brisbane, Queensland, Australia
Height: 1.76 m (5 ft 9 in)
Weight: 67 kg (150 lb; 10.6 st)
Age: 23
Strokes: Butterfly, freestyle, Individual Medley
Sport: Swimming
Stroke(s): Medley, Freestyle, Butterfly
Club: St Peters Western Swimming Club
Olympic Medals: Three Gold at the 2008 Beijing Olympics
Coach: Michael Bohl
Age started swimming: 18 months of age

 Stephanie Rice
 Stephanie Rice
 Stephanie Rice
 Stephanie Rice
 Stephanie Rice
 Stephanie Rice
 Stephanie Rice
 Stephanie Rice
Stephanie Rice

Tuesday, April 17, 2012

Mi caso contra OpenGL


OpenGL sirve para hacer gráficas. De acuerdo a la Wikipedia: OpenGL (Open Graphics Library) es una especificación estándar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan gráficos 2D y 3D. La interfaz consiste en más de 250 funciones diferentes que pueden usarse para dibujar escenas tridimensionales complejas a partir de primitivas geométricas simples, tales como puntos, líneas y triángulos. Fue desarrollada originalmente por Silicon Graphics Inc. (SGI) en 1992 y se usa ampliamente en CAD, realidad virtual, representación científica, visualización de información y simulación de vuelo. También se usa en desarrollo de videojuegos, donde compite con Direct3D en plataformas Microsoft Windows.

Y este tema me interesó hace tiempo, pero hasta ahora que estoy dando un curso de graficación en la Facultad de Ciencias de la UNAM, decidí aplicarme y ver qué tanto se podía hacer en OpenGL. Hallé de entrada que hay muchísima documentación y por ende, es fácil encontrar ejemplos, tutoriales, etc. En Google se pueden ver montones de imágenes muy bien logradas con esta biblioteca gráfica. Sin embargo, después de un par de meses de estar lidiando con este asunto encontré que hay cosas que no me convencen. He aquí algunas de ellas:

OpenGL tiene sus virtudes, pues se puede instalar prácticamente en cualquier herramienta de programación. Sin embargo, para cada una hay que seguir pasos diferentes. No tiene un procedimiento estándar para esto y cambia de acuerdo al marco de trabajo que quiera usarse.

  1. Para poder usar OpenGL y sacar provecho del mismo hay que pensar en modelos matemáticos. Uno lo que hace, al programar en OpenGL es crear un medio ambiente tridimensional, el cual es muy flexible en muchos sentidos. El problema es que esto hay que tenerlo presente al programar. Por ejemplo, si queremos crear una esfera, tenemos que escribir el código que haga esto. Si queremos que tenga textura tenemos que escribir las instrucciones que nos permiten "texturizar" el objeto, etc. No obstante, nada de esto podemos verlo "en vivo", es decir, necesitamos correr el programa y ver si nuestro modelo tridimensional matemático es lo que estábamos esperando (cosa que pocas veces sucede).
  2. Las instrucciones de OpenGL vienen en diferentes "formatos". Se puede usar por ejemplo, una instrucción que contenga parámetros enteros, dobles, de punto flotante, y tendremos que hay tres instrucciones diferentes, una para cada formato, en donde se agrega a la instrucción lo siguiente: GLColor* (1.0, 1.0, 1.0);en donde el * representa 3f (3 coordenadas de punto flotante); 3d (tres coordenadas de resolución doble); 3i (tres coordenadas enteras). Esto en mi opinión puede ser muy versátil, pero es confuso.
  3. La curva de aprendizaje es realmente lenta, porque insisto y hago énfasis: OpenGL no tiene un sistema para ir visualizando cómo se van haciendo las cosas de acuerdo a las instrucciones escritas. Hasta que se compila puede verse el resultado final, que de verdad, pocas veces coincide con lo que estábamos pensando.

Para mi gusto, sería mucho más amable tener una herramienta al mejor estilo 3dStudio, el cual permite en muchos casos hacer las imágenes interactivas, poner texturas, luces, trayectorias de la cámara para ver cómo se va a mover, etc. Así como está OpenGL, deja mucho que desear.

Quizás para alguna aplicación específica sea la herramienta adecuada pero hasta el momento usar OpenGL como la biblioteca gráfica de programación, parece ser demasiado complicado y poco amable con el programador.

Monday, April 16, 2012

Del folklore popular

Las campañas políticas que están a todo lo que dan en nuestro país son quizás el catalizador para ver algunas expresiones de las personas, sobre todo en las redes sociales, en donde los simpatizantes de uno u otro candidato hacen todo género de cosas para poner en desventaja a los antagonistas. En algunos casos parece que ridiculizar al oponente es algo hasta válido y si unos lo hacen, porque no pueden hacerlo los otros, uno podría preguntárselo.

Pero el hecho es que todo esto es parte de estas campañas negras, donde no se trata de mostrar propuestas, sino poner al contrario como el más cretino, el más imbécil, el más baboso y el que finalmente -debe pensarse es la conclusión al ver todas estas expresiones- no tiene sentido votar por ese candidato. 

Así, ya incluso aquí en este mismo blog he presentado un video donde Josefina Vázquez Mota dice que dará iPads y banda ancha a todos los jóvenes de México. Pero eso es poca cosa: ahora se presenta la Vázquez Mota equivocándose en dos actos de campaña, diciendo que fortalecerá el lavado de dinero. Véase el primer video:

En un mitín en Puebla, a fines de marzo del 2012

Y éste es el segundo:
En otro acto, en la primera semana de abril probablemente.

Aquí la candidata del PAN se equivoca contínuamente y por ende la burla es directa a su persona. Pero con los otros candidatos las cosas son diferentes. Por ejemplo, Enrique Peña Nieto, que su única virtud parece ser ese rostro de caudillo "totalmente palacio", que ve al futuro del país con alegría desbordada, aunque la realidad espantosa cotidiana nos muestre todo lo contrario en sus anuncios, es burla contínua por sus dislates, como por ejemplo cuando no supo decir tres libros que lo marcaron; o cuando se le olvidó de qué murió su esposa, entre otros. He aquí Pacasso mostrándolo como es:

Pacasso en su "Unidad de Quemados" (socialmente hablando).

Pero en el caso de Peña Nieto hay de donde cortar. Por ejemplo, el Monero Hernández hizo esto para MonoSapiens, de Proceso:

 
Dar click en la imagen para agrandar

O bien, este cartón en donde describe a los candidatos y sus spots:
Los tres candidatos en sus spots
 
Obviamente López Obrador no se salva tampoco. He aquí un video que viene, desde luego, de los que no toleran a este personaje:

Otro video de burla, ahora con AMLO

A mí lo que me parece curioso son todas estas expresiones populares. Me queda claro que los candidatos saben que hay quienes no votarán por ellos, pero ¿es necesario desdeñarlos? ¿burlarse de ellos? ¿hacer mofa pública?

Quiero pensar que todo esto es una válvula de escape de los ciudadanos comunes, del hombre de la calle, que vemos los abusos de los políticos, sus gigantescos gastos de campaña, sus sueldos enormes (véase cámara de diputados y senadores), entre otras menudencias. Aquí el que le entra a la política quiere ver cuánto saca, porque es claro que lo que no quiere hacer es trabajar honradamente. Esa frase de "quiero servir a mi país", que incluso se dice en algún spot del IFE suena cada vez más hueca.

Sasha Vujacic HD Wallpapers 2012

 Sasha Vujacic HD Wallpaper
 Sasha Vujacic HD Wallpaper
 Sasha Vujacic HD Wallpaper
 Sasha Vujacic HD Wallpaper
Sasha Vujacic HD Wallpaper

Sasha Vujacic Girlfriend Maria Sharapova 2012

 Sasha Vujacic Girlfriend
 Sasha Vujacic Girlfriend
 Sasha Vujacic Girlfriend
 Sasha Vujacic Girlfriend
 Sasha Vujacic Girlfriend
 Sasha Vujacic Girlfriend
 Sasha Vujacic Girlfriend
 Sasha Vujacic Girlfriend
Sasha Vujacic Girlfriend

Sasha Vujacic Slovenian Best NBA Player Profile,Biography & Photos 2012


Complete Name: Aleksandar "Saša" Vujacic
Position: Shooting Guard
Jersey Number: 18
Age: 28
Height: 6-7
Weight: 193 lbs.
Nickname: The Machine
Born: March 8, 1984 in Maribor, Slovenia
Seasons: 7
Status: Active
Origin: Maribor, Slovenia
Schools: N/A
Languages: Slovenian, English

Sasha Vujacic was born on born March 8, 1984 in Maribor, Socialist Republic of Slovenia, SFR Yugoslavia. He is currently playing in NBA for Los Angeles Lakers in NBA league as a shooting guard. Vujacic began his professional career at the age of 16, playing with Snaidero Udine of Italy and was also the part of Slovenian junior national team. He was drafted by the Los Angeles Lakers in the 2004 NBA Draft. Sasha has proven to be a quality shooter for the Lakers and has also earned the nickname of the Machine" because of his ability to hit several three pointers in a row.

 Sasha Vujacic
 Sasha Vujacic
 Sasha Vujacic
 Sasha Vujacic
 Sasha Vujacic
 Sasha Vujacic
 Sasha Vujacic
 Sasha Vujacic
Sasha Vujacic