User Tools

Site Tools


thinkgeo.mapsuite.windowsphonecore.lineshape

Table of Contents

ThinkGeo.MapSuite.WindowsPhoneCore.LineShape

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 represents a LineShape, which is defined as a single line with two or more points.

Remarks

The LineShape is one of the more commonly used shapes. Typically it is used for representing roads in GIS data files.

Inheritance Hierarchy

Members Summary

Public Constructors

Name Parameters DeclaringType Summary
Public MethodLineShape This constructor creates the LineShape.
Public MethodLineShape IEnumerable<Vertex> This constructor creates the LineShape.
Public MethodLineShape String This constructor creates the LineShape.
Public MethodLineShape Byte[] This constructor creates the LineShape.

Protected Constructors

Name Parameters DeclaringType Summary

Public Methods

Name Parameters DeclaringType Summary
Public MethodBuffer Double, GeographyUnit, DistanceUnit BaseShape This method computes the area containing all of the points within a given distance from this shape.
Public MethodBuffer Double, Int32, BufferCapType, GeographyUnit, DistanceUnit BaseShape This method computes the area containing all of the points within a given distance from this shape.
Public MethodBuffer Double, Int32, GeographyUnit, DistanceUnit BaseShape This method computes the area containing all of the points within a given distance from this shape.
Public MethodCloneDeep BaseShape This method returns a complete copy of the shape without any references in common.
Public MethodContains Feature BaseShape This method returns if the targetFeature lies within the interior of the current shape.
Public MethodContains BaseShape BaseShape This method returns if the targetShape lies within the interior of the current shape.
Public MethodConvexHull LineBaseShape This method returns the convex hull of the shape defined as the smallest convex ring that contains all the points in the shape.
Public MethodStatic MemberCreateShapeFromWellKnownData String BaseShape This method creates a BaseShape from a string of well-known text.
Public MethodStatic MemberCreateShapeFromWellKnownData Byte[] BaseShape This method creates a BaseShape from a string of well-known binary.
Public MethodCrosses BaseShape BaseShape This method returns if the current shape and the targetShape share some but not all interior points.
Public MethodCrosses Feature BaseShape This method returns if the current shape and the targetFeature share some but not all interior points.
Public MethodEquals Object Object
Public MethodGetBoundingBox BaseShape This method calculates the smallest RectangleShape that encompasses the entire geometry.
Public MethodGetCenterPoint BaseShape This method returns the center point of the current shape's bounding box.
Public MethodGetClosestPointTo Feature, GeographyUnit BaseShape This method returns the point of the current shape that is closest to the target feature.
Public MethodGetClosestPointTo BaseShape, GeographyUnit BaseShape This method returns the point of the current shape that is closest to the target shape.
Public MethodGetCrossing BaseShape BaseShape This method returns the crossing points between the current shape and the passed-in target shape.
Public MethodGetDistanceTo BaseShape, GeographyUnit, DistanceUnit BaseShape This method computes the distance between the current shape and the targetShape.
Public MethodGetDistanceTo Feature, GeographyUnit, DistanceUnit BaseShape This method computes the distance between the current shape and the targetFeature.
Public MethodGetFeature BaseShape Get a corresponding feature which has the same Id and BaseShape as the current shape.
Public MethodGetFeature IDictionary<String, String> BaseShape Get a corresponding feature which has the same Id and BaseShape as the current shape. Additionally, pass the specified columnValues into the returned feature.
Public MethodGetHashCode Object
Public MethodGetIntersection AreaBaseShape LineBaseShape
Public MethodGetIntersection Feature LineBaseShape
Public MethodGetLength GeographyUnit, DistanceUnit LineBaseShape This method returns the length of the line shape.
Public MethodGetLineOnALine StartingPoint, Single, Single This method returns a BaseLineShape, based on a starting position and other factors.
Public MethodGetLineOnALine StartingPoint, PointShape This method returns a BaseLineShape, based on a starting position and other factors.
Public MethodGetLineOnALine StartingPoint, Single This method returns a BaseLineShape, based on a starting position and other factors.
Public MethodGetLineOnALine StartingPoint, Double, Double, GeographyUnit, DistanceUnit This method returns a BaseLineShape, based on a starting position and other factors.
Public MethodGetLineOnALine PointShape, PointShape This method returns a BaseLineShape, based on a starting position and other factors.
Public MethodGetPointOnALine StartingPoint, Double, GeographyUnit, DistanceUnit This method returns a PointShape on the line, based on a distance on the line from the first or last vertex defined in the startingPoint parameter.
Public MethodGetPointOnALine StartingPoint, Single This method returns a PointShape on the line, based on a percentage of the length of the line from the first or last vertex defined in the startingPoint parameter.
Public MethodGetShortestLineTo BaseShape, GeographyUnit BaseShape This method returns the shortest LineShape between this shape and the targetShape parameter.
Public MethodGetShortestLineTo Feature, GeographyUnit BaseShape This method returns the shortest LineShape between this shape and the targetFeature. parameter.
Public MethodGetType Object
Public MethodGetWellKnownBinary WkbByteOrder BaseShape This method returns a byte array that represents the shape in well-known binary.
Public MethodGetWellKnownBinary BaseShape This method returns a byte array that represents the shape in well-known binary.
Public MethodGetWellKnownText BaseShape This method returns the well-known text representation of this shape.
Public MethodGetWellKnownType BaseShape This method returns the well-known type for the shape.
Public MethodIntersects BaseShape BaseShape This method returns if the current shape and the targetShape have at least one point in common.
Public MethodIntersects Feature BaseShape This method returns if the current shape and the targetFeature have at least one point in common.
Public MethodIsClosed This method determines whether the line is closed, meaning that the last point and first point are the same.
Public MethodIsDisjointed BaseShape BaseShape This method returns if the current shape and the targetShape have no points in common.
Public MethodIsDisjointed Feature BaseShape This method returns if the current shape and the targetFeature have no points in common.
Public MethodIsTopologicallyEqual Feature BaseShape This method returns if the current shape and the targetFeature are topologically equal.
Public MethodIsTopologicallyEqual BaseShape BaseShape This method returns if the current shape and the targetShape are topologically equal.
Public MethodIsWithin BaseShape BaseShape This method returns if the current shape lies within the interior of the targetShape.
Public MethodIsWithin Feature BaseShape This method returns if the current shape lies within the interior of the targetFeature.
Public MethodLoadFromWellKnownData Byte[] BaseShape This method hydrates the current shape with its data from well-known binary.
Public MethodLoadFromWellKnownData String BaseShape This method hydrates the current shape with its data from well-known text.
Public MethodOverlaps Feature BaseShape This method returns if the current shape and the targetFeature share some but not all points in common.
Public MethodOverlaps BaseShape BaseShape This method returns if the current shape and the targetShape share some but not all points in common.
Public MethodRegister Feature, Feature, DistanceUnit, GeographyUnit BaseShape This method returns a BaseShape which has been registered from its original coordinate system to another based on two anchor PointShapes.
Public MethodRegister PointShape, PointShape, DistanceUnit, GeographyUnit BaseShape This method returns a BaseShape which has been registered from its original coordinate system to another based on two anchor PointShapes.
Public MethodStatic MemberRemoveVertex Vertex, LineShape This method removes the selected vertex from line shape.
Public MethodRemoveVertex Vertex This method removes the selected vertex from line shape.
Public MethodReversePoints This method reverses the order of the points in the line.
Public MethodStatic MemberRotate BaseShape, PointShape, Single BaseShape This method returns a shape rotated by a number of degrees based on a pivot point.
Public MethodRotate PointShape, Single BaseShape This method rotates a shape a number of degrees based on a pivot point.
Public MethodStatic MemberRotate Feature, PointShape, Single BaseShape This method returns a feature rotated by a number of degrees based on a pivot point.
Public MethodStatic MemberScaleDown Feature, Double LineBaseShape This method returns a new feature that is decreases by the percentage given in the percentage parameter.
Public MethodScaleDown Double LineBaseShape This method decreases the size of the LineShape by the percentage given in the percentage parameter.
Public MethodStatic MemberScaleDown LineBaseShape, Double LineBaseShape This method returns a new shape that is decreases by the percentage given in the percentage parameter.
Public MethodScaleTo Double BaseShape
Public MethodStatic MemberScaleTo BaseShape, Double BaseShape
Public MethodScaleUp Double LineBaseShape This method increases the size of the LineShape by the percentage given in the percentage parameter.
Public MethodStatic MemberScaleUp LineBaseShape, Double LineBaseShape This method returns a new shape that is increased by the percentage given in the percentage parameter.
Public MethodStatic MemberScaleUp Feature, Double LineBaseShape This method returns a new feature that is increased by the percentage given in the percentage parameter.
Public MethodStatic MemberSimplify LineBaseShape, Double, SimplificationType LineBaseShape Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.
Public MethodStatic MemberSimplify LineBaseShape, GeographyUnit, Double, DistanceUnit, SimplificationType LineBaseShape Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.
Public MethodSimplify GeographyUnit, Double, DistanceUnit, SimplificationType LineBaseShape Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.
Public MethodSimplify Double, SimplificationType LineBaseShape Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.
Public MethodToString Object
Public MethodTouches BaseShape BaseShape This method returns if the current shape and the targetShape have at least one boundary point in common, but no interior points.
Public MethodTouches Feature BaseShape This method returns of the current shape and the targetFeature have at least one boundary point in common, but no interior points.
Public MethodTranslateByDegree Double, Double, GeographyUnit, DistanceUnit BaseShape This method moves a base shape from one location to another based on a distance and a direction in degrees.
Public MethodStatic MemberTranslateByDegree Feature, Double, Double, GeographyUnit, DistanceUnit BaseShape This method returns a feature repositioned from one location to another, based on a distance and a direction in degrees.
Public MethodTranslateByDegree Double, Double BaseShape This method moves a base shape from one location to another based on a distance and a direction in degrees.
Public MethodStatic MemberTranslateByDegree BaseShape, Double, Double, GeographyUnit, DistanceUnit BaseShape This method returns a shape repositioned from one location to another based on a distance and a direction in degrees.
Public MethodStatic MemberTranslateByOffset BaseShape, Double, Double, GeographyUnit, DistanceUnit BaseShape This method returns a shape repositioned from one location to another based on an X and Y offset distance.
Public MethodTranslateByOffset Double, Double BaseShape
Public MethodTranslateByOffset Double, Double, GeographyUnit, DistanceUnit BaseShape This method moves a base shape from one location to another based on an X and Y offset distance.
Public MethodStatic MemberTranslateByOffset Feature, Double, Double, GeographyUnit, DistanceUnit BaseShape This method returns a feature repositioned from one location to another based on an X and Y offset distance.
Public MethodUnion Feature LineBaseShape
Public MethodUnion LineBaseShape LineBaseShape Calculates a new geometry that contains all the points in this LineBaseShape and input LineBaseShape
Public MethodStatic MemberUnion IEnumerable<LineBaseShape> LineBaseShape Calculates a new geometry that contains all the points in this LineBaseShape and input LineBaseShape set.
Public MethodStatic MemberUnion IEnumerable<Feature> LineBaseShape
Public MethodValidate ShapeValidationMode BaseShape This method returns a ShapeValidationResult based on a series of tests.

