User Tools

Site Tools


thinkgeo.mapsuite.windowsphonecore.pointstyle

ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle

Note: The page was created before Map Suite 10. Map Suite 10.0 organized many classes into new namespaces and assemblies as well as had a few minor breaks in compatibility. The majority of previously built code should work without modification assuming the new namespaces are added. For guidance on upgrading your existing code, please check out MapSuite 10 Upgrade Guide.

<!– Class –> This class allows you to define how points are drawn on the canvas.

Remarks

This class allows you to define how points are drawn on the canvas. There are three main drawing types: bitmap, character, and symbol. The bitmap allows you to represent each point with a bitmap. The character allows you to choose a font and an index in the font so you can use that character for the point. This is especially helpful with fonts like Wingdings that have many feature-style graphics. The symbol type is a collection of simple geometric symbols that we have assembled to represent abstract items on the map.

When you select a PointType, you need to be sure to set the various properties associated with that type. The property names are prefixed to help you. For example, all of the character-related properties are prefixed with “Character” and the symbol properties follow a similar pattern.

Inheritance Hierarchy

Members Summary

Public Constructors

Name Parameters DeclaringType Summary
Public MethodPointStyle This is a constructor for the class.
Public MethodPointStyle GeoImage This is a constructor for the class.
Public MethodPointStyle GeoFont, Int32, GeoSolidBrush This is a constructor for the class.
Public MethodPointStyle PointSymbolType, GeoSolidBrush, Int32 This is a constructor for the class.
Public MethodPointStyle PointSymbolType, GeoSolidBrush, GeoPen, Int32 This is a constructor for the class.

Protected Constructors

Name Parameters DeclaringType Summary

Public Methods

Name Parameters DeclaringType Summary
Public MethodDraw IEnumerable<Feature>, GeoCanvas, Collection<SimpleCandidate>, Collection<SimpleCandidate> Style This method draws the features on the canvas you provided.
Public MethodDraw IEnumerable<BaseShape>, GeoCanvas, Collection<SimpleCandidate>, Collection<SimpleCandidate> Style This method draws the shapes on the canvas you provided.
Public MethodDrawSample GeoCanvas, DrawingRectangleF Style
Public MethodEquals Object Object
Public MethodGetHashCode Object
Public MethodGetRequiredColumnNames Style This method returns the column data for each feature that is required for the style to properly draw.
Public MethodGetType Object
Public MethodToString Object

Protected Methods

Name Parameters DeclaringType Summary
Protected MethodDrawCore IEnumerable<Feature>, GeoCanvas, Collection<SimpleCandidate>, Collection<SimpleCandidate> Style(overriden) This method draws the features on the canvas you provided.
Protected MethodDrawSampleCore GeoCanvas, DrawingRectangleF Style(overriden)
Protected MethodFinalize Object
Protected MethodGetRequiredColumnNamesCore Style This method returns the column data for each feature that is required for the style to properly draw.
Protected MethodMemberwiseClone Object

Public Properties

Name Return DeclaringType Summary
Public PropertyAdvanced PointStyleAdvanced This property gets the advanced properties of the PointStyle.
Public PropertyCharacterFont GeoFont This property gets and sets the font that is used for the character if the PointType is Character.
Public PropertyCharacterIndex Int32 This property gets and sets the index position of the character you want to use from the font you selected in the CharacterFont property.
Public PropertyCharacterWpfGeoBrush GeoSolidBrush This property gets and sets the SolidBrush used to color the font character for the point.
Public PropertyCustomPointStyles Collection<PointStyle> This property returns a collection of area styles allowing you to stack multiple area styles on top of each other.
Public PropertyImage GeoImage This property gets and sets the image used if the PointType property is Bitmap.
Public PropertyImageScale Double This property gets and sets the scale of the image you want to draw.
Public PropertyIsActive Boolean Style This property gets and sets the active status of the style.
Public PropertyName String Style This property gets and set the name of the style.
Public PropertyPointType PointType This property gets and sets the type of point you want to draw.
Public PropertyRequiredColumnNames Collection<String> Style This property gets the collection of fields that are required for the style.
Public PropertyRotationAngle Single This property gets and sets the angle of rotation for the drawing of the point.
Public PropertySymbolPen GeoPen This property gets and sets the SolidBrush used to draw the oultine of the Symbol.
Public PropertySymbolSize Single This property gets and sets the size of the symbol if the PointType is Symbol.
Public PropertySymbolType PointSymbolType This property gets and sets the type of symbol you want to use if the PointType is Symbol.
Public PropertySymbolWpfGeoBrush GeoSolidBrush This property gets and sets the SolidBrush used to color the interior of the Symbol.
Public PropertyXOffsetInPixel Single This property gets and sets the X pixel offset for drawing each feature.
Public PropertyYOffsetInPixel Single This property gets and sets the Y pixel offset for drawing each feature.

