ThinkGeo.MapSuite.Shapes.Feature
Inheritance Hierarchy
Members Summary
Public Constructors
Feature()
Parameters
Feature(BaseShape)
Parameters
Feature(Byte[])
Parameters
Feature(Byte[],String)
Parameters
Feature(String)
Parameters
Feature(String,String)
Parameters
Feature(BaseShape,IDictionary<String,String>)
Parameters
Feature(BaseShape,IEnumerable<String>)
Parameters
columnValues
Type:IEnumerable<String>
Description:N/A
Feature(String,String,IDictionary<String,String>)
Parameters
wellKnownText
Type:String
Description:N/A
id
Type:String
Description:N/A
Feature(String,String,IEnumerable<String>)
Parameters
wellKnownText
Type:String
Description:N/A
id
Type:String
Description:N/A
columnValues
Type:IEnumerable<String>
Description:N/A
Feature(Byte[],String,IEnumerable<String>)
Parameters
Feature(Byte[],String,IDictionary<String,String>)
Parameters
wellKnownBinary
Type:Byte[]
Description:N/A
id
Type:String
Description:N/A
Feature(Vertex)
Parameters
Feature(Vertex,String)
Parameters
Feature(Vertex,String,IEnumerable<String>)
Parameters
Feature(Vertex,String,IDictionary<String,String>)
Parameters
id
Type:String
Description:N/A
Feature(Double,Double)
Parameters
Feature(Double,Double,String)
Parameters
Feature(Double,Double,String,IEnumerable<String>)
Parameters
Feature(Double,Double,String,IDictionary<String,String>)
Parameters
x
Type:Double
Description:N/A
y
Type:Double
Description:N/A
id
Type:String
Description:N/A
Protected Constructors
Public Methods
GetWellKnownBinary()
Return Value
Parameters
GetWellKnownBinary(WkbByteOrder)
Return Value
Type:Byte[]
Description:N/A
Parameters
GetWellKnownBinary(RingOrder)
Return Value
Type:Byte[]
Description:N/A
Parameters
GetWellKnownBinary(RingOrder,WkbByteOrder)
Return Value
Type:Byte[]
Description:N/A
Parameters
ToString()
Return Value
Type:String
Description:N/A
Parameters
GetWellKnownType()
Return Value
Parameters
GetShape()
Return Value
Parameters
GetWellKnownText()
Return Value
Parameters
GetWellKnownText(RingOrder)
This method returns a stringthat 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)POLYGON1)MULTIPOINT(3.7 9.7,4.9 11.6)MULTILINESTRING2)MULTIPOLYGON3),4)) Overriding: Please ensure that you validate the parameters being passed in and raise the exceptions defined above.
Return Value
Parameters
GetGeoJson()
Return Value
Type:String
Description:N/A
Parameters
GetBoundingBox()
Return Value
Parameters
CloneDeep(IEnumerable<String>)
Return Value
Parameters
CloneDeep(ReturningColumnsType)
Return Value
Parameters
CloneDeep()
Return Value
Parameters
IsValid()
This method is used primarily to ensure that a Feature is valid. The reason is, since this is a structure, we cannot control the main constructor that allows you to create a Feature in an invalid state – that state being one with no well-known binary at its core. If you use the constructure set provided, then the state should always be valid. This is a property you may want to check before you work with a Feature.
Return Value
Parameters
Union(Feature)
Return Value
Parameters
Buffer(Double,GeographyUnit,DistanceUnit)
This method computes the area containing all of the points within a given distance from this feature. 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
Parameters
Buffer(Double,Int32,GeographyUnit,DistanceUnit)
This method computes the area containing all of the points within a given distance from this feature. 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
Parameters
Buffer(Double,Int32,BufferCapType,GeographyUnit,DistanceUnit)
This method computes the area containing all of the points within a given distance from this feature. 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
Parameters
Contains(Feature)
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
Parameters
Crosses(Feature)
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
Parameters
IsWithin(Feature)
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
Parameters
Intersects(Feature)
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
Parameters
IsDisjointed(Feature)
Return Value
Type:Boolean
Description:This method returns if the current feature 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
IsTopologicallyEqual(Feature)
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
Parameters
Overlaps(Feature)
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
Parameters
Touches(Feature)
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
Parameters
GetIntersection(Feature)
Return Value
Parameters
GetDifference(Feature)
Return Value
Parameters
GetConvexHull()
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
Parameters
SetWellKnownBinary(Byte[])
Return Value
Type:Void
Description:N/A
Parameters
wellKnownBinary
Type:Byte[]
Description:N/A
GetInvalidReason()
Return Value
Type:String
Description:N/A
Parameters
IsGeometryValid()
Return Value
Parameters
MakeValid()
Return Value
Parameters
Equals(Object)
Return Value
Type:Boolean
Description:N/A
Parameters
obj
Type:Object
Description:N/A
GetHashCode()
Return Value
Type:Int32
Description:N/A
Parameters
GetType()
Return Value
Type:Type
Description:N/A
Parameters
CreateFeatureFromGeoJson(String)
Return Value
Parameters
geoJson
Type:String
Description:N/A
CreateFeatureFromWellKnownData(Byte[])
Return Value
Parameters
wellKnownBinary
Type:Byte[]
Description:N/A
CreateFeatureFromWellKnownData(String)
Return Value
Parameters
wellKnownText
Type:String
Description:N/A
Union(IEnumerable<Feature>)
Return Value
Parameters
ConvertToDataTable(IEnumerable<Feature>,IEnumerable<String>)
Return Value
Parameters
Protected Methods
GetWellKnownBinaryCore(RingOrder,WkbByteOrder)
This method returns a byte array that represents the feature 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. Overriding: Please ensure that you validate the parameters being passed in and raise the exceptions defined above.
Return Value
Parameters
GetWellKnownTypeCore()
Return Value
Parameters
GetWellKnownTextCore(RingOrder)
Return Value
Type:String
Description:N/A
Parameters
GetGeoJsonCore()
Return Value
Type:String
Description:N/A
Parameters
GetBoundingBoxCore()
Return Value
Parameters
GetStartPoint()
Return Value
Parameters
GetEndPoint()
Return Value
Parameters
GetAllPoints()
Return Value
Parameters
GetShapeCore()
Return Value
Parameters
Finalize()
Return Value
Type:Void
Description:N/A
Parameters
MemberwiseClone()
Return Value
Type:Object
Description:N/A
Parameters
Public Properties
CanMakeValid
Return Value
Id
The Id is a string that represents the unique identifier for this Feature. If the feature is returned from a FeatureSource, the Id will be the unique field descriptor used by the FeatureSource. For Shape Files this may be an integer, but for spatial databases the Id may be a GUID.
Return Value
Tag
Return Value
ColumnValues
This property holds the column data related to this Feature. You can find the values in the dictionary using the column name as the key. Most methods that query and return InternalFeatures allow you to specify which columns of data you want returned with the results. You can also freely add and modify the data, as it is simply an in-memory dictionary. Any values added, deleted or updated will have no effect unless the Feature is part of a transaction.
Return Value
Protected Properties
Public Events