Excerpt |
---|
Se presenta el soporte de GIS introducido en la versión 5.2 de O3, se comienza presentando un ejemplo y a continuación se presentan más detalles sobre el funcionamiento del módulo y su configuración. |
...
- Descomprimir el archivo en algún directorio del sistema, por ejemplo /IdeaSoft/gis
- Si el archivo se descomprime en un directorio diferente, o si la prueba se está realizando en Windows:
- Editar el archivo DemoGisMapping.xml
- Reemplazar las ocurrencias (2) de /Ideasoft/gis por la ubicación donde quedaron los archivos:
- <uri>file<uri>file:/IdeaSoft/gis/country.shp<shp</uri><uri>
- file<uri>file:/IdeaSoft/gis/worldcities.shp<shp</uri>
- Ejecutar el módulo O3 Browser
- Abrir el cubo DemoGis.cube incluido en el zip mencionado anteriormente.
- Seleccionar en el menú: Ventana -> Plug-ins -> GIS Plugin
...
- Al seleccionar un elemento geográfico en O3 el mapa se centra en dicha ubicación
- Si se ubica la dimensión Location en las series, se puede seleccionar que se utilice el color de las series para representar los elementos geográficos (seleccionar el tercer botón de la barra de herramientas de GIS)
- El doble-click en un elemento geográfico del mapa realiza la selección tanto en el mapa como en el cubo.
- Cuando la dimensión geográfica (Location en este caso) no está ubicada en las series, sino que está ubicada en el eje X, se puede seleccionar Max o Min, con esta opción los elementos geográficos toman el color del elemento que le da el mayor (o menor) valor.
Por ejemplo en la siguiente imagen el color de Brasil es rojo porque el tipo de cliente con más ventas es "Medium Accounts" y Canadá es azul porque la categoría con más ventas es "Minor Accounts".
Ejecución en ambiente Web
...
Code Block | ||||
---|---|---|---|---|
| ||||
<gisMappingDef> <mainDimension> <mainDimension> <!-- Location: Nombre de la dimensión geográfica --> <dimensionName>Location</dimensionName> <levels> <levels> <!-- Country: Nivel de la dimensión --> <levelName>Country</levelName> <levelName>Country</levelName> <!-- o3: Almacén de datos, countries: Nombre de la capa --> <layerName>o3:countries</layerName> <!-- Atributo del nivel de la dimensión, label: etiqueta corta, key: clave --> <levelAttributeName>label</levelAttributeName> <!-- CNTRY_NAME: Atributo de la capa --> <layerAttributeName>CNTRY_NAME</layerAttributeName> <!-- Visibilidad: ALWAYS, ONLY_SELECTED_LEVEL <visibility>ALWAYS</visibility>--> <visibility>ALWAYS</visibility> </levels> <levels> <levelName>City</levelName> <layerName>o3:worldcities</layerName> <levelAttributeName>label</levelAttributeName> <layerAttributeName>NAME</layerAttributeName> <parentLayerAttributeName>COUNTRY</parentLayerAttributeName> <visibility>ONLY_SELECTED_LEVEL</visibility> </levels> </mainDimension> <mapDef> <layers> <mapDef> <layers> <!-- o3: Almacén de datos, countries: Nombre de la capa --> <name>o3:countries</name> <!-- Countries: Etiqueta de la capa --> <label>Countries</label> <!-- shp: Formato cartográfico admitido --> <type>shp</type> <!-- uri: Path donde se encuentra la carografía, archivos shp --> <uri>file:/IdeaSoft/O3v5.2.000/files/gis/country.shp</uri> <symbolDef> <symbolDef> <!-- CNTRY_NAME: Etiqueta del atributo de la capa --> <labelAttributeName>CNTRY_NAME</labelAttributeName> <defaultFillColor>#c0c0c0</defaultFillColor> <strokeColor>#404040</strokeColor> <selectedColor>#00b2b2</selectedColor> <labelFontFamily>dialog</labelFontFamily> <labelFontSize>10</labelFontSize> <labelFontStyle>0</labelFontStyle> <strokeWidth>1</strokeWidth> </symbolDef> </layers> <layers> <layers> <name>o3:worldcities</name> <label>World Cities</label> <type>shp</type> <uri>file:/IdeaSoft/O3v5.2.000/files/gis/worldcities.shp</uri> <symbolDef> <labelAttributeName>NAME</labelAttributeName> <defaultFillColor>#3c3c3c</defaultFillColor> <strokeColor>#3c3c3c</strokeColor> <selectedColor>#00b2b2</selectedColor> <labelFontFamily>dialog</labelFontFamily> <labelFontSize>10</labelFontSize> <labelFontStyle>0</labelFontStyle> <strokeWidth>1</strokeWidth> </symbolDef> </layers> </mapDef> </layers> </mapDef><!-- Coordenadas: latitud, longitud --> <maxExtent>-180,-90,180,83.624</maxExtent> </gisMappingDef> |
En este ejemplo se declara (bajo el elemento mainDimension) que la dimensión Location tiene dos niveles: Country y City, a su vez cada uno de estos niveles está asociado a un layer del mapa:
...
El elemento uri especifica la ubicación del archivo shp que especifica el layer.
El nodo maxExtent especifica, las coordenadas provistas en la configuración de la capa en GeoServer utilizadas en el entorno web (Encuadre Lat/Lon).
Note |
---|
En oportunidades de trabajar en MS Windows donde además los nombres de las dimensiones geográficas poseen caracteres especiales, puede suceder que no se reconozca correctamente la referencia. En dicho caso, corresponde sustituir dichos caracteres en el nombre de la dimensión en el XML anterior, por los caracteres interpretados por Java. Por ejemplo, los caracteres: |
A los valores que provee Geoserver, se le deben quitar las comas y reemplazarlas por puntos, por ejemplo, 83,624 se debe configurar como 83.624
Asociación de un mapa a un cubo
...