Protected Properties

Name Return DeclaringType Summary

Public Events

Name Event Arguments DeclaringType Summary

Public Constructors

PointStyle()

This is a constructor for the class.

Overloads

This is the default constructor. If you use this constructor, you should set the various properties manually.

Remarks

If you use this constructor, you should set the various properties manually. Specifically, you will want to set the PointType, which allows you to choose between bitmap, character and symbol as an option for displaying your points.

Parameters

Name Type Description

Go Back

PointStyle(GeoImage)

This is a constructor for the class.

Overloads

This constructor is used for bitmap based points.

Remarks

If you use this constructor, the PointStyle will be set to Bitmap.

Parameters

Name Type Description
image GeoImage<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoImage –> This parameter is the GeoImage of the image you want to use to display the point.

Go Back

PointStyle(GeoFont, Int32, GeoSolidBrush)

This is a constructor for the class.

Overloads

This constructor is used for character based points.

Remarks

If you use this constructor, the PointStyle will be set to Character.

Parameters

Name Type Description
characterFont GeoFont<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoFont –> This parameter is the font from which the character will be selected.
characterIndex Int32<!– System.Int32 –> This parameter is the index of the character in the chosen font.
characterSolidBrush GeoSolidBrush<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoSolidBrush –> This parameter is the SolidBrush used to draw the character.

Go Back

PointStyle(PointSymbolType, GeoSolidBrush, Int32)

This is a constructor for the class.

Overloads

This constructor is used for symbol-based points (such as squares and circles) with only a fill.

Remarks

If you use this constructor, the PointStyle will be set to Symbol.

Parameters

Name Type Description
symbolType PointSymbolType<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointSymbolType –> This parameter is the type of symbol you want to use, such as a square or a circle.
symbolSolidBrush GeoSolidBrush<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoSolidBrush –> This parameter is the SolidBrush you want to use to fill the inside of the symbol.
symbolSize Int32<!– System.Int32 –> This parameter is the size you want the symbol to be.

Go Back

PointStyle(PointSymbolType, GeoSolidBrush, GeoPen, Int32)

This is a constructor for the class.

Overloads

This constructor is used for symbol-based points (such as squares and circles) with a fill and outline.

Remarks

If you use this constructor, the PointStyle will be set to Symbol.

Parameters

Name Type Description
symbolType PointSymbolType<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointSymbolType –> This parameter is the type of symbol you want to use, such as a square or a circle.
symbolSolidBrush GeoSolidBrush<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoSolidBrush –> This parameter is the SolidBrush you want to use to fill the inside of the symbol.
symbolPen GeoPen<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoPen –> This parameter is the Pen used to draw the outline of the symbol.
symbolSize Int32<!– System.Int32 –> This parameter is the size you want the symbol to be.

Go Back

Protected Constructors

Public Methods

Draw(IEnumerable<Feature>, GeoCanvas, Collection<SimpleCandidate>, Collection<SimpleCandidate>)

This method draws the features on the canvas you provided.

Remarks

This method is the concrete wrapper for the abstract method DrawCore. In this method, we take the features you passed in and draw them on the canvas you provided. Each style (based on its properties) may draw each feature differently.

As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
features IEnumerable<Feature><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.Feature} –> This parameter represents the features you want to draw on the canvas.
canvas GeoCanvas<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoCanvas –> This parameter represents the canvas you want to draw the features on.
labelsInThisLayer Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> The labels will be drawn in the current layer only.
labelsInAllLayers Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> The labels will be drawn in all layers.

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style –> Go Back

Draw(IEnumerable<BaseShape>, GeoCanvas, Collection<SimpleCandidate>, Collection<SimpleCandidate>)

This method draws the shapes on the canvas you provided.

Remarks

This method is the concrete wrapper for the abstract method DrawCore. In this method, we take the shapes you passed in and draw them on the canvas you provided. Each style (based on its properties) may draw each shape differently.

As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
shapes IEnumerable<BaseShape><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape} –> This parameter represents the shapes you want to draw on the canvas.
canvas GeoCanvas<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoCanvas –> This parameter represents the canvas you want to draw the shapes on.
labelsInThisLayer Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> The labels will be drawn in the current layer only.
labelsInAllLayers Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> The labels will be drawn in all layers.

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style –> Go Back

DrawSample(GeoCanvas, DrawingRectangleF)

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
canvas GeoCanvas<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoCanvas –>
drawingExtent DrawingRectangleF<!– ThinkGeo.MapSuite.WindowsPhoneCore.DrawingRectangleF –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style –> Go Back

Equals(Object)

Return Value

Return Type Description
Boolean<!– System.Boolean –>

Parameters

Name Type Description
obj Object<!– System.Object –>

<!– System.Object –> Go Back

GetHashCode()

Return Value

Return Type Description
Int32<!– System.Int32 –>

Parameters

Name Type Description

<!– System.Object –> Go Back

GetRequiredColumnNames()

This method returns the column data for each feature that is required for the style to properly draw.

Remarks

This method is the concrete wrapper for the abstract method GetRequiredColumnNamesCore. In this method, we return the column names that are required for the style to draw the feature properly. For example, if you have a style that colors areas blue when a certain column value is over 100, then you need to be sure you include that column name. This will ensure that the column data is returned to you in the feature when it is ready to draw.

In many of the styles, we add properties to allow the user to specify which field they need; then, in the GetRequiredColumnNamesCore we read that property and add it to the collection.

As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework.

Return Value

Return Type Description
Collection<String><!– System.Collections.ObjectModel.Collection{System.String} –> This method returns a collection of column names that the style needs.

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style –> Go Back

GetType()

Return Value

Return Type Description
Type<!– System.Type –>

Parameters

Name Type Description

<!– System.Object –> Go Back

ToString()

Return Value

Return Type Description
String<!– System.String –>

Parameters

Name Type Description

<!– System.Object –> Go Back

Protected Methods

DrawCore(IEnumerable<Feature>, GeoCanvas, Collection<SimpleCandidate>, Collection<SimpleCandidate>)

This method draws the features on the canvas you provided.

Remarks

This overridden method is called from the concrete public method Draw. In this method, we take the features you passed in and draw them on the canvas you provided. Each style (based on its properties) may draw each feature differently.

When overriding this method, consider each feature and its column data values. You can use the full power of the GeoCanvas to do the drawing. If you need column data for a feature, be sure to override the GetRequiredColumnNamesCore and add the columns you need to the collection. In many of the styles, we add properties to allow the user to specify which field they need; then, in the GetRequiredColumnNamesCore, we read that property and add it to the collection.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
features IEnumerable<Feature><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.Feature} –> This parameter represents the features you want to draw on the canvas.
canvas GeoCanvas<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoCanvas –> This parameter represents the canvas you want to draw the features on.
labelsInThisLayer Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> The labels will be drawn in the current layer only.
labelsInAllLayers Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> The labels will be drawn in all layers.

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style(overriden) –> Go Back

DrawSampleCore(GeoCanvas, DrawingRectangleF)

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
canvas GeoCanvas<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoCanvas –>
drawingExtent DrawingRectangleF<!– ThinkGeo.MapSuite.WindowsPhoneCore.DrawingRectangleF –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style(overriden) –> Go Back

Finalize()

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– System.Object –> Go Back

GetRequiredColumnNamesCore()

This method returns the column data for each feature that is required for the style to properly draw.

Remarks

This abstract method is called from the concrete public method GetRequiredFieldNames. In this method, we return the column names that are required for the style to draw the feature properly. For example, if you have a style that colors areas blue when a certain column value is over 100, then you need to be sure you include that column name. This will ensure that the column data is returned to you in the feature when it is ready to draw.

In many of the styles, we add properties to allow the user to specify which field they need; then, in the GetRequiredColumnNamesCore we read that property and add it to the collection.

Return Value

Return Type Description
Collection<String><!– System.Collections.ObjectModel.Collection{System.String} –> This method returns a collection of column names that the style needs.

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style –> Go Back

MemberwiseClone()

Return Value

Return Type Description
Object<!– System.Object –>

Parameters

Name Type Description

<!– System.Object –> Go Back

Public Properties

Advanced

This property gets the advanced properties of the PointStyle.

Remarks

This allows you to set the advanced properties of the style.

Return Value

Return Type
PointStyleAdvanced<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyleAdvanced –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

CharacterFont

This property gets and sets the font that is used for the character if the PointType is Character.

Remarks

This property allows you to set the font from which to select a character index if you choose the Character PointType.

Return Value

Return Type
GeoFont<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoFont –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

CharacterIndex

This property gets and sets the index position of the character you want to use from the font you selected in the CharacterFont property.

Remarks

You need to specify the index position of the character you want to use from the font you selected. For example, if you choose 1, then we will use the first character in the font you set in the CharacterFont property.

Return Value

Return Type
Int32<!– System.Int32 –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

CharacterWpfGeoBrush

This property gets and sets the SolidBrush used to color the font character for the point.

Remarks

This brush is used to draw the character. It is only used if the PointType is Character. If you need a brush other than the SolidBrush, you should look in the advanced property of the class.

Return Value

Return Type
GeoSolidBrush<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoSolidBrush –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

CustomPointStyles

This property returns a collection of area styles allowing you to stack multiple area styles on top of each other.

Remarks

Using this collection, you can stack multiple styles on top of each other. When we draw the feature, we will draw them in order that they exist in the collection. You can use these stacks to create drop shadow effects, multiple colored outlines, etc.

Return Value

Return Type
Collection<PointStyle><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle} –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

Image

This property gets and sets the image used if the PointType property is Bitmap.

Remarks

This property is where you can set the image for the points if the PointType is Bitmap. It uses a GeoImage, so you can either reference a file or supply a stream.

Return Value

Return Type
GeoImage<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoImage –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

ImageScale

This property gets and sets the scale of the image you want to draw.

Remarks

This property allows you to scale the image up and down depending on how large or small you want it. It can be changed dynamically, so you could change it at every scale level to resize the bitmap based on the current scale. A scale of 1 would be the original size, while a scale of 2 would double the size. A scale of .5 would reduce the size of the image by half, and so on.

Return Value

Return Type
Double<!– System.Double –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

IsActive

This property gets and sets the active status of the style.

Remarks

If the style is not active then it will not draw.

Return Value

Return Type
Boolean<!– System.Boolean –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style –> Go Back

Name

This property gets and set the name of the style.

Remarks

This name is not used by the system; it is only for the developer. However, it can be used if you generate your own legend.

Return Value

Return Type
String<!– System.String –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style –> Go Back

PointType

This property gets and sets the type of point you want to draw.

Remarks

When using the PointStyle you choose between a bitmap, a font or a predefined symbol to represent the point. Each of these options has corresponding properties on the point symbol. If you set the type to character, then you need to set the properties that start with “Character,” such as “CharacterFont.” The same is true for the symbol.

Return Value

Return Type
PointType<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointType –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

RequiredColumnNames

This property gets the collection of fields that are required for the style.

Remarks

This property gets the collection of fields that are required for the style. These are in addition to any other columns you specify in styles that inherit from this one. For example, if you have use a ValueStyle and it requires a column name for the value comparison, then that column does not need to be in this collection. You only use the RequiredColumnNames for columns you need beyond those required by specific inherited styles.

Return Value

Return Type
Collection<String><!– System.Collections.ObjectModel.Collection{System.String} –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.Style –> Go Back

RotationAngle

This property gets and sets the angle of rotation for the drawing of the point.

Remarks

This property controls the rotation of the bitmap, character or symbol, depending on the PointType.

Return Value

Return Type
Single<!– System.Single –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

SymbolPen

This property gets and sets the SolidBrush used to draw the oultine of the Symbol.

Remarks

This pen is used to draw the outline of the Symbol. By default the pen draws a transparent (invisible) color, which just leaves you with a fill.

Return Value

Return Type
GeoPen<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoPen –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

SymbolSize

This property gets and sets the size of the symbol if the PointType is Symbol.

Remarks

The allows you to make the symbol larger and smaller.

Return Value

Return Type
Single<!– System.Single –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

SymbolType

This property gets and sets the type of symbol you want to use if the PointType is Symbol.

Remarks

You can choose between a number of predefined symbols. The symbols are simple geometric objects that are typically used for abstract representations on a map. If there is a specific symbol you need that is not part of our symbol collection, you can submit it to us and we will consider adding it.

Return Value

Return Type
PointSymbolType<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointSymbolType –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

SymbolWpfGeoBrush

This property gets and sets the SolidBrush used to color the interior of the Symbol.

Remarks

This brush is used to draw the interior of the symbol. It is only used if the PointType is Symbol. If you need a brush other than the SolidBrush, you should look in the advanced property of the class.

Return Value

Return Type
GeoSolidBrush<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoSolidBrush –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

XOffsetInPixel

This property gets and sets the X pixel offset for drawing each feature.

Remarks

This property allows you to specify an X offset. When combined with a Y offset, it is useful to allow you to achieve effects such as drop shadows, etc. There also may be times when you need to modify the location of feature data so as to better align it with raster satellite data.

Return Value

Return Type
Single<!– System.Single –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

YOffsetInPixel

This property gets and sets the Y pixel offset for drawing each feature.

Remarks

This property allows you to specify a Y offset. When combined with an X offset, it is useful to allow you to achieve effects such as drop shadows, etc. There also may be times when you need to modify the location of feature data so as to better align it with raster satellite data.

Return Value

Return Type
Single<!– System.Single –>

<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointStyle –> Go Back

Protected Properties

Public Events

thinkgeo.mapsuite.windowsphonecore.pointstyle.txt · Last modified: 2017/03/16 21:59 (external edit)