PDF de programación - Construcción de un visor de shapefiles con herramientas libres

Imágen de pdf Construcción de un visor de shapefiles con herramientas libres

Construcción de un visor de shapefiles con herramientas libresgráfica de visualizaciones

Publicado el 25 de Diciembre del 2018
1.002 visualizaciones desde el 25 de Diciembre del 2018
513,9 KB
12 paginas
Creado hace 16a (19/09/2007)
CONSTRUCCIÓN DE UN VISOR DE SHAPEFILES CON HERRAMIENTAS LIBRES

Germán Alonso Carrillo Romero

[email protected]
http://geotux.tuxfamily.org

Introducción

Con el ánimo de construir mi propio visor de datos espaciales en formato vectorial, me di a
la tarea de buscar herramientas de software que me lo permitieran de la manera más libre
posible.

Para empezar, debo aclarar que no soy un buen programador, los programadores serios
pueden ver el siguiente artículo como poco profundo. Sin embargo, teniendo en cuenta mis
limitaciones, me parece fascinante poder integrar herramientas libres para obtener
resultados prácticos en el ámbito de la geomática.

¿Para qué tener mi propio visor?

 Para poder acceder rápidamente a mis datos espaciales, sin tener que cargar los
programas usuales, que pueden consumir recursos innecesarios en operaciones
simples de consulta.

 Para aprender a emplear y a integrar las facilidades que presentan muchos de los
proyectos de filosofía libre, demostrando así que el principal obstáculo en la
implementación de estas herramientas es nuestro desconocimiento y no sus
limitaciones funcionales.

¿Qué tipo de aplicación se va a generar?

Según Daniel P. Ames (quien está a cargo del desarrollo de componentes GIS en el proyecto
MapWindow) existen tres tipos de escenarios para desarrollar software GIS:

1. Desarrollo de extensiones y plug-ins que agregan funcionalidades a software GIS

existente en el escritorio.

2. Desarrollo de herramientas web de visualización y generación de mapas.
3. Desarrollo de aplicaciones independientes en el escritorio empleando componentes

GIS programables.

Nuestro visor de datos espaciales en formato vectorial será una aplicación independiente en
el escritorio, empleando un componente GIS programable, el
MapWinGis.ocx de
MapWindow.

¿Qué herramientas de software se requieren?

: Windows XP (Bueno, por algo se empieza...)

 Sistema Operativo


(Licencia: Privativa)



Public License)

 Marco de Desarrollo de

