MapDotNet UX Help

Style editors are found in both the layer and classification editing screens.  Layers provide default style properties that apply across all classifications except where a classification overrides it with a different setting.

There are five style editors used by Studio.  Sometimes the appearance of an editor will be slightly different under the layer's General tab than under a classification.

Note that classifications inherit styles from their parent layer.  In a classification style editor, a round button next to a property indicates that the property is changed from the layer's default value.  Click the button to revert to the default.

One thing all style editors have in common is that a depiction of the style rendering is displayed somewhere to the left of the style editor.  Where multiple editors apply, the rendering will be a composite.

Which style editors are available will depend on the type of layer.  Available editors are:

  • Polygon Style
  • Polyline Style
  • Point Style
  • Optional Label
  • Optional Marker

Additionally, there are two sub-editors used by these.

  • Brush Selector
  • Symbol Selector

Polygon Style

The polygon style editor is used for defining the fill and stroke (outline) to use for polygon features.

The Fill and Stroke inputs both use the Brush Selector when the bucket icon is clicked.  A thumbnail shows the current fill or stroke.  When the fill or stroke is solid, the color value is displayed next to the thumbnail.  When the fill or stroke is a pattern, the word "drawing" is displayed.  The slider below this text sets opacity.

Several additional inputs further modify the stroke.  Stroke thickness is the line width, line join affects how corners are rendered, and stroke style allows you to select dash patterns.

Polyline Style

The polyline style editor is used for defining the stroke to use for polyline features.

The Stroke input uses the Brush Selector when the bucket icon is clicked.  A thumbnail shows the current stroke.  When the stroke is solid, the color value is displayed next to the thumbnail.  When the stroke is a pattern, the word "drawing" is displayed.  The slider below this text sets opacity.

Several additional inputs further modify the stroke.  Stroke thickness is the line width, line join affects how corners are rendered, and stroke style allows you to select dash patterns.

Point Style

The point style editor is used for defining the symbol to use for point features. Note that the preview for this editor will display crosshairs used to indicate where the symbol is in relation to the data point.

The Symbol input uses the Symbol Selector when the grid icon is clicked.  Symbols are XAML constructs, and the pencil icon copies the XAML to the clipboard.

Width and Height size the symbol.  Offset X and Offset Y move it relative to the data point- the default is to center the symbol on the data point.  Angle rotates the symbol.  Opacity allows you to make the symbol translucent.

Optional Label

The Optional Label editor is used for applying text labels to features.  It is only available when a layer has a LabelColumn selected.

Labeling is tricky when performing tile-based rendering.  You will find that maps that use labels need quite large Bleed Ratio settings to avoid rendering problems at the edges of tiles.

Label Properties
Font, Size, Font Color, FontStyle, FontWeight
These set the properties of the text itself.  Size is the em-size.

Rotate With Feature
This option is only shown for line layers.  When it is enabled, labels bend to follow the line data.  Certain other properties are ignored when Rotate With Feature is in effect, as noted below.

Position
This is the position of the label with respect to the point being labeled.  For lines this is the midpoint, for polygons the centroid.  When Rotate With Feature is in effect, this is ignored and the label will be roughly centered.

OffsetX, OffsetY
This is an offset from the labeling point and is ignored when Rotate With Feature is in effect.

Background
This is a brush used to fill a box behind the label.  It is not recommended to use this when Rotate With Feature is in effect.

Outline, OutlineThickness
These define a stroke to use to outline a label.  This works well with Background.  These are ignored when Rotate With Feature is in effect.

GlowSize, GlowOpacity, GlowColor
These define a glow effect around the text.  GlowColor allows you to select only a color, not a complete brush.  Glow is a better choice than Background when Rotate With Feature is in effect.

Minimum Spacing
This is a minimum spacing between labels.  It essentially defines boxes around labels in which other labels may not be placed.  All labels are rendered after all other features, and if two different layers or classes define different values for this, the effective minimum spacing between them is the mean of the values.

Use of this feature increases the risk of errors at tile boundaries and will require even larger bleed ratios.

Optional Marker

This is essentially the same as the Point Style editor, but it is used with polyline or polygon layers to place a marker at line midpoints or polygon centroids.

Brush Selector

The brush selector displays a selection of brushes which are chosen by clicking on them.  The fill can be chosen by clicking a preset color or using the color sliders.  A thumbnail shows the resulting pattern.

Click "Use" once you have chosen a brush and fill to select the pattern for use.

The brush definitions are found in [MapDotNet installation folder]\Studio\General Assets\Brushes.xaml.  This file may be edited as desired.

Symbol Selector

The symbol selector lets you browse the symbol library.  Select a category of symbols from the dropdown, select a symbol by clicking on it, and click "Use" to select the symbol for use.

The symbol library can also be reviewed from the View menu.  Select View->Symbol Library and then select a category.

By default, Studio only lets you define new symbols in the "User Defined" category.  Symbols may be added to editable categories through Studio.

The symbol definitions are in folders under [MapDotNet installation folder]\Studio\Symbols.  If you want to create a new symbol library, add a new folder and add a Library.xml file to it modeled after an existing one in one of the other folders.  Add your symbol XAML files, reference them in your library file, and they will be available in your symbol selector.