ThinkGeo.MapSuite.Core.TinyGeoFeatureSource
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.
This class represents a FeatureSource of TinyGeo File by ThinkGeo.
Inheritance Hierarchy
Members Summary
Public Constructors
TinyGeoFeatureSource()
Parameters
TinyGeoFeatureSource(String)
Parameters
TinyGeoFeatureSource(String,String)
Parameters
Protected Constructors
Public Methods
GetTinyGeoFileType()
Return Value
Parameters
GetBoundingBoxByIds(IEnumerable<String>)
Return Value
Parameters
ids
Type:IEnumerable<String>
Description:N/A
GetBoundingBoxesByIds(IEnumerable<String>)
Return Value
Parameters
ids
Type:IEnumerable<String>
Description:N/A
GetFirstFeaturesWellKnownType()
Return Value
Parameters
CanGetBoundingBoxQuickly()
Return Value
Type:Boolean
Description:N/A
Parameters
CanGetCountQuickly()
Return Value
Type:Boolean
Description:N/A
Parameters
GetDistinctColumnValues(String)
Return Value
Parameters
columnName
Type:String
Description:N/A
GetAllFeatures(ReturningColumnsType,Int32)
Return Value
Parameters
startIndex
Type:Int32
Description:N/A
GetAllFeatures(ReturningColumnsType,Int32,Int32)
Return Value
Parameters
startIndex
Type:Int32
Description:N/A
takeCount
Type:Int32
Description:N/A
GetAllFeatures(IEnumerable<String>,Int32,Int32)
Return Value
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
startIndex
Type:Int32
Description:N/A
takeCount
Type:Int32
Description:N/A
Close()
Return Value
Type:Void
Description:N/A
Parameters
BeginTransaction()
Return Value
Type:Void
Description:N/A
Parameters
AddFeature(Feature)
Return Value
Type:String
Description:N/A
Parameters
AddFeature(BaseShape)
Return Value
Type:String
Description:N/A
Parameters
AddFeature(BaseShape,IDictionary<String,String>)
Return Value
Type:String
Description:N/A
Parameters
DeleteFeature(String)
Return Value
Type:Void
Description:N/A
Parameters
id
Type:String
Description:N/A
UpdateFeature(Feature)
Return Value
Type:Void
Description:N/A
Parameters
UpdateFeature(BaseShape)
Return Value
Type:Void
Description:N/A
Parameters
UpdateFeature(BaseShape,IDictionary<String,String>)
Return Value
Type:Void
Description:N/A
Parameters
RollbackTransaction()
Return Value
Type:Void
Description:N/A
Parameters
CommitTransaction()
Return Value
Parameters
AddColumn(FeatureSourceColumn)
Return Value
Type:Void
Description:N/A
Parameters
DeleteColumn(String)
Return Value
Type:Void
Description:N/A
Parameters
columnName
Type:String
Description:N/A
UpdateColumn(String,FeatureSourceColumn)
Return Value
Type:Void
Description:N/A
Parameters
columnName
Type:String
Description:N/A
GetAllFeatures(IEnumerable<String>)
Return Value
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetAllFeatures(ReturningColumnsType)
Return Value
Parameters
GetFeaturesOutsideBoundingBox(RectangleShape,IEnumerable<String>)
Return Value
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesOutsideBoundingBox(RectangleShape,ReturningColumnsType)
Return Value
Parameters
GetFeaturesInsideBoundingBox(RectangleShape,IEnumerable<String>)
Return Value
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesInsideBoundingBox(RectangleShape,ReturningColumnsType)
Return Value
Parameters
GetFeaturesForDrawing(RectangleShape,Double,Double,IEnumerable<String>)
Return Value
Parameters
screenWidth
Type:Double
Description:N/A
screenHeight
Type:Double
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesForDrawing(RectangleShape,Double,Double,ReturningColumnsType)
Return Value
Parameters
screenWidth
Type:Double
Description:N/A
screenHeight
Type:Double
Description:N/A
SpatialQuery(BaseShape,QueryType,IEnumerable<String>)
Return Value
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
SpatialQuery(BaseShape,QueryType,ReturningColumnsType)
Return Value
Parameters
SpatialQuery(Feature,QueryType,IEnumerable<String>)
Return Value
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
SpatialQuery(Feature,QueryType,ReturningColumnsType)
Return Value
Parameters
GetFeaturesNearestTo(BaseShape,GeographyUnit,Int32,IEnumerable<String>)
Return Value
Parameters
maxItemsToFind
Type:Int32
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesNearestTo(BaseShape,GeographyUnit,Int32,ReturningColumnsType)
Return Value
Parameters
maxItemsToFind
Type:Int32
Description:N/A
GetFeaturesNearestTo(Feature,GeographyUnit,Int32,IEnumerable<String>)
Return Value
Parameters
maxItemsToFind
Type:Int32
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesNearestTo(Feature,GeographyUnit,Int32,ReturningColumnsType)
Return Value
Parameters
maxItemsToFind
Type:Int32
Description:N/A
GetFeaturesNearestTo(BaseShape,GeographyUnit,Int32,IEnumerable<String>,Double,DistanceUnit)
Return Value
Parameters
maxItemsToFind
Type:Int32
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
searchRadius
Type:Double
Description:N/A
GetFeaturesNearestTo(Feature,GeographyUnit,Int32,IEnumerable<String>,Double,DistanceUnit)
Return Value
Parameters
maxItemsToFind
Type:Int32
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
searchRadius
Type:Double
Description:N/A
GetFeaturesWithinDistanceOf(BaseShape,GeographyUnit,DistanceUnit,Double,IEnumerable<String>)
Return Value
Parameters
distance
Type:Double
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesWithinDistanceOf(BaseShape,GeographyUnit,DistanceUnit,Double,ReturningColumnsType)
Return Value
Parameters
distance
Type:Double
Description:N/A
GetFeaturesWithinDistanceOf(Feature,GeographyUnit,DistanceUnit,Double,IEnumerable<String>)
Return Value
Parameters
distance
Type:Double
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesWithinDistanceOf(Feature,GeographyUnit,DistanceUnit,Double,ReturningColumnsType)
Return Value
Parameters
distance
Type:Double
Description:N/A
GetFeatureById(String,IEnumerable<String>)
Return Value
Parameters
id
Type:String
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeatureById(String,ReturningColumnsType)
Return Value
Parameters
id
Type:String
Description:N/A
GetFeaturesByIds(IEnumerable<String>,IEnumerable<String>)
Return Value
Parameters
ids
Type:IEnumerable<String>
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesByIds(IEnumerable<String>,ReturningColumnsType)
Return Value
Parameters
ids
Type:IEnumerable<String>
Description:N/A
GetBoundingBoxById(String)
Return Value
Parameters
id
Type:String
Description:N/A
ExecuteNonQuery(String)
Return Value
Type:Int32
Description:N/A
Parameters
sqlStatement
Type:String
Description:N/A
GetFeaturesByColumnValue(String,String,ReturningColumnsType)
Return Value
Parameters
columnName
Type:String
Description:N/A
columnValue
Type:String
Description:N/A
GetFeaturesByColumnValue(String,String,IEnumerable<String>)
Return Value
Parameters
columnName
Type:String
Description:N/A
columnValue
Type:String
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesByColumnValue(String,String)
Return Value
Parameters
columnName
Type:String
Description:N/A
columnValue
Type:String
Description:N/A
ExecuteScalar(String)
Return Value
Type:Object
Description:N/A
Parameters
sqlStatement
Type:String
Description:N/A
ExecuteQuery(String)
Return Value
Parameters
sqlStatement
Type:String
Description:N/A
GetColumns()
Return Value
Parameters
RefreshColumns()
Return Value
Type:Void
Description:N/A
Parameters
GetCount()
Return Value
Type:Int32
Description:N/A
Parameters
GetBoundingBox()
Return Value
Parameters
CloneDeep()
Return Value
Parameters
Open()
Return Value
Type:Void
Description:N/A
Parameters
ToString()
Return Value
Type:String
Description:N/A
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
CreateTinyGeoFile(String,String,GeographyUnit,ReturningColumnsType)
Static API to create a new TinyGeo file from an existed shape file.
Return Value
Type:Void
Description:N/A
Parameters
CreateTinyGeoFile(String,String,GeographyUnit,ReturningColumnsType,Double)
Static API to create a new TinyGeo file from an existed shape file.
Return Value
Type:Void
Description:N/A
Parameters
CreateTinyGeoFile(String,String,GeographyUnit,ReturningColumnsType,String)
Static API to create a new TinyGeo file from an existed shape file.
Return Value
Type:Void
Description:N/A
Parameters
CreateTinyGeoFile(String,String,GeographyUnit,ReturningColumnsType,String,Double)
Static API to create a new TinyGeo file from an existed shape file.
Return Value
Type:Void
Description:N/A
Parameters
CreateTinyGeoFile(String,String,GeographyUnit,IEnumerable<String>)
Static API to create a new TinyGeo file from an existed shape file.
Return Value
Type:Void
Description:N/A
Parameters
CreateTinyGeoFile(String,String,GeographyUnit,IEnumerable<String>,Double)
Static API to create a new TinyGeo file from an existed shape file.
Return Value
Type:Void
Description:N/A
Parameters
CreateTinyGeoFile(String,String,GeographyUnit,IEnumerable<String>,String)
Static API to create a new TinyGeo file from an existed shape file.
Return Value
Type:Void
Description:N/A
Parameters
CreateTinyGeoFile(String,String,GeographyUnit,IEnumerable<String>,String,Double)
Static API to create a new TinyGeo file from an existed shape file.
Return Value
Type:Void
Description:N/A
Parameters
CreateTinyGeoFile(String,String,GeographyUnit,IEnumerable<String>,String,Double,Encoding)
Static API to create a new TinyGeo file from an existed shape file.
Return Value
Type:Void
Description:N/A
Parameters
CreateTinyGeoFile(String,FeatureLayer,GeographyUnit,IEnumerable<String>,String,Double,Encoding,WellKnownType)
Return Value
Type:Void
Description:N/A
Parameters
tinyGeoPathFilename
Type:String
Description:N/A
columnNames
Type:IEnumerable<String>
Description:N/A
password
Type:String
Description:N/A
precisionInMeter
Type:Double
Description:N/A
shapeEncoding
Type:Encoding
Description:N/A
GetOptimalPrecision(FeatureLayer,GeographyUnit,DistanceUnit,TinyGeoPrecisionMode)
Return Value
Type:Double
Description:N/A
Parameters
GetOptimalPrecision(String,GeographyUnit,DistanceUnit,TinyGeoPrecisionMode)
Return Value
Type:Double
Description:N/A
Parameters
EncryptTinyGeoFile(String,String,String)
Return Value
Type:Void
Description:N/A
Parameters
DecryptTinyGeoFile(String,String,String)
Return Value
Type:Void
Description:N/A
Parameters
Protected Methods
CanGetCountQuicklyCore()
Return Value
Type:Boolean
Description:N/A
Parameters
OnStreamLoading(StreamLoadingEventArgs)
Return Value
Type:Void
Description:None
Parameters
OpenCore()
This protected virtual method is called from the concreate public method Open. The open method play an important role as it is responsible for initializing the FeatureSource. Most methods on the FeatureSource will throw an exception if the state of the FeatureSource is not opened. When the map draws each layer it will open the FeatureSource as one of its first steps, then after it is finished drawing with that layer it will close it. In this way we are sure to release all resources used by the FeatureSource. When implementing this abstract method consider opening files for file based source, connecting to databases in the database based sources and so on. You will get a chance to close these in the Close method of the FeatureSource.
Return Value
Type:Void
Description:None
Parameters
CloseCore()
Return Value
Type:Void
Description:None
Parameters
GetBoundingBoxCore()
Return Value
Parameters
GetAllFeaturesCore(IEnumerable<String>)
This method returns all of the InternalFeatures in the FeatureSource. You will not need to consider anything about pending transactions as this will be handled in the non Core version of the method. The main purpose of this method is to be the anchor of all of our default virtual implementations within this class. We wanted as the framework developers to provide you the user with as much default virtual implementation as possible. To do this we needed a way to get access to all of the features. For example, we want to create a default implementation for finding all of the InternalFeatures in a bounding box. Because this is an abstract class we do not know the specifics of the underlying data or how its spatial indexes work. What we do know is that if we get all the records then we can brute force the answer. In this way if you inherited form this class and only implemented this one method we can provide default implementations for virtually every other API. While this is nice for you the developer if you decide to create your own FeatureSource it comes with a price. The price is that it is very inefficient. In the case we just discussed about finding all of the InternalFeatures in a bounding box we would not want to look at every record to fulfil this method. Instead we would want to override the GetFeaturesInsideBoundingBoxCore and implement specific code that would be fast. For example in Oracle Spatial there is a specific SQL statement to do this operation very quickly. The same holds true with other specific FeatureSource examples. Most default implementations in the FeatureSource call the GetFeaturesInsideBoundingBoxCore which by default calls the GetAllFeaturesCore. It is our advice that if you create your own FeatureSource that you ALWAYS override the GetFeatureInsideBoundingBox. It will ensure that nearly every other API will operate efficiently. Please see the specific API to determine what method it uses.
Return Value
Parameters
GetFeaturesInsideBoundingBoxCore(RectangleShape,IEnumerable<String>)
Return Value
Parameters
GetAllFeaturesCore(IEnumerable<String>,Int32,Int32)
Return Value
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
startIndex
Type:Int32
Description:N/A
takeCount
Type:Int32
Description:N/A
GetFeaturesByIdsCore(IEnumerable<String>,IEnumerable<String>)
Return Value
Parameters
ids
Type:IEnumerable<String>
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetColumnsCore()
As this is the abstract core version of the Columns method it is intended to be overridden in inherited version of the class. When overriding you will be responsible for getting a list of all of the columns supported by the FeatureSource. In this way the FeatureSource will know what columns are available and will remove any extra columns when making calls to other core methods. For example if you have a FeatureSource that has three columns of information and the user calls a method and requests four columns of information, something they can do with custom fields, we will first compare what they are asking for to the results of the GetColumnsCore. In this way we can strip out custom columns before calling other Core methods which are only responsible for returning data in the FeatureSource. For more information on custom fields you can see the documentation on the OnCustomFieldsFetch.
Return Value
Parameters
CanGetBoundingBoxQuicklyCore()
Return Value
Type:Boolean
Description:N/A
Parameters
GetBoundingBoxByIdCore(String)
Return Value
Parameters
id
Type:String
Description:N/A
GetFirstFeaturesWellKnownTypeCore()
Return Value
Parameters
ConvertToExternalProjection(IEnumerable<RectangleShape>)
Return Value
Parameters
ConvertToInternalProjection(IEnumerable<RectangleShape>)
Return Value
Parameters
ConvertToExternalProjection(RectangleShape)
Return Value
Parameters
ConvertToInternalProjection(RectangleShape)
Return Value
Parameters
ConvertToInternalProjectionCall(RectangleShape)
Return Value
Parameters
ConvertToInternalProjection(BaseShape)
Return Value
Parameters
ConvertToExternalProjection(IEnumerable<Feature>)
Return Value
Parameters
ConvertToInternalProjection(IEnumerable<Feature>)
Return Value
Parameters
ConvertToExternalProjection(Feature)
Return Value
Parameters
ConvertToInternalProjection(Feature)
Return Value
Parameters
GetColumnNamesInsideFeatureSource(IEnumerable<String>)
Return Value
Type:Collection<String>
Description:N/A
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetColumnNamesOutsideFeatureSource(IEnumerable<String>)
Return Value
Type:Collection<String>
Description:N/A
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetReturningColumnNames(ReturningColumnsType)
Return Value
Type:Collection<String>
Description:N/A
Parameters
RemoveEmptyAndExcludeFeatures(Collection<Feature>)
Return Value
Type:Void
Description:N/A
Parameters
OnDrawingProgressChanged(DrawingProgressChangedEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
GetColumnNamesOutsideFeatureSourceCall(IEnumerable<String>)
Return Value
Type:Collection<String>
Description:N/A
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetDistinctColumnValuesCore(String)
Return Value
Parameters
columnName
Type:String
Description:N/A
CommitTransactionCore(TransactionBuffer)
Return Value
Parameters
RaiseCustomColumnFetchEvent(Collection<Feature>,Collection<String>,Boolean)
Return Value
Parameters
forceRaiseEvent
Type:Boolean
Description:N/A
GetFeaturesOutsideBoundingBoxCore(RectangleShape,IEnumerable<String>)
Return Value
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
ConvertToExternalProjectionIfNecessary(Collection<Feature>)
Return Value
Parameters
ProcessTransaction(RectangleShape,Collection<Feature>,Boolean)
Return Value
Type:Void
Description:N/A
Parameters
needUpdateProjection
Type:Boolean
Description:N/A
GetWrappingFeaturesLeft(RectangleShape,Double,Double,IEnumerable<String>,RectangleShape)
Return Value
Parameters
screenWidth
Type:Double
Description:N/A
screenHeight
Type:Double
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetWrappingFeaturesRight(RectangleShape,Double,Double,IEnumerable<String>,RectangleShape)
Return Value
Parameters
screenWidth
Type:Double
Description:N/A
screenHeight
Type:Double
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesForDrawingCore(RectangleShape,Double,Double,IEnumerable<String>)
Return Value
Parameters
screenWidth
Type:Double
Description:N/A
screenHeight
Type:Double
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
SpatialQueryCore(BaseShape,QueryType,IEnumerable<String>)
Return Value
Parameters
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesNearestToCore(BaseShape,GeographyUnit,Int32,IEnumerable<String>)
Return Value
Parameters
maxItemsToFind
Type:Int32
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
GetFeaturesWithinDistanceOfCore(BaseShape,GeographyUnit,DistanceUnit,Double,IEnumerable<String>)
Return Value
Parameters
distance
Type:Double
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
OnCustomColumnFetch(CustomColumnFetchEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnCommittingTransaction(CommittingTransactionEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnCommittedTransaction(CommittedTransactionEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnOpeningFeatureSource(OpeningFeatureSourceEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnOpenedFeatureSource(OpenedFeatureSourceEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnClosingFeatureSource(ClosingFeatureSourceEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnClosedFeatureSource(ClosedFeatureSourceEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
ExecuteNonQueryCore(String)
Return Value
Type:Int32
Description:N/A
Parameters
sqlStatement
Type:String
Description:N/A
GetFeaturesByColumnValueCore(String,String,IEnumerable<String>)
Return Value
Parameters
columnName
Type:String
Description:N/A
columnValue
Type:String
Description:N/A
returningColumnNames
Type:IEnumerable<String>
Description:N/A
ExecuteScalarCore(String)
Return Value
Type:Object
Description:N/A
Parameters
sqlStatement
Type:String
Description:N/A
ExecuteQueryCore(String)
Return Value
Parameters
sqlStatement
Type:String
Description:N/A
GetCountCore()
Return Value
Type:Int32
Description:N/A
Parameters
CloneDeepCore()
Return Value
Parameters
Finalize()
Return Value
Type:Void
Description:N/A
Parameters
MemberwiseClone()
Return Value
Type:Object
Description:N/A
Parameters
Public Properties
Password
Return Value
TinyGeoPathFileName
Return Value
Id
Return Value
CanExecuteSqlQuery
Return Value
IsOpen
Return Value
CanModifyColumnStructure
Return Value
IsInTransaction
Return Value
IsTransactionLive
Return Value
IsEditable
Return Value
Projection
Return Value
GeoCache
Return Value
FeatureIdsToExclude
Return Value
TransactionBuffer
Return Value
MaxRecordsToDraw
Return Value
Protected Properties
CanExecuteSqlQueryCore
Return Value
IsOpenCore
Return Value
CanModifyColumnStructureCore
Return Value
FeatureSourceColumns
Return Value
Public Events
StreamLoading
If you choose you can pass in your own stream to represent the file. The stream can come from a variety of places such as isolated storage, a compressed file, and encrypted stream. When the Image is finished with the stream it will dispose of it so be sure to keep this in mind when passing the stream in. If you do not pass in a alternate stream the class will attempt to load the file from the file system using the TinyGeoPathFileName property.
Event Arguments:StreamLoadingEventArgs
DrawingProgressChanged