Software
 Entorno Integrado de Desarrollo (
 Componente GIS

: MapWinGIS.ocx (del proyecto MapWindow



Gis

: .NET Framework 2.0 (Licencia: Freeware)
) : SharpDevelop 2.1 (Licencia: GNU/GPL)
IDE

) (Licencia: Mozilla

¿Qué es .NET Framework?

.NET Framework es un marco de desarrollo de software compuesto por lenguajes de
programación, una biblioteca de clases (BCL) y un entorno de ejecución común para
lenguajes (CLR). Implementa los estándares abiertos ECMA e ISO/IEC que propenden por
una compatibilidad mínima entre los lenguajes que lo integran.

En otros términos, .NET Framework se encarga de proveer al programador los lenguajes,
herramientas y servicios necesarios para distribuir su aplicación en múltiples plataformas de
hardware.

¿Qué es SharpDevelop?

SharpDevelop es un IDE OpenSource que soporta el desarrollo de aplicaciones en lenguajes
como C# y VB.NET; permite escribir código en ASP.NET, ADO.NET, XML y HTML, entre otros;
tiene un depurador integrado; permite diseñar formularios para C# y VB.NET; está
traducido parcialmente al español; soporta proyectos de instalación; tiene un generador de
documentación embebido; soporta múltiples Frameworks: .NET 1.1 y 2.0, Mono y Compact
Framework; y admite el protocolo ActiveX (de manera parcial).

Es un IDE muy completo que cubre fácilmente los requerimientos de un programador en C#
o VB.NET. Particularmente, además de las necesidades básicas, necesitaba un entorno que
permitiera el manejo de componentes ActiveX y SharpDevelop lo cumple.

¿Qué es el MapWinGIS.ocx?

El MapWinGIS.ocx es un componente ActiveX escrito en C++ y desarrollado por el proyecto
MapWindow Gis. Facilita el desarrollo de aplicaciones en varios lenguajes de programación
(C#, VC++, VB6, VB.NET, VBA y Delphi). Esta compuesto por una Interfaz de Programación
de Aplicaciones (API) que permite el acceso a objetos, funciones, propiedades y métodos
relativos a la visualización y manipulación básica de información geográfica en formato
Shapefile, Grid y TIN.


Para comenzar...

Para comenzar la construcción del visor, debemos instalar el software requerido.

Instalación del .NET Framework

El .NET Framework 2.0 se puede descargar aquí. Tiene un tamaño de 22,4 MB y requiere el
Service Pack 2 de Windows instalado.
Una vez descargado, debemos ejecutar el archivo y seguir normalmente los pasos de
instalación.

Instalación del SharpDevelop 2.1

El instalador de Sharpdevelop 2.1 puede obtenerse aquí.

Contrario a lo que podríamos pensar sobre un tamaño exagerado del archivo de instalación
(pues es un IDE muy completo), solamente ocupa 8,63 MB en el disco duro y después de
instalado únicamente 34,26 MB, realmente sorprendente.

La instalación de SharpDevelop no presenta mayores inconvenientes.

Instalación del componente ActiveX MapWinGIS.ocx

Podemos obtener el componente MapWinGIS.ocx sin incluir sus dependencias aquí (archivo
comprimido, 2,23 MB), o incluyendo sus dependencias aquí (archivo ejecutable 15 MB). El
componente ActiveX requiere de varios archivos dll (runtimes de C y C++ 7.0) para
funcionar correctamente, si se quiere estar seguro sobre el funcionamiento del mismo, se
recomienda descargar la segunda opción, es decir, el archivo con dependencias.

1. Si se descargó el archivo sin dependencias



:

 Descomprimir el archivo MapWinGis43.zip
 Copiar el archivo MapWinGis.ocx a una de las siguientes carpetas:

c:\Archivos de Programa\Archivos Comunes\MapWindow\
c:\Archivos de Programa\Common Files\MapWindow\

Debemos crear la carpeta si no existe. En realidad no interesa en qué carpeta se
encuentre el archivo pero se recomienda una de las carpetas mencionadas para
poderlo encontrar fácilmente si se planean realizar más aplicaciones que
utilicen el componente.

2. Si se descargó el archivo con dependencias



:

Ejecutar el archivo MapWinGis43OCXOnly.exe y seleccionar la opción “No, I will
restart the computer later”.

El archivo MapWinGis43OCXOnly.exe instala las dependencias del componente
ActiveX y el archivo MapWinGis.ocx en la carpeta
c:\Archivos de Programa\Common Files\MapWindow\

Ahora debemos registrar el archivo MapWinGis.ocx en el sistema:

Abrir la ventana Ejecutar: Vamos a Inicio --> Ejecutar

Correr el comando de registro de componentes:

En la caja de texto que aparece en la ventana Ejecutar, escribimos:

regsvr32.exe “C:\Archivos de programa\Archivos comunes\MapWindow\MapWinGIS.ocx” o
regsvr32.exe “C:\Archivos de programa\Common Files\MapWindow\MapWinGIS.ocx”

dependiendo del directorio en el que se encuentre el componente. Obtenemos:

Lo cual nos indica que tenemos el ActiveX registrado.

Un obstáculo por superar

El ActiveX MapWinGis.ocx es un componente que emplea la tecnología COM, la cual no es
soportada de manera directa por .NET; para poder utilizarlo en nuestra aplicación se deben
crear un par de archivos interoperables con la tecnología .NET.

Estos archivos interoperables pueden ser generados empleando herramientas del Kit de
Desarrollo de Software de .NET (.NET SDK), que se encuentra en internet con licencia
Freeware. Sin embargo, el archivo de descarga tiene un tamaño superior a los 350 MB, por
lo cual el proceso puede resultar inoportuno si se tiene en cuenta nuestro objetivo. Para
conocer el procedimiento de obtención de los archivos interoperables podemos visitar esta
página web.

Como alternativa práctica, podemos optar por descargar directamente los archivos
interoperables aquí (archivo comprimido, 46 KB). Tras descomprimir el archivo, obtenemos
dos dll:

 AxInterop.MapWinGIS.dll
 Interop.MapWinGIS.dll

Estos archivos no requieren de registro en el sistema porque son componentes .NET; son
importantes porque posibilitan el acceso a los objetos, funciones, propiedades y métodos
del componente programable MapWinGis en nuestra aplicación.

Ahora debemos copiar los dos archivos en la carpeta en la que se encuentra el componente
MapWinGis.ocx (el cual debe dejarse allí pues su registro es necesario para la aplicación).

Hemos terminado con la instalación del software requerido para la construcción de nuestro
propio visor, el siguiente paso es crear un proyecto .NET para escribir nuestro código allí.

Creando el proyecto .NET

Empezaremos a utilizar el Entorno Integrado de Desarrollo SharpDevelop, cuya interfaz
luce así:

Damos click en el botón Nueva Solución y obtenemos el siguiente diálogo:

Escogemos en la parte izquierda la categoría VBNET y la subcategoría Aplicaciones de
Windows. En la parte derecha seleccionamos Aplicación Windows. Digitamos en la caja de
texto el nombre “Mi_Visor_de_Shapefiles” y seleccionamos la ubicación del proyecto.
Damos click en Crear y tenemos la estructura de nuestro proyecto.

En la parte izquierda de la interfaz de SharpDevelop podemos encontrar que la pestaña
Proyectos se encuentra activa. Observamos que nuestro proyecto tiene Referencias, un
archivo de Información del ensamblado que compilaremos (AssemblyInfo.vb), una Forma
Principal (MainForma.vb) y una clase que controla el comportamiento de nuestra aplicación
(Program.vb). Estos archivos y referencias iniciales son creados por SharpDevelop
facilitando el proceso de desarrollo de la aplicación.

Agregando referencias

Debemos crear referencias a los archivos interoperables desde nuestro proyecto. Para ello,
en la pestaña Proyectos damos click derecho a Referencias y seleccionamos Agregar
Referencias.

Activamos la pestaña Visor de Ensamblados .NET y damos click en Explorar. Vamos al
directorio en donde se encuentran
interoperables
(AxInterop.
  • Links de descarga
http://lwp-l.com/pdf14672

Comentarios de: Construcción de un visor de shapefiles con herramientas libres (1)

ninoska
27 de Enero del 2020
estrellaestrellaestrellaestrellaestrella
good
Responder

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad