raimund@256: .. raimund@256: .. Copyright (c) 2011 by Intevation GmbH, Germany raimund@256: .. raimund@256: .. This file is part of MXD2map. raimund@256: .. raimund@256: .. This program is free software under the LGPL (>=v2.1) raimund@256: .. Read the file LICENCE.txt coming with the software for details raimund@256: .. or visit http://www.gnu.org/licenses/ if it does not exist. raimund@256: .. raimund@256: .. MXD2map has been developed on behalf of the raimund@256: .. Bundesamt fuer Seeschifffahrt und Hydrographie (BSH) in Hamburg raimund@256: .. by Intevation GmbH. raimund@256: .. raimund@256: .. Authors: raimund@256: .. Raimund Renkert raimund@256: .. Bjoern Schilberg raimund@256: .. Stephan Holl raimund@256: raimund@256: stephan@202: .. index:: features, functionality, configuration, runtime-parameter, commandline stephan@188: rrenkert@182: ------------- rrenkert@182: Functionality rrenkert@182: ------------- rrenkert@182: rrenkert@182: The MXD2map converter works as a commandline tool to transform maps from the rrenkert@182: proprietary ArcGIS file format "MXD" to a MapServer configuration file. rrenkert@182: rrenkert@182: To transform an ArcGIS mxd file to a MapServer configuration file the mxd file rrenkert@183: must have a valid and available data source and must not fit the rrenkert@183: :ref:`restriction-label` described in the appropriate section. rrenkert@183: stephan@235: .. image:: ../funktionsweise/funktionsweise-MXD2map.png stephan@202: :align: center stephan@202: :alt: MXD2map-Schema stephan@202: :width: 500px rrenkert@183: rrenkert@183: .. _howtouse-label: rrenkert@182: rrenkert@182: How to use rrenkert@182: ---------- rrenkert@183: rrenkert@182: The converter is started via the commandline running the command:: rrenkert@182: rrenkert@182: $java -jar mxd2map.jar rrenkert@182: rrenkert@182: The converter can be configured in two ways: rrenkert@182: rrenkert@182: 1. The converter.properties file (see converter.properties.sample) rrenkert@182: 2. via commandline arguments rrenkert@182: stephan@188: The converter.properties.sample file:: stephan@188: stephan@188: stephan@188: # Java properties file for the MXD Converter Tool. stephan@188: mxd = \\full\\path\\to\\mxd-file stephan@188: map = \\full\\path\\to\\map-file stephan@188: map-template = \\full\\path\\to\\mapfile-template stephan@188: stephan@188: Make sure you mask backslahes with an additional backslash. stephan@188: rrenkert@182: Both take a parameter for the path to the mxd file, the outputfile and a mapfile rrenkert@182: template for initial mapfile config. Commandline parameters have a higher rrenkert@182: priority than the properties file. rrenkert@182: rrenkert@182: The available parameters on the commandline are:: rrenkert@182: rrenkert@182: -m or --mxd The mxd file to convert. rrenkert@182: rrenkert@182: -a or --map The path to the output file. Should end with ".map". rrenkert@182: rrenkert@182: -t or --template The template to use for an initial mapfile rrenkert@182: configuration. rrenkert@182: rrenkert@182: To have the full functionality for ArcGIS map conversion it is necessary to have rrenkert@182: the ESRI fonts available. ArcGIS products install these fonts to the default stephan@188: windows font folder ``c:\\windows\\fonts``. To make them available for the converter rrenkert@182: there has to be a MapServer font set (see stephan@235: http://mapserver.org/mapfile/fontset.html). stephan@235: stephan@235: The MXD2map converter comes with an rrenkert@182: initial fontset containing all relevant ESRI fonts and the free font FreeSans. rrenkert@182: The font set file named fonts.txt can be edited and further fonts can be added. rrenkert@182: To use a font set, the file needs to be referenced in the MapServer template rrenkert@182: otherwise the converter can not create character symbols and will show up errors rrenkert@182: in the conversion process. rrenkert@182: rrenkert@182: The converter uses a separate symbol file to provide symbol sets to the rrenkert@182: template to have initial symbols available. If no symbol file is referenced a rrenkert@182: new one is created by the converter if necessary. The resulting symbol set is rrenkert@182: written to the same directory as the output mapfile named rrenkert@182: [mapfile-name]-symbols.sym. rrenkert@182: rrenkert@182: rrenkert@182: Features rrenkert@182: -------- rrenkert@182: stephan@250: MXD2map is optimized to work best with MapServer 6.x. Therfore the new stephan@250: MapServer features (symbolhandling, styling etc) are built in. stephan@250: stephan@188: MXD2map currently supportes the following features: rrenkert@182: stephan@230: * Datasources: stephan@230: stephan@290: * ArcSDE vector database connections (requires MapServer built against ArcSDE, Client-dlls ``[sde.dll, sg.dll and pe.dll]`` needed) stephan@188: * ESRI-Shapefiles rrenkert@182: stephan@188: * Symbols: rrenkert@182: rrenkert@182: * Simple marker symbols rrenkert@182: * Character marker symbols rrenkert@182: * Arrow marker symbols stephan@250: * Picture marker symbols (also trancparency is supported if set in MXD) stephan@188: * Symbols based on TTF-characters of special cartographic fonts rrenkert@182: * Any combination of character marker symbols rrenkert@182: * Linesymbols with pattern and cartographic attributes rrenkert@182: * Polygons filled with solid color and outline stephan@188: * Polygons filled with a hatch and hatched outline rrenkert@182: stephan@250: stephan@188: * Layer types: stephan@188: stephan@188: * Featurelayer (vectors) as POINT, LINESTRING and POLYGON stephan@188: * Classifications with unique values stephan@188: * Classifications with class breaks stephan@230: * Group-members are concatinated to group.layername. This ensures having discrete layernames stephan@250: * ArcGIS-layergroups are represented as WMS Named layers, which are WMS-layers without a title (so not requestable through GetMap) stephan@230: * all definition-queries for filtering the data on Layer- and classification-level rrenkert@182: rrenkert@182: * Further map attributes: rrenkert@182: stephan@250: * Projections and units based on the EPSG-table (if set in MXD) stephan@188: * Min/max scale denominations at layer and label-level stephan@250: * Global Map extent stephan@250: * Layer extent and SRS rrenkert@182: * Simple labeling rrenkert@182: * Filter and expressions stephan@188: * ArcSDE Jointables stephan@202: * Mapfile-Templating for OGC-related stuff stephan@230: * Simple Labeling-syntax (a subset of ArcGISs VBScript-labels) stephan@209: stephan@209: * Other features stephan@209: stephan@230: * Umlauts are translated into its equivalents within LAYER-names, stephan@235: CLASS-names and also mapfile-names. Though it is good standard not to stephan@235: use them since they mostly cause problems when using them within stephan@235: OWS-related services. stephan@250: * Creation of distinct layer-names by concatinating group- and stephan@250: layernames to WMS-titles. This comes handy mostly in ArcGIS stephan@250: layergroups. stephan@250: stephan@290: