Changes between Version 9 and Version 10 of MapGuideRfc29
- Timestamp:
- 08/24/07 08:38:10 (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
MapGuideRfc29
v9 v10 33 33 The current layer definition schema defines a legend label per style rule. Today when we create a theme we generate multiple style rules, and the legend label for each rule is set appropriately. The new multi-variate theming approach, however, uses expression and not rules to define the theme. With the current schema this means only one legend label is available for all the themes, and this is inadequate. The proposed schema change is to therefore include additional theme information to the parameter override elements. 34 34 35 For this release it will be sufficient to add two pieces of information: a theme description and a theme category format. Any parameter override whose value is set to a theming expression would also set these properties. The legend generation code can then use this information to generate appropriate labels for each theme / theme category. The theme description is a string that would be displayed the same as it's entered. The theme category format is a string which includes a mix of formatting codes and text, and these can appear in any order. Three codes will be supported: <min>, <max>, and <value>. The <min> and <max> codes are used with themes where each category corresponds to a range of values. This applies to themes that use Equal, Standard Deviation, Quantile, or Jenks distributions.Some example category format strings:36 37 * "<min> to <max> miles per hour"35 For this release it will be sufficient to add two pieces of information: a theme description and a theme category format. Any parameter override whose value is set to a theming expression would also set these properties. The legend generation code can then use this information to generate appropriate labels for each theme / theme category. The theme description is a string that would be displayed the same as it's entered. The theme category format is a string which includes a mix of formatting codes and text, and these can appear in any order. Three codes will be supported: <min>, <max>, and <value>. The <min> and <max> codes are used with themes where each category corresponds to a range of values. Some example category format strings: 36 37 * "<min> to <max>" 38 38 * "Parcel value: <min> - <max> Euros" 39 39 * "<min> <= Population < <max>" 40 40 41 The <value> code is used with themes that assign a single value to each category , so for themes that use Individual Values distributions. Some additional example format strings:41 The <value> code is used with themes that assign a single value to each category. Some additional example format strings: 42 42 43 43 * "Zip code: <value>" … … 59 59 60 60 * Rendering passes can only be used by defining compound symbol definitions 61 * Mixing compound symbols that define RPs with other symbols is problem matic61 * Mixing compound symbols that define RPs with other symbols is problematic 62 62 63 63 Here's an example that clarifies the latter drawback. I want to create a layer which shows roads and pedestrian walkways. I have custom symbols already defined for the roads and walkways - both are compound symbols that have thick and thin line styles defined using RP 0 and 1. I set up my layer so that features of type "road" are styled using the Road symbol, while features of type "walkway" are styled using the Walkway symbol. I also have the requirement that walkways need to draw on top of roads. With the symbols defined as is this won't work. The first rendering pass - pass 0 - will iterate over all features and draw the thick Road lines and then the thick Walkway lines. The second rendering pass will then draw the thin Road lines and the thin Walkway lines. In places where walkway features intersect road features, the thin Road lines drawn in RP 1 will end up drawing on top of the thick Walkway lines drawn in RP 0. … … 125 125 </xs:element> 126 126 </xs:sequence> 127 <xs:element name="ExtendedData1" type="ExtendedDataType" minOccurs="0"/> 127 128 </xs:complexType> 128 129