[mapguide-internals] Area stylization

Walt Welton-Lair walt.welton-lair at autodesk.com
Mon Dec 14 18:45:07 EST 2009


Your guesses were pretty much right on.

- Symbols are always defined in millimeters, for both device and mapping size context.  For mapping size context you typically have to set the scales in the symbol instance to something larger than 1 to make the symbol a reasonable size for the map.  E.g. if you're at a mapscale of 1000 then at a symbol instance scale of 1 a 1 mm wide symbol will be 0.001 mm on your screen :-).

- Yes, the ampersand is for accessibility.  It's not a fixed rule though.  It's how we at Autodesk have done it.

- For the polygon border you'll need an additional line symbol - one that defines a LineUsage.  You can then either combine both the line and area symbol into one CompoundSymbolDefinition, or they can remain separate symbols but then you need two symbol instances in your layer definition.  Having them be separate symbols is more flexible - you can use the same line symbols for polylines and polygon borders.  It's also a good idea to include UsageContext and GeometryContext elements in your SymbolInstances to ensure there's no ambiguity when using and applying the symbols.  See the section in RFC 29 (https://trac.osgeo.org/mapguide/wiki/MapGuideRfc29) for a good description of what these do.

Walt

-----Original Message-----
From: mapguide-internals-bounces at lists.osgeo.org [mailto:mapguide-internals-bounces at lists.osgeo.org] On Behalf Of Jason Birch
Sent: Monday, December 14, 2009 6:09 PM
To: MapGuide Internals Mail List
Subject: Re: [mapguide-internals] Area stylization

Cool, thanks!

Setting the ClippingControl to Inside gave me exactly what I wanted for the
interior fill.

Few questions:

- I just get black blobs when I try to set SizeContext to MappingUnits set
in the LayerDefinition.  Is this unsupported, or do I just have to scale the
symbol smaller or something?

- Is the ampersand at the beginning of the DisplayName for accessibility
(keyboard shortcut) in GUI clients or something?

- I'm at a bit of a loss how to symbolize the polygon border.  Do I create
this as a composite symbol with a separate symbol and LineUsage?

I hate that I feel so clueless when working with this, thanks again for the
help.

Jason

2009/12/14 Walt Welton-Lair <walt.welton-lair at autodesk.com>

> Area style support was initially available in MGOS 2.0.0, while a preview
> of line style support was available in 1.2.0.  But it wasn't until 2.0.1
> until both were reasonably stable.  I've updated RFC 14 to indicate this.
>
> Here's a simple swamp symbol I hacked together:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <SimpleSymbolDefinition xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance"
> xsi:noNamespaceSchemaLocation="SymbolDefinition-1.1.0.xsd" version="1.1.0">
>  <Name>SWAMP</Name>
>  <Graphics>
>  <Path>
>   <Geometry>M -1.0,0.0 h 2.0 M -1.3,0.3 h 2.6 M 0.0,0.3 v 1.5 M -0.2,0.3 l
> -1.0,1.0 M 0.2,0.3 l 1.0,1.0</Geometry>
>   <LineColor>%HATCHCOLOR%</LineColor>
>  </Path>
>  <Path>
>   <Geometry>M 3.0,2.5 h 2.0 M 2.7,2.8 h 2.6 M 4.0,2.8 v 1.5 M 3.8,2.8 l
> -1.0,1.0 M 4.2,2.8 l 1.0,1.0</Geometry>
>   <LineColor>%HATCHCOLOR%</LineColor>
>  </Path>
>  </Graphics>
>  <AreaUsage>
>  <Angle>0.0</Angle>
>  <RepeatX>8.0</RepeatX>
>  <RepeatY>5.0</RepeatY>
>  </AreaUsage>
>  <ParameterDefinition>
>  <Parameter>
>   <Identifier>HATCHCOLOR</Identifier>
>   <DefaultValue>0xff000000</DefaultValue>
>   <DisplayName>&amp;Hatch Color</DisplayName>
>   <Description>Color for the hatch style</Description>
>   <DataType>FillColor</DataType>
>  </Parameter>
>  </ParameterDefinition>
> </SimpleSymbolDefinition>
>
> Walt
>
> -----Original Message-----
> From: mapguide-internals-bounces at lists.osgeo.org [mailto:
> mapguide-internals-bounces at lists.osgeo.org] On Behalf Of Jason Birch
> Sent: Monday, December 14, 2009 3:06 PM
> To: MapGuide Internals Mail List
> Subject: [mapguide-internals] Area stylization
>
> I'm not clear on whether there is any area stylization support in the new
> advanced stuff or not.  The schema has an AreaUsage section, but the RFCs
> show that support would be deferred.
>
> I'm trying to create a classic "Wetlands" area fill which has a stylized
> bush ( *\|/* )  at an even/odd offset (or random) grid pattern fixed to
> mapping units.  If anyone has any pointers on this, or even a "can't do
> that, just use the stock Swamp symbol" I'd appreciate it. :)
>
> Thanks,
> Jason
> _______________________________________________
> mapguide-internals mailing list
> mapguide-internals at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapguide-internals
> _______________________________________________
> mapguide-internals mailing list
> mapguide-internals at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapguide-internals
>
_______________________________________________
mapguide-internals mailing list
mapguide-internals at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/mapguide-internals


More information about the mapguide-internals mailing list