Now that you have familiarized yourself with the MapDotNet UX Studio and connected to your data sources, you are ready to begin designing maps. In order to do so, you will need to know how to create new maps and populate them with spatial data. You will also need to have a basic understanding of spatial data and the symbolization options available in Studio.
Click the icon that looks like a plus and two diamonds to add a new map.
Name your map and choose the template. By default, the map template is "SphericalMercator" (appropriate for those using Bing Maps for Enterprise as a base map).
Once you have added a map and set extents defining your area of interest, you are ready to start adding data.
To add a data layer, first locate your map in the Maps pane. Right-click the map and select Add Layer. In the Add Layer dialogue, name your layer and select the data source and table (or shapefile) name. Finally, you may have to specify the spatial reference system (SRS).
If the SRS is undefined, try to determine the layer's coordinate system/projection name or its spatial reference ID (SRID). The SRS field supports auto-complete. Additionally, you can click on the (+) next to the SRS field to search available Spatial Reference Systems.
Check with your data provider if unable to determine a layer's SRS.
On the rare occasion that Studio can't determine the layer geometry type, you will be prompted to select it. Here are a list of the geometry types supported by MapDotNet UX.
The simplest of vector geometry types, point data defines the x-y locations of small, disconnected features. It is important to note, however, that the size of a feature is relative to scale. A city, for instance, might be considered a small feature best represented as a point when working with a statewide or national dataset.
Line data defines collections of connected x-y points. The more points used, the more detailed the resulting line. The shape and location of both long, narrow features (roads) and long features with no area (political boundaries) are represented by lines.
Polygon data defines fully-enclosed, homogeneous areas. A polygon is a series of connected lines comprised of individual x-y points. The shape and location of features such as counties, school zones, property parcels, zoning regions, census tracts, etc. are represented by polygons.
After the layer is added, Studio will prompt users to specify layer properties.
There are two tabs available when setting layer properties. You will first see the General tab and can click on the Classifications tab for greater control over the symbolization of your spatial data.
Data Source and Geometry Column
If you need to change the data source, click the plus sign next to it. A new connection string must always be provided, even to the same data provider. Exception: shape files and KML support empty connection strings. The Geometry Column is inferred from the data source.
Data should be classified if you want features to be rendered differently based on attribute values. The first step in classifying data in MapDotNet UX Studio is specifying a classification column. Once you have added a layer, the corresponding table's column names will be displayed in the Classification Column dropdown.
One table may contain several attributes appropriate for classification. In order to classify two columns from the same table, simply add two map layers (different layer names, same source table) and select different classification columns.
Some tables will include columns conducive for labeling geographic features. If such a column exists, select the appropriate Label Column from the dropdown, check and expand the Optional Label box and set labeling options.
LineColorColumn and FillColorColumn
Set these to specify columns used to set line or fill colors from data. The column may be a string column with hexadecimal values preceded by "#", or the column may be an integer column. The use of these is optional.
Data may or may not require visualization on your map. Uncheck the Visible option to turn symbolization off. Data can be queried regardless of visibility.
Complete the Where Clause box in order to filter data tables. Provide a suitable SQL where clause. Do not include the WHERE keyword.
Example: Assume a roads table with a column called NAME. To display data for interstate roads, enter NAME LIKE 'I-%'. To display data for a select few roads, enter NAME IN ('Smith St.', 'Jones Ave.', 'Franklin Blvd.')
For shapefile and KML data sources only, the where clause is restricted. Only <, <=, =, >=, and != are supported. Each expression must have a column name on one side and a value on the other. Expressions may only be joined with AND. For KML, Folder can be used as a filter. Folder = '/Polygons' will return only data directly in the /Polygons folder, not in /Polygons/Buildings. Use the * wildcard to include subfolders. Folder = '/Polygons/*' will return data from both /Polygons and /Polygons/Buildings
Use this to change the Spatial Reference System, if necessary. Since this must be the actual SRS for the data, you would only do this if it was originally entered incorrectly or you have changed the data source.
Use this to attach arbitrary key-value pairs to the layer for use in your applications. The Identify, Drilldown, and Query examples in our interactive SDK demonstrate this. Note that after adding or editing a metadata item, you must always click the check mark icon for the edit to be recognized.
Styles, Labels, and Markers
The editors for default rendering are on the right side of the general tab. At the top will be a panel for Point Style, Polyline Style, or Polygon Style. There will be a panel for "Optional Label", but it will only be enabled if a LabelColumn has been selected. Polyline and Polygon layers will have a panel for "Optional Marker".
See Style Editors for more details.
After specifying a classification column on the General Tab, use the controls on the Classifications Tab to define scale groups and symbolize the classifications contained within each scale group. It is important to use scale groups when symbolizing maps for applications in which users can zoom in and out. Line and point features (and polygon strokes) should be less prominent and less opaque at 1:500000 than at 1:25000.
Add new scale groups by clicking the New Scale Group button and setting minimum and maximum scale values. Right-click scale groups to copy them, remove them, or set a limited set of properties across all classifications in the group.
To add classifications to a scale group, select the scale group in the Scale Groups pane then click the New Classification button in the Classifications panel.
Below the scale group is a dropdown to select the type of classifications the group will contain.
All: The default classification type, selecting all will cause all features to be symbolized same way at any given scale group.
Exact: Selecting exact will allow each value in the classification column to be distinctly symbolized any given scale group. Add a classification for each value to be symbolized.
Range: Selecting range will allow ranges of values to be specified at any given scale group. Add a classification for each range to be symbolized.
For both Exact and Range classifications, you must select a Classification Column under the General tab.
When "Exact" or "Range" is selected, the "Change Color Scheme" button will be enabled. Use this after you have set up all the classifications for the scale group. It will let you select a set of colors to apply to the group.
If there is more than one classification under a scale group, you can right-click classifications to remove or re-order them. Classifications are rendered in the order they are listed, which you can use to create composite rendering. For instance, a classification that draws a wide black line can be followed by one that draws a narrower white line to create the appearance of a bordered line.
Clicking a Classification brings up classification property and style panels.
Note that the style is displayed above the properties. For styles, see Style Editors.
IDThe class ID is used to reference the class in calls to MapService.GetLegendIcon. See the legend example in our interactive SDK for an example of class IDs being used in this way.
Usually IDs should be unique within a scale group. However, if a set of classifications are being used to create a composite rendering, they should all have the same ID.
When map changes are applied, Studio will generate unique IDs for any classifications for which an ID has not been set.
Use layer line and fill columns when setCheck or uncheck this to indicate whether this class should recognize FillColorColumn and LineColorColumn settings for the layer.
MetadataUse this to attach arbitrary key-value pairs to the classification for use in your applications.