Scripting en gvSIG: Añadir capa

cargarCapaHoy vamos a comentar un par de lineas de código muy útiles para poder añadir una capa existente de nuestro ordenador a nuestra Vista desde el módulo de Scripting, de una forma sencilla seleccionando el archivo en un cuadro dialogo, y de paso sacar algo de información sobre la nueva capa agregada.

La función que permite cargar una capa ya existente a nuestra Vista actual es loadShapeFile. Esta función consta de dos parámetros, la ruta y la proyección. Lo recomendable sería utilizar, como en el ejemplo de abajo, la proyección utilizada en la Vista donde queremos añadir la capa, sino, por defecto nos añadirá la capa como si su proyección fuera WGS84:

layer = loadShapeFile(<rutaCapa>,[CRS=WGS84])

cargarCapa2

Nosotros, para facilitar la obtenención de la ruta al archivo que queremos, hemos utilizado un ventana de diálogo. En la función introducir el título y la ruta inicial que queramos por defecto, el resultado lo pasaremos como ruta a la función anterior:

openFileDialog("Titulo","C:/gvsig/")

Y el script que hemos hecho, y que permite agregar una capa que seleccionemos a la vista actual es:

from gvsig import *
from commonsdialog import *

def main():
    """Cargar una capa existente"""

    ruta = openFileDialog("Ruta","C:/gvsig/")
    capa = list(ruta)[0]
    CRS = currentView().getProjection()
    layer = loadShapeFile(capa,CRS=CRS)

    print "\nCapa cargada con exito!"
    print "Nombre: ",layer.name
    print "Tipo: ",layer.getTypeVectorLayer().name
    print "Entidades: ", layer.features().getCount()
    print "Proyeccion: ", layer.getProjectionCode()
1 comentario

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: