User Tools

Site Tools


thinkgeo.mapsuite.windowsphonecore.zoomlevel

ThinkGeo.MapSuite.WindowsPhoneCore.ZoomLevel

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 defines how InternalFeatures will be drawn based on their scale.

Remarks

This class defines how InternalFeatures will be drawn based on their scale. Inside of the ZoomLevelSet there are a number of zoom levels. We will determine which ZoomLevel to use based on which one has the Scale property closest to the current scale. The matching one will define the styles that will be used to draw the InternalFeatures on the map.

Inheritance Hierarchy

Members Summary

Public Constructors

Name Parameters DeclaringType Summary
Public MethodZoomLevel This is a constructor for the class.
Public MethodZoomLevel Double This is a constructor for the class.

Protected Constructors

Name Parameters DeclaringType Summary

Public Methods

Name Parameters DeclaringType Summary
Public MethodDraw GeoCanvas, IEnumerable<Feature>, Collection<SimpleCandidate>, Collection<SimpleCandidate> This method draws the ZoomLevel.
Public MethodDraw GeoCanvas, IEnumerable<BaseShape>, Collection<SimpleCandidate>, Collection<SimpleCandidate> This method draws the ZoomLevel.
Public MethodEquals Object Object
Public MethodGetHashCode Object
Public MethodGetRequiredColumnNames This method returns the column data for each feature that is required for the styles to properly draw.
Public MethodGetType Object
Public MethodToString Object

Protected Methods

Name Parameters DeclaringType Summary
Protected MethodDrawCore GeoCanvas, IEnumerable<Feature>, Collection<SimpleCandidate>, Collection<SimpleCandidate> This method draws the ZoomLevel.
Protected MethodFinalize Object
Protected MethodMemberwiseClone Object

Public Properties

Name Return DeclaringType Summary
Public PropertyApplyUntilZoomLevel ApplyUntilZoomLevel This property gets and sets the zoom to which we will use this zoom level's styles.
Public PropertyCustomStyles Collection<Style> This property gets a collection of custom styles used to draw.
Public PropertyDefaultAreaStyle AreaStyle This property gets and sets the default AreaStyle used to draw.
Public PropertyDefaultLineStyle LineStyle This property gets and sets the default LineStyle used to draw.
Public PropertyDefaultPointStyle PointStyle This property gets and sets the default PointStyle used to draw.
Public PropertyDefaultTextStyle TextStyle This property gets and sets the default TextStyle used to draw.
Public PropertyIsActive Boolean This property gets and sets whether the ZoomLevel is active and should draw.
Public PropertyName String This property gets and sets the name for the ZoomLevel.
Public PropertyScale Double This property gets and sets the scale for the ZoomLevel.

Protected Properties

Name Return DeclaringType Summary

Public Events

Name Event Arguments DeclaringType Summary

Public Constructors

ZoomLevel()

This is a constructor for the class.

Overloads

This is the default constructor. If you use this constructor, you should set the require properties on the class manually.

Remarks

This is the default constructor. If you use this constructor, you should set the require properties on the class manually.

Parameters

Name Type Description

Go Back

ZoomLevel(Double)

This is a constructor for the class.

Overloads

This constructor allows you to provide the scale for this ZoomLevel.

Remarks

This constructor allows you to provide the scale for this ZoomLevel.

Parameters

Name Type Description
scale Double<!– System.Double –> This paramter is the scale for the ZoomLevel.

Go Back

Protected Constructors

Public Methods

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

This method draws the ZoomLevel.

Remarks

This method is the concrete wrapper for the abstract method DrawCore. This method draws the representation of the Layer based on the extent you provided.

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
canvas GeoCanvas<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoCanvas –> This parameter is the Canvas used to draw the InternalFeatures.
features IEnumerable<Feature><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.Feature} –> This parameter is the collection of features that we will draw.
currentLayerLabels Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> This parameter is the collection of labels in the current layer.
allLayerLabels Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> This parameter is the collection of labels in all layers.

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

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

This method draws the ZoomLevel.

Remarks

This method is the concrete wrapper for the abstract method DrawCore. This method draws the representation of the Layer based on the extent you provided.

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
canvas GeoCanvas<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoCanvas –> This parameter is the Canvas used to draw the InternalFeatures.
shapes IEnumerable<BaseShape><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape} –> This parameter is the collection of shapes that we will draw.
currentLayerLabels Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> This parameter is the collection of labels in the current layer.
allLayerLabels Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> This parameter is the collection of labels in all layers.

<!– ThinkGeo.MapSuite.WindowsPhoneCore.ZoomLevel –> 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 styles to properly draw.

Remarks

In this method, we return the column names that are required for the styles 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 the 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 containing the required column names.

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.WindowsPhoneCore.ZoomLevel –> 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(GeoCanvas, IEnumerable<Feature>, Collection<SimpleCandidate>, Collection<SimpleCandidate>)

This method draws the ZoomLevel.

Remarks

This method draws the representation of the Layer based on the extent you provided.

Return Value

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

Parameters

Name Type Description
canvas GeoCanvas<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeoCanvas –> This parameter is the Canvas used to draw the InternalFeatures.
features IEnumerable<Feature><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.Feature} –> This parameter is the collection of feature that we will draw.
currentLayerLabels Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> This parameter is the collection of labels in the current layer.
allLayerLabels Collection<SimpleCandidate><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.WindowsPhoneCore.SimpleCandidate} –> This parameter is the collection of labels in all layers.

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

Finalize()

Return Value

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

Parameters

Name Type Description

<!– System.Object –> Go Back

MemberwiseClone()

Return Value

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

Parameters

Name Type Description

<!– System.Object –> Go Back

Public Properties

ApplyUntilZoomLevel

This property gets and sets the zoom to which we will use this zoom level's styles.

Remarks

This property allows you to apply the current ZoomLevel's styles across many ZoomLevels. For example, you may want to display roads as a thin line from ZoomLevel10 through ZoomLevel15. To accomplish this easily, you can set the correct styles on ZoomLevel10 and then set its ApplyUntilZoomLevel property to Level15. This will mean that Level10's style will be used until Level15. There is no need to set Level11, Level12, Level13 and so on.

Return Value

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

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

CustomStyles

This property gets a collection of custom styles used to draw.

Remarks

This is a collection of styles to draw. If you only need to draw one style, then we suggest you do not use this collection and instead use one of the default styles, such as DefaultAreaStyle, DefaultLineStyle, DefaultTextStyle, etc.

Return Value

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

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

DefaultAreaStyle

This property gets and sets the default AreaStyle used to draw.

Remarks

If you set this style, then it will be used for drawing.

If you use the default styles, you should only use one. The one you use should match your feature data. For example, if your features are lines, then you should use the DefaultLineStyle.

Return Value

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

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

DefaultLineStyle

This property gets and sets the default LineStyle used to draw.

Remarks

If you set this style, then it will be used for drawing.

If you use the default styles, you should only use one. The one you use should match your feature data. For example, if your features are lines, then you should use the DefaultLineStyle.

Return Value

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

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

DefaultPointStyle

This property gets and sets the default PointStyle used to draw.

Remarks

If you set this style, then it will be used for drawing.

If you use the default styles, you should only use one. The one you use should match your feature data. For example, if your features are lines, then you should use the DefaultLineStyle.

Return Value

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

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

DefaultTextStyle

This property gets and sets the default TextStyle used to draw.

Remarks

If you set this style, then it will be used for drawing.

If you use the default styles, you should only use one. The one you use should match your feature data. For example, if your features are lines, then you should use the DefaultLineStyle.

Return Value

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

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

IsActive

This property gets and sets whether the ZoomLevel is active and should draw.

Remarks

Setting the value to false means that this zoom level will not be considered in the ZoomLevelSet and thus will not draw.

Return Value

Return Type
Boolean<!– System.Boolean –>

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

Name

This property gets and sets the name for the ZoomLevel.

Remarks

The name is user defined. It is useful to set, as it may be used for higher level components such as legends, etc.

Return Value

Return Type
String<!– System.String –>

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

Scale

This property gets and sets the scale for the ZoomLevel.

Remarks

The scale

Return Value

Return Type
Double<!– System.Double –>

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

Protected Properties

Public Events

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