La Tierra como fondo de escritorio en gnome, con Xplanet

Esta receta explica como poner un fondo de pantalla muy resultón que consiste en una imagen realista de la Tierra con iluminación y nubes “reales”, que además se va actualizando para representar la situación actual. Todo ello gracias a xplanet.

Vamos a necesitar los siguientes ingredientes:

xplanet

Xplanet es una especie de planetario de bolsillo. Es capaz de representar 36 objetos celestes entre planetas y lunas del sistema solar en su posición actual e interpolada en cualquier momento de la historia. Además, permite superponer a la superficie del planeta un mapa de nubes. En Debian los paquetes se llaman xplanet y xplanet-images.

Xplanet puede usarse como salvapantallas, pero también puede volcar su salida a un fichero jpg, png, ppm, gif o tiff.

gconftool-2

Es un programa para establecer el fondo de pantalla de gnome de forma automática. Este programa es gconftool-2, es un editor de gconf, el gestor de configuraciones de gnome. Salvando muchísimas y variadas distancias, vendría a ser como el regedit.

el mapa de nubes (actualizado)

Como se trata de una images de las nubes que cambia a largo del día, necesitaremos un lugar de donde obtenerlo.

Estos son algunos mirrors del mapa de nubes en resolución de 2048×1024 (probados por última vez el 1/03/10):

En la página de xplanet hay una lista de mirrors

En la web de xplanet hay un script llamado download_clouds.py que se encarga de esta labor. De ese script tan solo tendremos que ajustar un parámetro, el fichero de salida del mapa de nubes. El parámetro es el siguiente.

defaultOutputFile = "/ruta_donde_quieres_guardar_el_fichero/clouds_2048.jpg"

Tenemos una versión mejorada del mismo script clouds.py. Si lo vas a meter en /etc/cron.hourly o similar, quítale la extensión porque sino no va a funcionar.

El script deberá ejecutarse periódicamente. Como el mapa de nubes se descarga solo si hay versión nueva y esta solo aparece cada 3 o 4 horas, yo lo he metido en mi cron.hourly, es decir, se ejecuta cada hora aunque solo encuentra una versión nueva de las nubes cada 3 o 4.

En mi caso, y como el script es ejecutado por cron con permisos de superusuario, la ruta donde guardo la imagen descargada es la ruta donde xplanet tiene todas sus imágenes. Es decir.

defaultOutputFile = "/usr/share/xplanet/images/clouds_2048.jpg"

Ya tenemos nuestro mapa de nubes actualizado.

Generando la imagen para el fondo

Para esta labor, también tenemos un script procedente de la web Gnome Hacks.

Como el script es sencillo, lo pongo aquí para comentar algunas cosas que nos puede interesa tocar.

#!/bin/bash
 
#Cada cuanto tiempo se renovará la imagen
DELAY=30m
 
#Lugar donde se alojará la imagen
PREFIX=/home/fsancho/.xplanet/images
 
#Fichero de salida
OUTPUT=xplanetBkg.png
 
#Tamaño de la imagen
GEOMETRY=1024x768
 
#Lugar desde donde se observa la imagen. Actualmente se ve europa en primer plano
LONGITUDE=10
LATITUDE=40
 
if test -e "$PREFIX$OUTPUT"; then
   rm "$PREFIX$OUTPUT"
   OUTPUT="_$OUTPUT"
else
   rm "$PREFIX""_$OUTPUT"
fi
 
# Comando que genera la imagen
xplanet -num_times 1 -output "$PREFIX$OUTPUT" -geometry $GEOMETRY -longitude $LONGITUDE \ 
-latitude $LATITUDE
 
gconftool-2 -t str -s /desktop/gnome/background/picture_filename "$PREFIX$OUTPUT"
 
sleep $DELAY
exec $0

Este comando se debe ejecutar al arrancar la sesión de gnome. En mi caso lo he puesto en ~/bin/xplanet-gnome.sh y la invocación se realiza desde las preferencias de la sesión de gnome. Para ello, ve al menú Escritorio->Preferencias->Sesiones una vez arrancado el gestor de sesiones de gnome, añade la llamada al script anterior en la pestaña “Programas al inicio” teniendo cuidado de poner la ruta completa donde se encuentra el script y añadiendo al final de la línea de comandos el caracter “&” para que el comando se lance en segundo plano.

Para que las nubes se superpongan al mapa del mundo, necesitas editar el fichero de configuración de xplanet que está en ~/.xplanet/config/default y en la sección dedicada al planeta Tierra añade lo siguiente:

[earth]
color={28, 82, 110}
cloud_gamma=1
cloud_map=clouds_2048.jpg
cloud_threshold=90

Referencias

  • XPlanet
  • Blue Marble Maps
  • Earth Images Al final de esta página tenemos un buen mapa con la máscara para los océanos. Debes invertir los colores de la imágen para que se note el efecto de brillo de los océanos con la luz del sol.

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Buenas, tengo un pequeño

Buenas, tengo un pequeño problema, cuando lo ejecute me aparece:

Sorry, this program was not compiled with JPEG support
Warning: Can't load map file /usr/local/share/xplanet/images/earth.jpg
Error: Can't create /usr/share/xplanet/images/_xplanetBkg.png.
Exiting from DisplayOutput.cpp at line 68

Alguna idea de lo que puede ser? Muchisimas gracias

xplanet como fondo de escritorio

Hola
me perdi en la ultima parte
al script de generando una imagen para el fondo como lo llamas cuando lo
guardas y en donde exatamente lo guardas
muchas gracias
Un Saludote

Imagen de david.villa

sacando más jugo a xplanet

Yo utilizo xplanet como salvapantallas porque como fondo me despista mucho, aunque admito que es una virguería.

Salvapantallas

El comando de xscreensaver que uso es:

xplanet -vroot -wait 10 -label -latitude 30 -radius 35 -range 5 -color green

Con esto se consigue situar el punto de vista sobre Europa (el continente, no el satélite) y permite ver algún planetilla que pase por detrás. Si utilizas gnome-screensaver en lugar de xscreensaver mira la receta Xplanet como salvapantallas con gnome-screensaver

Configuración

Y mi ~/.xplanet/config/default es:

[default]
color=gray
 
[earth]
"La Tierra"
cloud_gamma=2
cloud_map=clouds_2048.jpg
cloud_threshold=90
bump_map=bump.png
bump_scale=2
specular_map=mask.png

Para que todo esto funcione se necesitan los siguientes ficheros:

  • earth.jpg: la Tierra de día
  • night.jpg: vista nocturna
  • bump.png: mapa de alturas para el bump-mapping
  • mask.png: máscara para que los oceanos reflejen la luz del sol

Algunos sitios dónde conseguir buenas imágenes:

EARTH
2400×1200 – http://www.radcyberzine.com/xglobe/earth_2400.jpg
2048×1024 – http://veimages.gsfc.nasa.gov/2433/land_shallow_topo_2048.jpg
2048×1024 – VERANO http://earthobservatory.nasa.gov/Newsroom/BlueMarble/Images/land_shallow_topo_2048.jpg
2048×1024 – INVIERNO http://earthobservatory.nasa.gov/Newsroom/BlueMarble/Images/land_ocean_ice_2048.jpg
Mapas por meses: http://earthobservatory.nasa.gov/Features/BlueMarble/BlueMarble_monthlies.php

NIGHT
2048×1024 – http://veimages.gsfc.nasa.gov/1438/land_ocean_ice_lights_2048.tif
2048×1024 – http://earthobservatory.nasa.gov/Newsroom/BlueMarble/Images/land_ocean_ice_lights_2048.jpg
http://visibleearth.nasa.gov/view_rec.php?id=1438

BUMP
—> http://visibleearth.nasa.gov/view_rec.php?id=8391
2048×1024 – http://www.evl.uic.edu/pape/data/Earth/2048/etopo-land.tif.gz
4096×2048 – http://www.evl.uic.edu/pape/data/Earth/4096/etopo-land.tif.gz

MASK
—> http://visibleearth.nasa.gov/view_rec.php?id=8392
2048×1024 – http://www.evl.uic.edu/pape/data/Earth/2048/etopo-landmask.tif.gz
4096×2048 – http://www.evl.uic.edu/pape/data/Earth/4096/etopo-landmask.tif.gz

SITIOS:
http://xplanet.sourceforge.net/maps.php
http://www.vterrain.org/Imagery/WholeEarth/index.html
http://visibleearth.nasa.gov/view_set.php?categoryID=2363
http://visibleearth.nasa.gov/view_rec.php?vev1id=11656
http://earthobservatory.nasa.gov/Newsroom/BlueMarble/BlueMarble_2002.html
http://www.unearthedoutdoors.net/global_data/true_marble/download

Un pantallazo del resultado:


xplanet

No soy portavoz de ningún colectivo, grupo o facción. Mi opinión es personal e intransferible.