Protected Methods

Name Parameters DeclaringType Summary
Protected MethodBufferCore Double, Int32, BufferCapType, GeographyUnit, DistanceUnit BaseShape This method computes the area containing all of the points within a given distance from this shape.
Protected MethodCloneDeepCore BaseShape(overriden) This method returns a complete copy of the shape without any references in common.
Protected MethodContainsCore BaseShape BaseShape This method returns if the targetShape lies within the interior of the current shape.
Protected MethodConvexHullCore LineBaseShape This method returns the convex hull of the shape defined as the smallest convex ring that contains all the points in the shape.
Protected MethodCrossesCore BaseShape BaseShape This method returns if the current shape and the targetShape share some but not all interior points.
Protected MethodFinalize Object
Protected MethodGetBoundingBoxCore BaseShape(overriden) This method calculates the smallest RectangleShape that encompasses the entire geometry.
Protected MethodGetCenterPointCore BaseShape This method returns the center point of the current shape's bounding box.
Protected MethodGetClosestPointToCore BaseShape, GeographyUnit BaseShape(overriden) This method returns the point of the current shape that is closest to the target shape.
Protected MethodGetCrossingCore BaseShape BaseShape(overriden) This method returns the crossing points between the current shape and the passed-in target shape.
Protected MethodGetDistanceToCore BaseShape, GeographyUnit, DistanceUnit BaseShape(overriden) This method computes the distance between the current shape and the targetShape.
Protected MethodGetIntersectionCore AreaBaseShape LineBaseShape
Protected MethodGetLengthCore GeographyUnit, DistanceUnit LineBaseShape(overriden) This method returns the length of the LineShape.
Protected MethodGetLineOnALineCore StartingPoint, Single This method returns a BaseLineShape, based on a starting position and other factors.
Protected MethodGetLineOnALineCore StartingPoint, Double, Double, GeographyUnit, DistanceUnit This method returns a BaseLineShape, based on a starting position and other factors.
Protected MethodGetLineOnALineCore PointShape, PointShape This method returns a BaseLineShape, based on a starting position and other factors.
Protected MethodGetLineOnALineCore StartingPoint, PointShape This method returns a BaseLineShape, based on a starting position and other factors.
Protected MethodGetPointOnALineCore StartingPoint, Single This method returns a PointShape on the line, based on a percentage of the length of the line from the first or last vertex defined in the startingPoint parameter.
Protected MethodGetPointOnALineCore StartingPoint, Double, GeographyUnit, DistanceUnit This method returns a PointShape on the line, based on a distance on the line from the first or last vertex defined in the startingPoint parameter.
Protected MethodGetShortestLineToCore BaseShape, GeographyUnit BaseShape This method returns the shortest LineShape between this shape and the targetShape parameter.
Protected MethodGetWellKnownBinaryCore WkbByteOrder BaseShape(overriden) This method returns a byte array that represents the shape in well-known binary.
Protected MethodGetWellKnownTextCore BaseShape(overriden) This method returns the well-known text representation of this shape.
Protected MethodGetWellKnownTypeCore BaseShape(overriden) This method returns the well-known type for the shape.
Protected MethodIntersectsCore BaseShape BaseShape This method returns if the current shape and the targetShape have at least one point in common.
Protected MethodIsClosedCore This method determines whether the line is closed, meaning that the last point and first point are the same.
Protected MethodIsDisjointedCore BaseShape BaseShape This method returns if the current shape and the targetShape have no points in common.
Protected MethodIsTopologicallyEqualCore BaseShape BaseShape This method returns if the current shape and the targetShape are topologically equal.
Protected MethodIsWithinCore BaseShape BaseShape This method returns if the current shape lies within the interior of the targetShape.
Protected MethodLoadFromWellKnownDataCore String BaseShape(overriden) This method hydrates the current shape with its data from well-known text.
Protected MethodLoadFromWellKnownDataCore Byte[] BaseShape(overriden) This method hydrates the current shape with its data from well-known binary.
Protected MethodMemberwiseClone Object
Protected MethodOverlapsCore BaseShape BaseShape This method returns if the current shape and the targetShape share some but not all points in common.
Protected MethodRegisterCore PointShape, PointShape, DistanceUnit, GeographyUnit BaseShape(overriden)
Protected MethodReversePointsCore This method reverses the order of the points in the line.
Protected MethodRotateCore PointShape, Single BaseShape(overriden) This method rotates the shape a number of degrees based on a pivot point.
Protected MethodScaleDownCore Double LineBaseShape(overriden) This method decreases the size of the LineShape by the percentage given in the percentage parameter.
Protected MethodScaleToCore Double BaseShape
Protected MethodScaleUpCore Double LineBaseShape(overriden) This method increases the size of the LineShape by the percentage given in the percentage parameter.
Protected MethodSimplifyCore Double, SimplificationType LineBaseShape Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.
Protected MethodTouchesCore BaseShape BaseShape This method returns if the current shape and the targetShape have at least one boundary point in common, but no interior points.
Protected MethodTranslateByDegreeCore Double, Double, GeographyUnit, DistanceUnit BaseShape(overriden) This method moves the base shape from one location to another based on a distance and a direction in degrees.
Protected MethodTranslateByOffsetCore Double, Double, GeographyUnit, DistanceUnit BaseShape(overriden)
Protected MethodUnionCore IEnumerable<LineBaseShape> LineBaseShape The protected virtual method used by “Union” that you can overwrite to implement your own logic.
Protected MethodValidateCore ShapeValidationMode BaseShape(overriden) This method returns a ShapeValidationResult based on a series of tests.

Public Properties

Name Return DeclaringType Summary
Public PropertyCanRotate Boolean BaseShape(overriden) This property specifies whether the shape can be rotated.
Public PropertyId String BaseShape The id of the shape.
Public PropertyTag Object BaseShape The tag of the shape.
Public PropertyVertices Collection<Vertex> This property is the collection of points that make up the LineShape.

Protected Properties

Name Return DeclaringType Summary

Public Events

Name Event Arguments DeclaringType Summary

Public Constructors

LineShape()

This constructor creates the LineShape.

Overloads

This overload creates the LineShape without any points.

Parameters

Name Type Description

Go Back

LineShape(IEnumerable<Vertex>)

This constructor creates the LineShape.

Overloads

This overload creates the LineShape with a vertex collection.

Parameters

Name Type Description
points IEnumerable<Vertex><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.Vertex} –>

Go Back

LineShape(String)

This constructor creates the LineShape.

Overloads

This constructor allows you to build the shape from well-known text.

Parameters

Name Type Description
wellKnownText String<!– System.String –> This parameter is the well-known text used to build the shape.

Go Back

LineShape(Byte[])

This constructor creates the LineShape.

Overloads

This constructor allows you to build the shape from well-known binary.

Parameters

Name Type Description
wellKnownBinary Byte[]<!– System.Bytethinkgeo.mapsuite.windowsphonecore.lineshape –> This parameter is the well-known binary used to build the shape.

Go Back

Protected Constructors

Public Methods

Buffer(Double, GeographyUnit, DistanceUnit)

This method computes the area containing all of the points within a given distance from this shape.

Remarks

This method computes the area containing all of the points within a given distance from this shape. In this case, you will be using the rounded RoundedBufferCapStyle and the default 8 quadrant segments. The distance unit is determined by the distanceUnit argument.

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
MultipolygonShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultipolygonShape –> The return type is a MultiPolygonShape that represents all of the points within a given distance from the shape.

Parameters

Name Type Description
distance Double<!– System.Double –> The distance is the number of units to buffer the current shape. The distance unit will be the one specified in the distanceUnit parameter. The distance must be greater than 0.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the distance. For example, if you select miles as your distanceUnit, then the distance will be calculated in miles for the operation.

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

Buffer(Double, Int32, BufferCapType, GeographyUnit, DistanceUnit)

This method computes the area containing all of the points within a given distance from this shape.

Remarks

This method computes the area containing all of the points within a given distance from this shape.

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
MultipolygonShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultipolygonShape –> The return type is a MultiPolygonShape that represents all of the points within a given distance from the shape.

Parameters

Name Type Description
distance Double<!– System.Double –> The distance is the number of units to buffer the current shape. The distance unit will be the one specified in the distanceUnit paramater. The distance must be greater than 0.
quadrantSegments Int32<!– System.Int32 –> The quadrant segments are the number of points in each quarter circle. A good default is 8, but if you want smoother edges you can increase this number. The valid range for this number is from 3 to 100.
bufferCapType BufferCapType<!– ThinkGeo.MapSuite.WindowsPhoneCore.BufferCapType –> The bufferCapType determines how the caps of the buffered object look. They range from rounded to squared off.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the distance. For example, if you select miles as your distanceUnit, then the distance will be calculated in miles for the operation.

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

Buffer(Double, Int32, GeographyUnit, DistanceUnit)

This method computes the area containing all of the points within a given distance from this shape.

Remarks

This method computes the area containing all of the points within a given distance from this shape. In this case, you will be using the rounded RoundedBufferCapStyle. The distance unit is determined by the distanceUnit argument.

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
MultipolygonShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultipolygonShape –> The return type is a MultiPolygonShape that represents all of the points within a given distance from the shape.

Parameters

Name Type Description
distance Double<!– System.Double –> The distance is the number of units to buffer the current shape. The distance unit will be the one specified in the distanceUnit paramater. The distance must be greater than 0.
quadrantSegments Int32<!– System.Int32 –> The quadrant segments are the number of points in each quarter circle. A good default is 8, but if you want smoother edges you can increase this number. The valid range for this number is from 3 to 100.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the distance. For example, if you select miles as your distanceUnit, then the distance will be calculated in miles for the operation.

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

CloneDeep()

This method returns a complete copy of the shape without any references in common.

Remarks

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
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This method returns a complete copy of the shape without any references in common.

Parameters

Name Type Description

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

Contains(Feature)

This method returns if the targetFeature lies within the interior of the current shape.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the targetFeature lies within the interior of the current shape.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The targetFeature that contains a shape you wish to compare the current one to.

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

Contains(BaseShape)

This method returns if the targetShape lies within the interior of the current shape.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the targetShape lies within the interior of the current shape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

ConvexHull()

This method returns the convex hull of the shape defined as the smallest convex ring that contains all the points in the shape.

Remarks

This method is useful when you want to create a perimeter around the shape. For example if you had a MultiPolygon which represented buildings in a campus you could easily get the convex hull of the buildings and determine the perimeter of all of the buildings together. This also works with MultiPoint shapes where each point may represent a certain type of person you are doing statistics on. With convex hull you can get an idea of the regions those points are located in.

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 your needs. If you have questions about this please contact support as we would be happy to work with you on extending our framework.

Return Value

Return Type Description
RingShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.RingShape –> This method returns a RingShape defined as the smallest convex ring that contains all the points in the shape.

Parameters

Name Type Description

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

CreateShapeFromWellKnownData(String)

<!– static –> This method creates a BaseShape from a string of well-known text.

Remarks

This method creates a BaseShape from a string of well-known text. Well-known text allows you to describe geometries as a string of text. Well-known text is useful when you want to save a geometry in a format such as a text file, or when you simply want to cut and paste the text between other applications. An alternative to well-known text is well-known binary, which is a binary representation of a geometry object. We have methods that work with well-known binary as well. Below are some samples of what well-known text might look like for various kinds of geometries.

POINT(5 17)

LINESTRING(4 5,10 50,25 80)

POLYGON1)

MULTIPOINT(3.7 9.7,4.9 11.6)

MULTILINESTRING2)

MULTIPOLYGON3),4))

Return Value

Return Type Description
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The return type is a higher level shape constructed from the well-known text you passed into the method. Though the object is a higher level shape, such as a PolygonShape or MultiPointShape, you will need to cast it to that shape in order to use its unique properties.

Parameters

Name Type Description
wellKnownText String<!– System.String –> A string representing the geometry in well-known text format.

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

CreateShapeFromWellKnownData(Byte[])

<!– static –> This method creates a BaseShape from a string of well-known binary.

Remarks

This method creates a BaseShape from a string of well-known binary. Well-known binary allows you to describe geometries as a binary array. Well-known binary is useful when you want to save a geometry in an efficient format using as little space as possible. An alternative to well-known binary is well-known text, which is a textual representation of a geometry object. We have methods that work with well-known text as well.

Return Value

Return Type Description
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The return type is a higher level shape constructed from the well-known binary you passed into the method. Though the object is a higher level shape, such as a PolygonShape or MultiPointShape, you will need to cast it to that shape in order to use its unique properties.

Parameters

Name Type Description
wellKnownBinary Byte[]<!– System.Bytethinkgeo.mapsuite.windowsphonecore.lineshape –> An array of bytes representing the geometry in well-known binary format.

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

Crosses(BaseShape)

This method returns if the current shape and the targetShape share some but not all interior points.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape share some but not all interior points.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

Crosses(Feature)

This method returns if the current shape and the targetFeature share some but not all interior points.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the current shape and the targetFeature share some but not all interior points.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The targetFeature that contains a shape you wish to compare the current one to.

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

Equals(Object)

Return Value

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

Parameters

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

<!– System.Object –> Go Back

GetBoundingBox()

This method calculates the smallest RectangleShape that encompasses the entire geometry.

Remarks

The GetBoundingBox method calculates the smallest RectangleShape that can encompass the entire geometry by examining each point in the geometry.

Depending on the number of PointShapes and complexity of the geometry, this operation can take longer for larger objects.

If the shape is a PointShape, then the bounding box's upper left and lower right points will be equal. This will create a RectangleShape with no area.

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
RectangleShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.RectangleShape –> The RectangleShape returned is the smallest RectangleShape that can encompass the entire geometry.

Parameters

Name Type Description

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

GetCenterPoint()

This method returns the center point of the current shape's bounding box.

Remarks

This method returns the center point of the current shape's bounding box. It is important to note that this is the center point of the bounding box. There are numerous ways to calculate the “center” of a geometry, such as its weighted center, etc. You can find other centers by examining the various methods of the shape itself.

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
PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> A PointShape representing the center point of the current shape's bounding box.

Parameters

Name Type Description

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

GetClosestPointTo(Feature, GeographyUnit)

This method returns the point of the current shape that is closest to the target feature.

Remarks

This method returns the point of the current shape that is closest to the target feature. It is often the case that the point returned is not a point of the object itself. An example would be a line with two points that are far apart from each other. If you set the targetFeature to be a point midway between the points but a short distance away from the line, the method would return a point that is on the line but not either of the two points that make up the line.

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
PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> A PointShape representing the closest point of the current shape to the targetFeature.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The feature you are trying to find the closest point to.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> The geographic unit of the feature you are trying to find the closet point to.

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

GetClosestPointTo(BaseShape, GeographyUnit)

This method returns the point of the current shape that is closest to the target shape.

Remarks

This method returns the point of the current shape that is closest to the target shape. It is often the case that the point returned is not a point of the object itself. An example would be a line with two points that are far apart from each other. If you set the targetShape to be a point midway between the points but a short distance away from the line, the method would return a point that is on the line but not either of the two points that make up the line.

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
PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> A PointShape representing the closest point of the current shape to the targetShape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you are trying to find the closest point to.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> The geographic unit of the shape you are trying to find the closet point to.

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

GetCrossing(BaseShape)

This method returns the crossing points between the current shape and the passed-in target shape.

Remarks

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
MultipointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultipointShape –> This method returns the crossing points between the current shape and the passed-in target shape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The target shape you wish to get crossing points with.

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

GetDistanceTo(BaseShape, GeographyUnit, DistanceUnit)

This method computes the distance between the current shape and the targetShape.

Remarks

In this method we compute the closest distance between the two shapes. The returned unit will be in the unit of distance specified.

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
Double<!– System.Double –> The return type is the distance between this shape and the targetShape in the GeographyUnit of the shape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you are trying to find the distance to.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This parameter is the unit of the shape you are getting the distance to.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This parameter is the unit of the distance you want the return value to be in.

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

GetDistanceTo(Feature, GeographyUnit, DistanceUnit)

This method computes the distance between the current shape and the targetFeature.

Remarks

In this method we compute the closest distance between a shape and a feature. The returned unit will be in the unit of distance specified.

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
Double<!– System.Double –> The return type is the distance between this shape and the targetFeature in the GeographyUnit of the shape.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The feature you are trying to find the distance to.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This parameter is the unit of the shape which is contained in the targetFeature you are getting the distance to.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This parameter is the unit of the distance you want the return value to be in.

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

GetFeature()

Get a corresponding feature which has the same Id and BaseShape as the current shape.

Return Value

Return Type Description
Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The feature with the same Id and BaseShape as the current BaseShape, and with empty columnValues in it.

Parameters

Name Type Description

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

GetFeature(IDictionary<String, String>)

Get a corresponding feature which has the same Id and BaseShape as the current shape. Additionally, pass the specified columnValues into the returned feature.

Return Value

Return Type Description
Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The feature with the same Id and BaseShape as the current BaseShape and with empty columnValues in it, substituted with the passed-in columnValues.

Parameters

Name Type Description
columnValues IDictionary<String,String><!– System.Collections.Generic.IDictionary{System.String,System.String} –> The columnValues will be passed into returning feature.

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

GetHashCode()

Return Value

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

Parameters

Name Type Description

<!– System.Object –> Go Back

GetIntersection(AreaBaseShape)

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –>

Parameters

Name Type Description
targetShape AreaBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.AreaBaseShape –>

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

GetIntersection(Feature)

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –>

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –>

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

GetLength(GeographyUnit, DistanceUnit)

This method returns the length of the line shape.

Remarks

This is a useful method when you want to know the total length of a line-based shape. If the shape is a MultiLineShape, then the length is the sum of all of its lines.

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
Double<!– System.Double –> This overload returns the length in the unit of your choice, based on the returningUnit parameter specified.

Parameters

Name Type Description
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the GeographyUnit of the shape you are performing the operation on.
returningUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the return value. For example, if you select miles as your returningUnit, then the distance will be returned in miles.

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

GetLineOnALine(StartingPoint, Single, Single)

This method returns a BaseLineShape, based on a starting position and other factors.

Overloads

This overload allows you to pass the starting point, starting percentage of the line and percentage of the line.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This method returns a BaseLineShape, based on a starting position and other factors.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
startingPercentageOfTheLine Single<!– System.Single –> This parameter defines the starting percentage into the line. Valid values must be greater than 0 and less than or equal to 100.
percentageOfTheLine Single<!– System.Single –> This parameter defines the percentage into the line. Valid values must be greater than 0 and less than or equal to 100.

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

GetLineOnALine(StartingPoint, PointShape)

This method returns a BaseLineShape, based on a starting position and other factors.

Overloads

This overload allows you to specify the starting point and another point.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This method returns a BaseLineShape, based on a starting position and other factors.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
endPointShape PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The BaseLineShape returned will be between the startingPoint and the endPointShape specified in this parameter.

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

GetLineOnALine(StartingPoint, Single)

This method returns a BaseLineShape, based on a starting position and other factors.

Overloads

This overload allows you to pass the starting point and percentage of the line.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This method returns a BaseLineShape, based on a starting position and other factors.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
percentageOfLine Single<!– System.Single –> This parameter defines the percentage into the line. Valid values must be greater than 0 and less than or equal to 100.

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

GetLineOnALine(StartingPoint, Double, Double, GeographyUnit, DistanceUnit)

This method returns a BaseLineShape, based on a starting position and other factors.

Overloads

This overload allows you to specify the starting point along with the starting distance. This allows you to get a certain distance of the line after the starting distance.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This method returns a BaseLineShape, based on a starting position and other factors.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
startingDistance Double<!– System.Double –> The starting distance from which you will start getting the line. For example, if the line is 3 units long and you have a starting distance of 1 unit, the result will be the last two units of the line. Valid values must be greater than 0. The starting distance will be in the GeographyUnit of the shape.
distance Double<!– System.Double –> The amount of the line you want to get after the startingDistance. Valid values must be greater than 0.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the GeographyUnit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the DistanceUnit you would like to use for the distance parameter. For example, if you select miles as your distanceUnit, then the distance will be measured in miles.

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

GetLineOnALine(PointShape, PointShape)

This method returns a BaseLineShape, based on a starting position and other factors.

Overloads

This overload allows you to pass in two points to get a BaseLineShape from the original LineShape.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This method returns a BaseLineShape based on a start PointShape and an end PointShape.

Parameters

Name Type Description
startPointShape PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The startPointShape defines where you will start to get the line. If it does not stand on this LineShape, the closest point on the LineShape will be the start PointShape.
endPointShape PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The endPointShape defines where you will stop getting the line. If it does not stand on this LineShape, the closest point on the LineShape will be the end PointShape.

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

GetPointOnALine(StartingPoint, Double, GeographyUnit, DistanceUnit)

This method returns a PointShape on the line, based on a distance on the line from the first or last vertex defined in the startingPoint parameter.

Overloads

This overload allows you to pass a distance determining how far you want to move along the line using your unit of choice, as well as the option to start from the beginning or the end of the line.

Remarks

Passing in a 0 distance will return either the first or last point on the line, depending upon the value of the startingPoint parameter.

Return Value

Return Type Description
PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> This method returns a PointShape on the line, based on a distance on the line from the first or last vertex defined in the startingPoint parameter.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
distance Double<!– System.Double –> This parameter specifies the distance into the line you wish to move in the unit specified by the distanceUnit parameter. Valid values must be greater than or equal to 0.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the GeographyUnit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the DistanceUnit you would like to use for the distance parameter. For example, if you select miles as your distanceUnit, then the distance will be measured in miles.

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

GetPointOnALine(StartingPoint, Single)

This method returns a PointShape on the line, based on a percentage of the length of the line from the first or last vertex defined in the startingPoint parameter.

Overloads

This overload allows you to pass a percentage determining how far you want to move along the line, as well as the option for starting from either the beginning or the end of the line.

Remarks

If you pass 100 or 0 as the percentage of the line, it will return either the first or last vertex, depending on the value of the startingPoint argument.

Return Value

Return Type Description
PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> This method returns a PointShape on the line, based on a percentage of the length of the line from the first or last vertex defined in the startingPoint parameter.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
percentageOfLine Single<!– System.Single –> This parameter defines the percentage into the line. Valid values are between 0 and 100.

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

GetShortestLineTo(BaseShape, GeographyUnit)

This method returns the shortest LineShape between this shape and the targetShape parameter.

Remarks

This method returns a LineShape representing the shortest distance between the shape you're calling the method on and the targetShape. In some instances, based on the GeographicType or Projection, the line may not be straight. This effect is similar to what you might see on an international flight when the displayed flight path is curved.

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
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> A LineShape representing the shortest distance between the shape you're calling the method on and the targetShape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you are trying to find the distance to.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> The geographic unit of the Shape you are trying to find the distance to.

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

GetShortestLineTo(Feature, GeographyUnit)

This method returns the shortest LineShape between this shape and the targetFeature. parameter.

Remarks

This method returns a MultiLineShape representing the shortest distance between the shape you're calling the method on and the targetShape. In some instances, based on the GeographicType or Projection, the line may not be straight. This is effect is similar to what you might see on an international flight when the displayed flight path is curved.

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> A MultiLineShape representing the shortest distance between the shape you're calling the method on and the targetFeature.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The feature you are trying to find the distance to.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> The geographic unit of the feature you are trying to find the distance to.

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

GetType()

Return Value

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

Parameters

Name Type Description

<!– System.Object –> Go Back

GetWellKnownBinary(WkbByteOrder)

This method returns a byte array that represents the shape in well-known binary.

Remarks

This method returns a byte array that represents the shape in well-known binary. Well-known binary allows you to describe geometries as a binary array. Well-known binary is useful when you want to save a geometry in an efficient format using as little space as possible. An alternative to well-known binary is well-known text, which is a textual representation of a geometry object. We have methods that work with well known text as well.

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
Byte[]<!– System.Bytethinkgeo.mapsuite.windowsphonecore.lineshape –> This method returns a byte array that represents the shape in well-known binary.

Parameters

Name Type Description
byteOrder WkbByteOrder<!– ThinkGeo.MapSuite.WindowsPhoneCore.WkbByteOrder –> This parameter is the byte order used to encode the well-known binary.

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

GetWellKnownBinary()

This method returns a byte array that represents the shape in well-known binary.

Remarks

This method returns a byte array that represents the shape in well-known binary. Well-known binary allows you to describe geometries as a binary array. Well-known binary is useful when you want to save a geometry in an efficient format using as little space as possible. An alternative to well-known binary is well-known text, which is a textual representation of a geometry object. We have methods that work with well known text as well.

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
Byte[]<!– System.Bytethinkgeo.mapsuite.windowsphonecore.lineshape –> This method returns a byte array that represents the shape in well-known binary.

Parameters

Name Type Description

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

GetWellKnownText()

This method returns the well-known text representation of this shape.

Remarks

This method returns a string that represents the shape in well-known text. Well-known text allows you to describe geometries as a string of text. Well-known text is useful when you want to save a geometry in a format such as a text file, or when you simply want to cut and paste the text between other applications. An alternative to well-known text is well-known binary, which is a binary representation of a geometry object. We have methods that work with well-known binary as well. Below are some samples of what well-known text might look like for various kinds of geometries.

POINT(5 17)

LINESTRING(4 5,10 50,25 80)

POLYGON5)

MULTIPOINT(3.7 9.7,4.9 11.6)

MULTILINESTRING6)

MULTIPOLYGON7),8))

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
String<!– System.String –> This method returns a string that represents the shape in well-known text.

Parameters

Name Type Description

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

GetWellKnownType()

This method returns the well-known type for the shape.

Remarks

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
WellKnownType<!– ThinkGeo.MapSuite.WindowsPhoneCore.WellKnownType –> This method returns the well-known type for the shape.

Parameters

Name Type Description

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

Intersects(BaseShape)

This method returns if the current shape and the targetShape have at least one point in common.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape have at least one point in common.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

Intersects(Feature)

This method returns if the current shape and the targetFeature have at least one point in common.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the current shape and the targetFeature have at least one point in common.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The targetFeature you wish to compare the current one to.

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

IsClosed()

This method determines whether the line is closed, meaning that the last point and first point are the same.

Return Value

Return Type Description
Boolean<!– System.Boolean –> The return value indicating whether the line is closed.

Parameters

Name Type Description

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

IsDisjointed(BaseShape)

This method returns if the current shape and the targetShape have no points in common.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape have no points in common. 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.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

IsDisjointed(Feature)

This method returns if the current shape and the targetFeature have no points in common.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the current shape and the targetFeature have no points in common. 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.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The feature you wish to compare the current one to.

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

IsTopologicallyEqual(Feature)

This method returns if the current shape and the targetFeature are topologically equal.

Remarks

Topologically equal means that the shapes are essentially the same. For example, let's say you have a line with two points, point A and point B. You also have another line that is made up of point A, point B and point C. Point A of line one shares the same vertex as point A of line two, and point B of line one shares the same vertex as point C of line two. They are both straight lines, so point B of line two would lie on the first line. Essentially the two lines are the same, with line 2 having just one extra point. Topologically they are the same line, so this method would return true.

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
Boolean<!– System.Boolean –> This method returns if the current shape and the targetFeature are topologically equal.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The targetFeature that contains a shape you wish to compare the current one to.

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

IsTopologicallyEqual(BaseShape)

This method returns if the current shape and the targetShape are topologically equal.

Remarks

Topologically equal means that the shapes are essentially the same. For example, let's say you have a line with two points, point A and point B. You also have another line that is made up of point A, point B and point C. Point A of line one shares the same vertex as point A of line two, and point B of line one shares the same vertex as point C of line two. They are both straight lines, so point B of line two would lie on the first line. Essentially the two lines are the same, with line 2 having just one extra point. Topologically they are the same line, so this method would return true.

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
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape are topologically equal.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

IsWithin(BaseShape)

This method returns if the current shape lies within the interior of the targetShape.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the current shape lies within the interior of the targetShape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

IsWithin(Feature)

This method returns if the current shape lies within the interior of the targetFeature.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the current shape lies within the interior of the targetFeature.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The targetFeature that contains a shape you wish to compare the current one to.

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

LoadFromWellKnownData(Byte[])

This method hydrates the current shape with its data from well-known binary.

Remarks

This is used when you want to hydrate a shape based on well-known binary. You can create the shape and then load the well-known binary using this method.

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
wellKnownBinary Byte[]<!– System.Bytethinkgeo.mapsuite.windowsphonecore.lineshape –> This parameter is the well-known binary used to populate the shape.

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

LoadFromWellKnownData(String)

This method hydrates the current shape with its data from well-known text.

Remarks

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
wellKnownText String<!– System.String –> This parameter is the well-known text you will use to hydrate your object.

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

Overlaps(Feature)

This method returns if the current shape and the targetFeature share some but not all points in common.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the current shape and the targetFeature share some but not all points in common.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The targetFeature that contains a shape you wish to compare the current one to.

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

Overlaps(BaseShape)

This method returns if the current shape and the targetShape share some but not all points in common.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape share some but not all points in common.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

Register(Feature, Feature, DistanceUnit, GeographyUnit)

This method returns a BaseShape which has been registered from its original coordinate system to another based on two anchor PointShapes.

Remarks

Registering allows you to take a geometric shape generated in a planar system and attach it to the ground in a Geographic Unit.

A common scenario is integrating geometric shapes from external programs (such as CAD software or a modeling system) and placing them onto a map. You may have the schematics of a building in a CAD system and the relationship between all the points of the building are in feet. You want to then take the CAD image and attach it to where it really exists on a map. You would use the register method to do this.

Registering is also useful for scientific modeling, where software models things such as a plume of hazardous materials or the fallout from a volcano. The modeling software typically generates these models in a fictitious planar system. You would then use the register to take the abstract model and attach it to a map with real coordinates.

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
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This method returns a BaseShape which has been registered from its original coordinate system to another based on two anchor PointShapes.

Parameters

Name Type Description
fromPoint Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> This parameter is the anchor PointFeature in the coordinate of origin.
toPoint Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> This parameter is the anchor PointFeature in the coordinate of destination.
fromUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This parameter is the DistanceUnit of the coordinate of origin.
toUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This parameter is the GeographyUnit of the coordinate of destination.

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

Register(PointShape, PointShape, DistanceUnit, GeographyUnit)

This method returns a BaseShape which has been registered from its original coordinate system to another based on two anchor PointShapes.

Remarks

Registering allows you to take a geometric shape generated in a planar system and attach it to the ground in a Geographic Unit.

A common scenario is integrating geometric shapes from external programs (such as CAD software or a modeling system) and placing them onto a map. You may have the schematics of a building in a CAD system and the relationship between all the points of the building are in feet. You want to then take the CAD image and attach it to where it really exists on a map. You would use the register method to do this.

Registering is also useful for scientific modeling, where software models things such as a plume of hazardous materials or the fallout from a volcano. The modeling software typically generates these models in a fictitious planar system. You would then use the register to take the abstract model and attach it to a map with real coordinates.

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
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This method returns a BaseShape which has been registered from its original coordinate system to another based on two anchor PointShapes.

Parameters

Name Type Description
fromPoint PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> This parameter is the anchor PointShape in the coordinate of origin.
toPoint PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> This parameter is the anchor PointShape in the coordinate of destination.
fromUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This parameter is the DistanceUnit of the coordinate of origin.
toUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This parameter is the GeographyUnit of the coordinate of destination.

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

RemoveVertex(Vertex, LineShape)

<!– static –> This method removes the selected vertex from line shape.

Return Value

Return Type Description
Boolean<!– System.Boolean –> If remove sucess it will return true, otherwise return false.

Parameters

Name Type Description
selectedVertex Vertex<!– ThinkGeo.MapSuite.WindowsPhoneCore.Vertex –> The selected vertex must be a vertex of line shape, otherwise it will return false and line shape will keep the same.
lineShape LineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineShape –> The line shape will be removed one vertex.

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

RemoveVertex(Vertex)

This method removes the selected vertex from line shape.

Return Value

Return Type Description
Boolean<!– System.Boolean –> If remove sucess it will return true, otherwise return false.

Parameters

Name Type Description
selectedVertex Vertex<!– ThinkGeo.MapSuite.WindowsPhoneCore.Vertex –> The selected vertex must be a vertex of line shape, otherwise it will return false and line shape will keep the same.

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

ReversePoints()

This method reverses the order of the points in the line.

Return Value

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

Parameters

Name Type Description

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

Rotate(BaseShape, PointShape, Single)

<!– static –> This method returns a shape rotated by a number of degrees based on a pivot point.

Remarks

This method returns a shape rotated by a number of degrees based on a pivot point. By placing the pivot point in the center of the shape you can achieve in-place rotation. By moving the pivot point outside of the center of the shape you can translate the shape in a circular motion. Moving the pivot point further outside of the center will make the circular area larger.

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
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This method returns a shape rotated by a number of degrees based on a pivot point.

Parameters

Name Type Description
sourceBaseShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This parameter is the basis for the rotation.
pivotPoint PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The pivotPoint represents the center of rotation.
degreeAngle Single<!– System.Single –> The number of degrees of rotation required, from 0 to 360.

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

Rotate(PointShape, Single)

This method rotates a shape a number of degrees based on a pivot point.

Remarks

This method returns a shape rotated by a number of degrees based on a pivot point. By placing the pivot point in the center of the shape you can achieve in-place rotation. By moving the pivot point outside of the center of the shape you can translate the shape in a circular motion. Moving the pivot point further outside of the center will make the circular area larger.

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
pivotPoint PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The pivotPoint represents the center of rotation.
degreeAngle Single<!– System.Single –> The number of degrees of rotation required, from 0 to 360.

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

Rotate(Feature, PointShape, Single)

<!– static –> This method returns a feature rotated by a number of degrees based on a pivot point.

Remarks

This method returns a feature rotated by a number of degrees based on a pivot point. By placing the pivot point in the center of the feature you can achieve in-place rotation. By moving the pivot point outside of the center of the feature you can translate the feature in a circular motion. Moving the pivot point further outside of the center will make the circular area larger.

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
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This method returns a shape rotated by a number of degrees based on a pivot point.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> This parameter is the basis for the rotation.
pivotPoint PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The pivotPoint represents the center of rotation.
degreeAngle Single<!– System.Single –> The number of degrees of rotation required, from 0 to 360.

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

ScaleDown(Feature, Double)

<!– static –> This method returns a new feature that is decreases by the percentage given in the percentage parameter.

Remarks

This method is useful when you would like to decrease the size of the feature. Note that a larger percentage will scale the shape down faster as you apply the operation multiple times. There is also a ScaleUp method that will enlarge the shape as well.

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 your needs. If you have questions about this please contact support as we would be happy to work with you on extending our framework.

Return Value

Return Type Description
Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> a scaled down line type feature.

Parameters

Name Type Description
sourceLine Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> This parameter is the basis for the scale up up but is not modified.
percentage Double<!– System.Double –> This is the percentage by which to decrease the shape’s size.

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

ScaleDown(Double)

This method decreases the size of the LineShape by the percentage given in the percentage parameter.

Remarks

This method is useful when you would like to decrease the size of the shape. Note that a larger percentage will scale the shape down faster as you apply the operation multiple times. There is also a ScaleUp method that will enlarge the shape as well.

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 your needs. If you have questions about this please contact support 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
percentage Double<!– System.Double –> This is the percentage by which to decrease the shape’s size.

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

ScaleDown(LineBaseShape, Double)

<!– static –> This method returns a new shape that is decreases by the percentage given in the percentage parameter.

Remarks

This method is useful when you would like to decrease the size of the shape. Note that a larger percentage will scale the shape down faster as you apply the operation multiple times. There is also a ScaleUp method that will enlarge the shape as well.

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 your needs. If you have questions about this please contact support as we would be happy to work with you on extending our framework.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> a scaled down line type shape.

Parameters

Name Type Description
sourceLineBaseShape LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This parameter is the basis for the scale up up but is not modified.
percentage Double<!– System.Double –> This is the percentage by which to decrease the shape’s size.

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

ScaleTo(Double)

Return Value

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

Parameters

Name Type Description
scale Double<!– System.Double –>

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

ScaleTo(BaseShape, Double)

<!– static –>

Return Value

Return Type Description
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –>

Parameters

Name Type Description
baseShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –>
scale Double<!– System.Double –>

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

ScaleUp(Double)

This method increases the size of the LineShape by the percentage given in the percentage parameter.

Remarks

This method is useful when you would like to increase the size of the shape. Note that a larger percentage will scale the shape up faster as you apply the operation multiple times. There is also a ScaleDown method that will shrink the shape as well.

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 your needs. If you have questions about this please contact support 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
percentage Double<!– System.Double –> This is the percentage by which to increase the shape’s size.

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

ScaleUp(LineBaseShape, Double)

<!– static –> This method returns a new shape that is increased by the percentage given in the percentage parameter.

Remarks

This method is useful when you would like to increase the size of the shape. Note that a larger percentage will scale the shape up faster as you apply the operation multiple times. There is also a ScaleDown method that will shrink the shape as well.

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 your needs. If you have questions about this please contact support as we would be happy to work with you on extending our framework.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> a scaled line type shape.

Parameters

Name Type Description
sourceShape LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This parameter is the basis for the scale up up but is not modified.
percentage Double<!– System.Double –> This is the percentage by which to increase the shape’s size.

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

ScaleUp(Feature, Double)

<!– static –> This method returns a new feature that is increased by the percentage given in the percentage parameter.

Remarks

This method is useful when you would like to increase the size of the feature. Note that a larger percentage will scale the shape up faster as you apply the operation multiple times. There is also a ScaleDown method that will shrink the shape as well.

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 your needs. If you have questions about this please contact support as we would be happy to work with you on extending our framework.

Return Value

Return Type Description
Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> a scaled line type feature.

Parameters

Name Type Description
sourceLine Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> This parameter is the basis for the scale up up but is not modified.
percentage Double<!– System.Double –> This is the percentage by which to increase the shape’s size.

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

Simplify(LineBaseShape, Double, SimplificationType)

<!– static –> Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Parameters

Name Type Description
targetShape LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> target shape which will be simplified.
tolerance Double<!– System.Double –> distance tolerance
simplificationType SimplificationType<!– ThinkGeo.MapSuite.WindowsPhoneCore.SimplificationType –> Specifies which algorthm will be use to simplify.

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

Simplify(LineBaseShape, GeographyUnit, Double, DistanceUnit, SimplificationType)

<!– static –> Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Parameters

Name Type Description
targetShape LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> target shape which will be simplified.
targetShapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> the geography unit of the target shape
tolerance Double<!– System.Double –> distance tolerance
toleranceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> the distance unit of tolerance
simplificationType SimplificationType<!– ThinkGeo.MapSuite.WindowsPhoneCore.SimplificationType –> Specifies which algorthm will be use to simplify.

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

Simplify(GeographyUnit, Double, DistanceUnit, SimplificationType)

Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Parameters

Name Type Description
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> the geography unit of the target shape
tolerance Double<!– System.Double –> distance tolerance
toleranceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> the distance unit of tolerance
simplificationType SimplificationType<!– ThinkGeo.MapSuite.WindowsPhoneCore.SimplificationType –> Specifies which algorthm will be use to simplify.

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

Simplify(Double, SimplificationType)

Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Parameters

Name Type Description
tolerance Double<!– System.Double –> distance tolerance
simplificationType SimplificationType<!– ThinkGeo.MapSuite.WindowsPhoneCore.SimplificationType –> Specifies which algorthm will be use to simplify.

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

ToString()

Return Value

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

Parameters

Name Type Description

<!– System.Object –> Go Back

Touches(BaseShape)

This method returns if the current shape and the targetShape have at least one boundary point in common, but no interior points.

Remarks

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
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape have at least one boundary point in common, but no interior points.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

Touches(Feature)

This method returns of the current shape and the targetFeature have at least one boundary point in common, but no interior points.

Remarks

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
Boolean<!– System.Boolean –> This method returns of the current shape and the targetFeature have at least one boundary point in common, but no interior points.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> The targetFeature which contains a shape that you wish to compare the current one to.

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

TranslateByDegree(Double, Double, GeographyUnit, DistanceUnit)

This method moves a base shape from one location to another based on a distance and a direction in degrees.

Remarks

This method moves a base shape from one location to another based on angleInDegrees and distance parameter. With this overload, it is important to note that the distance is based on the supplied distanceUnit parameter. For example, if your shape is in decimal degrees and you call this method with a distanceUnit of miles, you're going to move this shape a number of miles based on the distance value and the angleInDegrees. In this way, you can easily move a shape in decimal degrees five miles to the north.

If you pass a distance of 0, then the operation is ignored.

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
distance Double<!– System.Double –> The distance is the number of units to move the shape using the angle specified. The distance unit will be the DistanceUnit specified in the distanceUnit parameter. The distance must be greater than or equal to 0.
angleInDegrees Double<!– System.Double –> A number between 0 and 360 degrees that represents the direction you wish to move the shape, with 0 being up.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the DistanceUnit you would like to use as the measure of the translate. For example if you select miles as your distanceUnit then the distance will be calculated in miles.

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

TranslateByDegree(Feature, Double, Double, GeographyUnit, DistanceUnit)

<!– static –> This method returns a feature repositioned from one location to another, based on a distance and a direction in degrees.

Remarks

This method returns a feature repositioned from one location to another based on angleInDegrees and distance parameter. With this overload, it is important to note that the distance is based on the supplied distanceUnit parameter. For example, if your shape is in decimal degrees and you call this method with a distanceUnit of miles, you're going to move this feature a number of miles based on the distance value and the angleInDegrees. In this way, you can easily move a shape in decimal degrees five miles to the north.

If you pass a distance of 0, then the operation is ignored.

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
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This method returns a feature repositioned from one location to another, based on a distance and a direction in degrees.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> This parameter is the basis of the move.
distance Double<!– System.Double –> The distance is the number of units to move the shape using the angle specified. The distance unit will be the DistanceUnit specified in the distanceUnit parameter. The distance must be greater than or equal to 0.
angleInDegrees Double<!– System.Double –> A number between 0 and 360 degrees that represents the direction you wish to move the feature, with 0 being up.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the measure for the move. For example, if you select miles as your distance unit, then the distance will be calculated in miles.

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

TranslateByDegree(Double, Double)

This method moves a base shape from one location to another based on a distance and a direction in degrees.

Remarks

This method moves a base shape from one location to another based on angleInDegrees and distance parameter. With this overload, it is important to note that the distance is based on the supplied distanceUnit parameter. For example, if your shape is in decimal degrees and you call this method with a distanceUnit of miles, you're going to move this shape a number of miles based on the distance value and the angleInDegrees. In this way, you can easily move a shape in decimal degrees five miles to the north.

If you pass a distance of 0, then the operation is ignored.

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
distance Double<!– System.Double –> The distance is the number of units to move the shape using the angle specified. The distance unit will be the DistanceUnit specified in the distanceUnit parameter. The distance must be greater than or equal to 0.
angleInDegrees Double<!– System.Double –> A number between 0 and 360 degrees that represents the direction you wish to move the shape, with 0 being up.

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

TranslateByDegree(BaseShape, Double, Double, GeographyUnit, DistanceUnit)

<!– static –> This method returns a shape repositioned from one location to another based on a distance and a direction in degrees.

Remarks

This method returns a shape repositioned from one location to another based on angleInDegrees and distance parameter. With this overload, it is important to note that the distance is based on the supplied distanceUnit parameter. For example, if your shape is in decimal degrees and you call this method with a distanceUnit of miles, you're going to move this shape a number of miles based on the distance value and the angleInDegrees. In this way, you can easily move a shape in decimal degrees five miles to the north.

If you pass a distance of 0, then the operation is ignored.

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
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This method returns a shape repositioned from one location to another based on a distance and a direction in degrees.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This parameter is the basis of the move.
distance Double<!– System.Double –> The distance is the number of units to move the shape using the angle specified. The distance unit will be the one specified in the distanceUnit parameter. The distance must be greater than or equal to 0.
angleInDegrees Double<!– System.Double –> A number between 0 and 360 degrees that represents the direction you wish to move the shape, with 0 being up.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the measure for the move. For example, if you select miles as your distance unit, then the distance will be calculated in miles.

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

TranslateByOffset(BaseShape, Double, Double, GeographyUnit, DistanceUnit)

<!– static –> This method returns a shape repositioned from one location to another based on an X and Y offset distance.

Remarks

This method returns a shape repositioned from one location to another based on an X and Y offset distance. With this overload, it is important to note that the X and Y offset units are based on the distanceUnit parameter. For example, if your shape is in decimal degrees and you call this method with an X offset of 1 and a Y offset of 1, you're going to move this shape one unit of the distanceUnit in the horizontal direction and one unit of the distanceUnit in the vertical direction. In this way, you can easily move a shape in decimal degrees five miles on the X axis and 3 miles on the Y axis.

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
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This method returns a shape repositioned from one location to another based on an X and Y offset distance.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This parameter is the basis of the moved shape.
xOffsetDistance Double<!– System.Double –> This is the number of horizontal units of movement in the distance unit specified in the distanceUnit parameter.
yOffsetDistance Double<!– System.Double –> This is the number of vertical units of movement in the distance unit specified in the distanceUnit parameter.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the measure for the move. For example, if you select miles as your distance unit, then the xOffsetDistance and yOffsetDistance will be calculated in miles.

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

TranslateByOffset(Double, Double)

Return Value

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

Parameters

Name Type Description
xOffsetDistance Double<!– System.Double –>
yOffsetDistance Double<!– System.Double –>

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

TranslateByOffset(Double, Double, GeographyUnit, DistanceUnit)

This method moves a base shape from one location to another based on an X and Y offset distance.

Remarks

This method moves a base shape from one location to another based on an X and Y offset distance. With this overload, it is important to note that the X and Y offset units are based on the distanceUnit parameter. For example, if your shape is in decimal degrees and you call this method with an X offset of 1 and a Y offset of 1, you're going to move this shape one unit of the distanceUnit in the horizontal direction and one unit of the distanceUnit in the vertical direction. In this way, you can easily move a shape in decimal degrees five miles on the X axis and 3 miles on the Y axis.

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
xOffsetDistance Double<!– System.Double –> This is the number of horizontal units of movement in the distance unit specified in the distanceUnit parameter.
yOffsetDistance Double<!– System.Double –> This is the number of horizontal units of movement in the distance unit specified in the distanceUnit parameter.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the base shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the measure for the move. For example, if you select miles as your distance unit, then the xOffsetDistance and yOffsetDistance will be calculated in miles.

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

TranslateByOffset(Feature, Double, Double, GeographyUnit, DistanceUnit)

<!– static –> This method returns a feature repositioned from one location to another based on an X and Y offset distance.

Remarks

This method returns a feature repositioned from one location to another based on an X and Y offset distance. With this overload, it is important to note that the X and Y offset units are based on the distanceUnit parameter. For example, if your shape is in decimal degrees and you call this method with an X offset of 1 and a Y offset of 1, you're going to move this shape one unit of the distanceUnit in the horizontal direction and one unit of the distanceUnit in the vertical direction. In this way, you can easily move a shape in decimal degrees five miles on the X axis and 3 miles on the Y axis.

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
Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> This method returns a feature repositioned from one location to another based on an X and Y offset distance.

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –> This parameter is the basis of the moved feature.
xOffsetDistance Double<!– System.Double –> This is the number of horizontal units of movement in the distance unit specified in the distanceUnit parameter.
yOffsetDistance Double<!– System.Double –> This is the number of horizontal units of movement in the distance unit specified in the distanceUnit parameter.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the measure for the move. For example, if you select miles as your distance unit, then the xOffsetDistance and yOffsetDistance will be calculated in miles.

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

Union(Feature)

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –>

Parameters

Name Type Description
targetFeature Feature<!– ThinkGeo.MapSuite.WindowsPhoneCore.Feature –>

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

Union(LineBaseShape)

Calculates a new geometry that contains all the points in this LineBaseShape and input LineBaseShape

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> A set combining the points of this LineBaseShape and the points of input LineBaseShape.

Parameters

Name Type Description
targetShape LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> The target LineBasheShape with which to compute the union

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

Union(IEnumerable<LineBaseShape>)

<!– static –> Calculates a new geometry that contains all the points in this LineBaseShape and input LineBaseShape set.

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> A set combining the points of this LineBaseShape and the points of input LineBaseShape set.

Parameters

Name Type Description
lineBaseShapes IEnumerable<LineBaseShape><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape} –>

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

Union(IEnumerable<Feature>)

<!– static –>

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –>

Parameters

Name Type Description
targetFeatures IEnumerable<Feature><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.Feature} –>

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

Validate(ShapeValidationMode)

This method returns a ShapeValidationResult based on a series of tests.

Remarks

We use this method, with the simple enumeration, internally before doing any kind of other methods on the shape. In this way, we are able to verify the integrity of the shape itself. If you wish to test things such as whether a polygon self-intersects, we invite you to call this method with the advanced ShapeValidationMode. One thing to consider is that for complex polygon shapes this operation could take some time, which is why we only run the basic, faster test. If you are dealing with polygon shapes that are suspect, we suggest you run the advanced test.

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
ShapeValidationResult<!– ThinkGeo.MapSuite.WindowsPhoneCore.ShapeValidationResult –> This method returns a ShapeValidationResult based on a series of tests.

Parameters

Name Type Description
validationMode ShapeValidationMode<!– ThinkGeo.MapSuite.WindowsPhoneCore.ShapeValidationMode –> This parameter determines whether the test is simple or advanced. In some cases, the advanced tests can take some time. The simple test is designed to always be fast.

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

Protected Methods

BufferCore(Double, Int32, BufferCapType, GeographyUnit, DistanceUnit)

This method computes the area containing all of the points within a given distance from this shape.

Remarks

This method computes the area containing all of the points within a given distance from this shape. In this case, you will be using the rounded RoundedBufferCapStyle and the default 8 quadrant segments. The distance unit is determined by the distanceUnit argument.

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
MultipolygonShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultipolygonShape –> The return type is a MultiPolygonShape that represents all of the points within a given distance from the shape.

Parameters

Name Type Description
distance Double<!– System.Double –> The distance is the number of units to buffer the current shape. The distance unit will be the one specified in the distanceUnit paramater. The distance must be greater than 0.
quadrantSegments Int32<!– System.Int32 –> The number of quadrantSegments used in the buffer logic.
bufferCapType BufferCapType<!– ThinkGeo.MapSuite.WindowsPhoneCore.BufferCapType –> The bufferCapType used in the buffer logic.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the geographic unit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the distance unit you would like to use as the distance. For example, if you select miles as your distanceUnit, then the distance will be calculated in miles for the operation.

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

CloneDeepCore()

This method returns a complete copy of the shape without any references in common.

Remarks

When you override this method, you need to ensure that there are no references in common between the original and the copy.

Return Value

Return Type Description
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> This method returns a complete copy of the shape without any references in common.

Parameters

Name Type Description

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

ContainsCore(BaseShape)

This method returns if the targetShape lies within the interior of the current shape.

Remarks

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the targetShape lies within the interior of the current shape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

ConvexHullCore()

This method returns the convex hull of the shape defined as the smallest convex ring that contains all the points in the shape.

Remarks

This method is useful when you want to create a perimeter around the shape. For example, if you had a MultiPolygon that represented buildings on a campus, you could easily get the convex hull of the buildings and determine the perimeter of all of the buildings together. This also works with MultiPoint shapes, where each point may represent a certain type of person you are doing statistics on. With convex hull, you can get an idea of the regions those points are located in.

Return Value

Return Type Description
RingShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.RingShape –> This method returns a RingShape defined as the smallest convex ring that contains all the points in the shape.

Parameters

Name Type Description

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

CrossesCore(BaseShape)

This method returns if the current shape and the targetShape share some but not all interior points.

Remarks

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape share some but not all interior points.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

Finalize()

Return Value

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

Parameters

Name Type Description

<!– System.Object –> Go Back

GetBoundingBoxCore()

This method calculates the smallest RectangleShape that encompasses the entire geometry.

Remarks

The GetBoundingBox method calculates the smallest RectangleShape that can encompass the entire geometry by examining each point in the geometry.

Depending on the number of PointShapes and complexity of the geometry this operation can take longer for larger objects.

If the shape is a PointShape, than the bounding box's upper left and lower right points will be equal. This will create a RectangleShape with no area.

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
RectangleShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.RectangleShape –> The RectangleShape returned is the smallest RectangleShape that can encompass the entire geometry.

Parameters

Name Type Description

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

GetCenterPointCore()

This method returns the center point of the current shape's bounding box.

Remarks

This method returns the center point of the current shape's bounding box. It is important to note that this is the center point of the bounding box. There are numerous ways to calculate the “center” of a geometry, such as its weighted center, etc. You can find other centers by examining the various methods of the shape itself.

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> A PointShape representing the center point of the current shape's bounding box.

Parameters

Name Type Description

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

GetClosestPointToCore(BaseShape, GeographyUnit)

This method returns the point of the current shape that is closest to the target shape.

Remarks

This method returns the point of the current shape that is closest to the target shape. It is often the case that the point returned is not a point of the object itself. An example would be a line with two points that are far apart from each other. If you set the targetShape to be a point midway between the points but a short distance away from the line, the method would return a point that is on the line but not either of the two points that make up the line.

Return Value

Return Type Description
PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> A PointShape representing the closest point of the current shape to the targetShape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you are trying to find the closest point to.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the GeographyUnit of the shape you are performing the operation on.

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

GetCrossingCore(BaseShape)

This method returns the crossing points between the current shape and the passed-in target shape.

Remarks

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
MultipointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultipointShape –> This method returns the crossing points between the current shape and the passed-in target shape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The target shape you wish to get crossing with.

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

GetDistanceToCore(BaseShape, GeographyUnit, DistanceUnit)

This method computes the distance between the current shape and the targetShape.

Overloads

The distance returned will be in the unit of the shape.

Remarks

In this method, we compute the closest distance between the two shapes. The returned unit will be in the unit of distance specified.

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
Double<!– System.Double –> The return type is the distance between this shape and the targetShape in the GeographyUnit of the shape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you are trying to find the distance to.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the GeographicUnit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the DistanceUnit you would like to use as the return value. For example, if you select miles as your distanceUnit, then the distance will be returned in miles.

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

GetIntersectionCore(AreaBaseShape)

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –>

Parameters

Name Type Description
targetShape AreaBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.AreaBaseShape –>

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

GetLengthCore(GeographyUnit, DistanceUnit)

This method returns the length of the LineShape.

Overloads

This overload returns the length in the unit of your choice, based on returningUnit you specify.

Remarks

This is a useful method when you want to know the total length of a line-based shape. If the shape is a MultiLineShape, then the length is the sum of all of its lines.

Return Value

Return Type Description
Double<!– System.Double –> This overload returns the length in the unit of your choice, based on returningUnit you specify.

Parameters

Name Type Description
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the GeographyUnit of the shape you are performing the operation on.
returningUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the DistanceUnit you would like to use as the return value. For example, if you select miles as your returningUnit, then the distance will be returned in miles.

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

GetLineOnALineCore(StartingPoint, Single)

This method returns a BaseLineShape, based on a starting position and other factors.

Overloads

This overload allows you to pass the starting point and percentage of the line.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This method returns a BaseLineShape, based on a starting position and other factors.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
percentageOfLine Single<!– System.Single –> This parameter defines the percentage into the line. Valid values must be greater than 0 and less than or equal to 100.

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

GetLineOnALineCore(StartingPoint, Double, Double, GeographyUnit, DistanceUnit)

This method returns a BaseLineShape, based on a starting position and other factors.

Overloads

This overload allows you to specify the starting point along with the starting distance. This allows you to get a certain distance of the line after the starting distance.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This method returns a BaseLineShape, based on a starting position and other factors.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
startingDistance Double<!– System.Double –> The starting distance from which you will start getting the line. For example, if the line is 3 units long and you have a starting distance of 1 unit, the result will be the last two units of the line. Valid values must be greater than 0. The starting distance will be in the GeographyUnit of the shape.
distance Double<!– System.Double –> The amount of the line you want to get after the startingDistance. Valid values must be greater than 0.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the GeographyUnit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the DistanceUnit you would like to use for the distance parameter. For example, if you select miles as your distanceUnit, then the distance will be measured in miles.

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

GetLineOnALineCore(PointShape, PointShape)

This method returns a BaseLineShape, based on a starting position and other factors.

Overloads

This overload allows you to pass in two points to get a BaseLineShape from the original LineShape.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This method returns a BaseLineShape based on a start PointShape and an end PointShape.

Parameters

Name Type Description
startPointShape PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The startPointShape defines where you will start to get the line. If it does not stand on this LineShape, the closest point on the LineShape will be the start PointShape.
endPointShape PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The endPointShape defines where you will stop getting the line. If it does not stand on this LineShape, the closest point on the LineShape will be the end PointShape.

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

GetLineOnALineCore(StartingPoint, PointShape)

This method returns a BaseLineShape, based on a starting position and other factors.

Overloads

This overload allows you to specify the starting point and another point.

Return Value

Return Type Description
LineBaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape –> This method returns a BaseLineShape, based on a starting position and other factors.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
endPointShape PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The BaseLineShape returned will be between the startingPoint and the endPointShape specified in this parameter.

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

GetPointOnALineCore(StartingPoint, Single)

This method returns a PointShape on the line, based on a percentage of the length of the line from the first or last vertex defined in the startingPoint parameter.

Overloads

This overload allows you to pass a percentage determining how far you want to move along the line, as well as the option for starting from either the beginning or the end of the line.

Remarks

If you pass 100 or 0 as the percentage of the line, it will return either the first or last vertex, depending on the value of the startingPoint argument.

Return Value

Return Type Description
PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> This method returns a PointShape on the line, based on a percentage of the length of the line from the first or last vertex defined in the startingPoint parameter.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
percentageOfLine Single<!– System.Single –> This parameter defines the percentage into the line. Valid values are between 0 and 100.

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

GetPointOnALineCore(StartingPoint, Double, GeographyUnit, DistanceUnit)

This method returns a PointShape on the line, based on a distance on the line from the first or last vertex defined in the startingPoint parameter.

Overloads

This overload allows you to pass a distance determining how far you want to move along the line using your unit of choice, as well as the option to start from the beginning or the end of the line.

Remarks

Passing in a 0 distance will return either the first or last point on the line, depending on the value of the startingPoint parameter.

Return Value

Return Type Description
PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> This method returns a PointShape on the line, based on a distance on the line from the first or last vertex defined in the startingPoint parameter.

Parameters

Name Type Description
startingPoint StartingPoint<!– ThinkGeo.MapSuite.WindowsPhoneCore.StartingPoint –> The startingPoint defines whether the method starts at the beginning or the end of the line.
distance Double<!– System.Double –> This parameter specifies the distance into the line you wish to move in the unit specified by the distanceUnit parameter. Valid values must be greater than or equal to 0.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the GeographyUnit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the DistanceUnit you would like to use for the distance parameter. For example, if you select miles as your distanceUnit, then the distance will be measured in miles.

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

GetShortestLineToCore(BaseShape, GeographyUnit)

This method returns the shortest LineShape between this shape and the targetShape parameter.

Remarks

This method returns a LineShape representing the shortest distance between the shape you're calling the method on and the targetShape. In some instances, based on the GeographicType or Projection, the line may not be straight. This is effect is similar to what you might see on an international flight when the displayed flight path is curved.

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> A LineShape representing the shortest distance between the shape you're calling the method on and the targetShape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you are trying to find the distance to.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> The geographic unit of the shape you are trying to find the distance to.

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

GetWellKnownBinaryCore(WkbByteOrder)

This method returns a byte array that represents the shape in well-known binary.

Remarks

This method returns a byte array that represents the shape in well-known binary. Well-known binary allows you to describe a geometry as a binary array. Well-known binary is useful when you want to save a geometry in an efficient format using as little space as possible. An alternative to well-known binary is well-known text, which is a textual representation of a geometry object. We have methods that work with well-known text as well.

Return Value

Return Type Description
Byte[]<!– System.Bytethinkgeo.mapsuite.windowsphonecore.lineshape –> This method returns a byte array that represents the shape in well-known binary.

Parameters

Name Type Description
byteOrder WkbByteOrder<!– ThinkGeo.MapSuite.WindowsPhoneCore.WkbByteOrder –> This parameter specifies whether the byte order is big- or little-endian.

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

GetWellKnownTextCore()

This method returns the well-known text representation of this shape.

Remarks

This method returns a string that represents the shape in well-known text. Well-known text allows you to describe a geometry as a string of text. Well-known text is useful when you want to save a geometry in a format such as a text file, or when you simply want to cut and paste the text between other applications. An alternative to well-known text is well-known binary, which is a binary representation of a geometry object. We have methods that work with well-known binary as well. Below are some samples of what well-known text might look like for various kinds of geometric figures.

POINT(5 17)

LINESTRING(4 5,10 50,25 80)

POLYGON9)

MULTIPOINT(3.7 9.7,4.9 11.6)

MULTILINESTRING10)

MULTIPOLYGON11),12))

Return Value

Return Type Description
String<!– System.String –> This method returns a string that represents the shape in well-known text.

Parameters

Name Type Description

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

GetWellKnownTypeCore()

This method returns the well-known type for the shape.

Return Value

Return Type Description
WellKnownType<!– ThinkGeo.MapSuite.WindowsPhoneCore.WellKnownType –> This method returns the well-known type for the shape.

Parameters

Name Type Description

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

IntersectsCore(BaseShape)

This method returns if the current shape and the targetShape have at least one point in common.

Remarks

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape have at least one point in common.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

IsClosedCore()

This method determines whether the line is closed, meaning that the last point and first point are the same.

Return Value

Return Type Description
Boolean<!– System.Boolean –> The return value indicating whether the line is closed.

Parameters

Name Type Description

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

IsDisjointedCore(BaseShape)

This method returns if the current shape and the targetShape have no points in common.

Remarks

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape have no points in common.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

IsTopologicallyEqualCore(BaseShape)

This method returns if the current shape and the targetShape are topologically equal.

Remarks

Topologically equal means that the shapes are essentially the same. For example, let's say you have a line with two points, point A and point B. You also have another line that is made up of point A, point B and point C. Point A of line one shares the same vertex as point A of line two, and point B of line one shares the same vertex as point C of line two. They are both straight lines, so point B of line two would lie on the first line. Essentially the two lines are the same, with line 2 having just one extra point. Topologically they are the same line, so this method would return true.

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape are topologically equal.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

IsWithinCore(BaseShape)

This method returns if the current shape lies within the interior of the targetShape.

Remarks

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the current shape lies within the interior of the targetShape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

LoadFromWellKnownDataCore(String)

This method hydrates the current shape with its data from well-known text.

Return Value

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

Parameters

Name Type Description
wellKnownText String<!– System.String –> This parameter is the well-known text you will use to hydrate your object.

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

LoadFromWellKnownDataCore(Byte[])

This method hydrates the current shape with its data from well-known binary.

Remarks

This is used when you want to hydrate a shape based on well-known binary. You can create the shape and then load the well-known binary using this method.

Return Value

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

Parameters

Name Type Description
wellKnownBinary Byte[]<!– System.Bytethinkgeo.mapsuite.windowsphonecore.lineshape –> This parameter is the well-known binary used to populate the shape.

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

MemberwiseClone()

Return Value

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

Parameters

Name Type Description

<!– System.Object –> Go Back

OverlapsCore(BaseShape)

This method returns if the current shape and the targetShape share some but not all points in common.

Remarks

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape share some but not all points in common.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

RegisterCore(PointShape, PointShape, DistanceUnit, GeographyUnit)

Return Value

Return Type Description
BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –>

Parameters

Name Type Description
fromPoint PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –>
toPoint PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –>
fromUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –>
toUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –>

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

ReversePointsCore()

This method reverses the order of the points in the line.

Return Value

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

Parameters

Name Type Description

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

RotateCore(PointShape, Single)

This method rotates the shape a number of degrees based on a pivot point.

Remarks

This method rotates the shape a number of degrees based on a pivot point. By placing the pivot point in the center of the shape, you can achieve in-place rotation. By moving the pivot point outside of the center of the shape, you can translate the shape in a circular motion. Moving the pivot point further outside of the center will make the circular area larger.

Return Value

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

Parameters

Name Type Description
pivotPoint PointShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.PointShape –> The pivotPoint represents the center of rotation.
degreeAngle Single<!– System.Single –> The number of degrees of rotation required from 0 to 360.

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

ScaleDownCore(Double)

This method decreases the size of the LineShape by the percentage given in the percentage parameter.

Remarks

This method is useful when you would like to decrease the size of the shape. Note that a larger percentage will scale the shape down faster, as you are applying the operation multiple times. There is also a ScaleUp method that will enlarge the shape.

Return Value

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

Parameters

Name Type Description
percentage Double<!– System.Double –> This is the percentage by which to decrease the shape's size.

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

ScaleToCore(Double)

Return Value

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

Parameters

Name Type Description
scale Double<!– System.Double –>

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

ScaleUpCore(Double)

This method increases the size of the LineShape by the percentage given in the percentage parameter.

Remarks

This method is useful when you would like to increase the size of the shape. Note that a larger percentage will scale the shape up faster, as you are applying the operation multiple times. There is also a ScaleDown method that will shrink the shape.

Return Value

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

Parameters

Name Type Description
percentage Double<!– System.Double –> This is the percentage by which to increase the shape's size.

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

SimplifyCore(Double, SimplificationType)

Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> Simplify the LineBaseShape to MultilineShape depends on distance tolerance and different SimplificationType.

Parameters

Name Type Description
tolerance Double<!– System.Double –> distance tolerance
simplificationType SimplificationType<!– ThinkGeo.MapSuite.WindowsPhoneCore.SimplificationType –> Specifies which algorthm will be use to simplify.

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

TouchesCore(BaseShape)

This method returns if the current shape and the targetShape have at least one boundary point in common, but no interior points.

Remarks

Overriding:

Please ensure that you validate the parameters being passed in and raise the exceptions defined above.

Return Value

Return Type Description
Boolean<!– System.Boolean –> This method returns if the current shape and the targetShape have at least one boundary point in common, but no interior points.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.BaseShape –> The shape you wish to compare the current one to.

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

TranslateByDegreeCore(Double, Double, GeographyUnit, DistanceUnit)

This method moves the base shape from one location to another based on a distance and a direction in degrees.

Overloads

In this overload, the distance unit is based on a DistanceUnit you specify in the distanceUnit parameter, regardless of the shape's GeographicUnit.

Remarks

This method returns a shape repositioned from one location to another based on angleInDegrees and distance parameter. With this overload, it is important to note that the distance is based on the supplied distanceUnit parameter. For example, if your shape is in decimal degrees and you call this method with a distanceUnit of miles, you're going to move this shape a number of miles based on the distance value and the angleInDegrees. In this way, you can easily move a shape in decimal degrees five miles to the north.

If you pass a distance of 0, then the operation is ignored.

Return Value

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

Parameters

Name Type Description
distance Double<!– System.Double –> The distance is the number of units to move the shape using the angle specified. The distance unit will be the one specified in the distanceUnit parameter. The distance must be greater than or equal to 0.
angleInDegrees Double<!– System.Double –> A number between 0 and 360 degrees that represents the direction you wish to move the shape, with 0 being up.
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –> This is the GeographicUnit of the shape you are performing the operation on.
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –> This is the DistanceUnit you would like to use as the measure for the move. For example, if you select miles as your distanceUnit, then the distance will be calculated in miles.

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

TranslateByOffsetCore(Double, Double, GeographyUnit, DistanceUnit)

Return Value

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

Parameters

Name Type Description
xOffsetDistance Double<!– System.Double –>
yOffsetDistance Double<!– System.Double –>
shapeUnit GeographyUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.GeographyUnit –>
distanceUnit DistanceUnit<!– ThinkGeo.MapSuite.WindowsPhoneCore.DistanceUnit –>

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

UnionCore(IEnumerable<LineBaseShape>)

The protected virtual method used by “Union” that you can overwrite to implement your own logic.

Return Value

Return Type Description
MultilineShape<!– ThinkGeo.MapSuite.WindowsPhoneCore.MultilineShape –> A set combining the points of this LineBaseShape and the points of input LineBaseShape set.

Parameters

Name Type Description
lineBaseShapes IEnumerable<LineBaseShape><!– System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.WindowsPhoneCore.LineBaseShape} –> The target LineBasheShape set with which to compute the union

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

ValidateCore(ShapeValidationMode)

This method returns a ShapeValidationResult based on a series of tests.

Remarks

We use this method, with the simple enumeration, internally before doing any kind of other methods on the shape. In this way, we are able to verify the integrity of the shape itself. If you wish to test things such as whether a polygon self-intersects, we invite you to call this method with the advanced ShapeValidationMode. One thing to consider is that for complex polygon shapes this operation could take some time, which is why we only run the basic, faster test. If you are dealing with polygon shapes that are suspect, we suggest you run the advanced test.

Return Value

Return Type Description
ShapeValidationResult<!– ThinkGeo.MapSuite.WindowsPhoneCore.ShapeValidationResult –> This method returns a ShapeValidationResult based on a series of tests.

Parameters

Name Type Description
validationMode ShapeValidationMode<!– ThinkGeo.MapSuite.WindowsPhoneCore.ShapeValidationMode –> This parameter determines whether the test is simple or advanced. In some cases, the advanced tests can take some time. The simple test is designed to always be fast.

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

Public Properties

CanRotate

This property specifies whether the shape can be rotated.

Remarks

If this property returns false and you attempt call the rotate method, it will throw a NotImplementedException.

Return Value

Return Type
Boolean<!– System.Boolean –>

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

Id

The id of the shape.

Return Value

Return Type
String<!– System.String –>

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

Tag

The tag of the shape.

Return Value

Return Type
Object<!– System.Object –>

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

Vertices

This property is the collection of points that make up the LineShape.

Return Value

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

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

Protected Properties

Public Events

1) , 5) , 9) 2 2,6 2,6 6,2 6,2 2),(3 3,4 3,4 4,3 4,3 3
2) , 6) , 10) 4 5,11 51,21 26),(-4 -7,-9 -7,-14 -3
3) , 7) , 11) (2 2,6 2,6 6,2 6,2 2),(3 3,4 3,4 4,3 4,3 3
4) , 8) , 12) 4 4,7 3,7 5,4 4
thinkgeo.mapsuite.windowsphonecore.lineshape.txt · Last modified: 2017/03/16 21:59 (external edit)