User Tools

Site Tools


thinkgeo.mapsuite.routing.rtgroutingsource

This is an old revision of the document!


ThinkGeo.MapSuite.Routing.RtgRoutingSource

This class represents a RoutingSource based on an .rtg file.

Inheritance Hierarchy

  • System.Object
    • ThinkGeo.MapSuite.Routing.RoutingSource
      • ThinkGeo.MapSuite.Routing.RtgRoutingSource

Members Summary

Public Constructors

RtgRoutingSource()

This is the class constructor.

Remarks

None

Parameters

RtgRoutingSource(String)

This is the class constructor.

Remarks

None

Parameters
  • rtgFilePathName
    • Type:String
    • Description:This parameter represents the path and file name of the .rtg file. This file stores routing source information.

Protected Constructors

Public Methods

GetRouteSegmentCount()

N/A

Remarks

N/A

Return Value
  • Type:Int32
  • Description:N/A
Parameters

Open()

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

Close()

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

GetRouteSegmentByFeatureId(String)

N/A

Remarks

N/A

Return Value
Parameters
  • featureId
    • Type:String
    • Description:N/A

GetRouteSegmentsNearestTo(BaseShape,FeatureSource,GeographyUnit,Int32)

N/A

Remarks

N/A

Return Value
Parameters
  • numberOfItemsToFind
    • Type:Int32
    • Description:N/A

BeginTransaction()

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

CommitTransaction()

N/A

Remarks

N/A

Return Value
Parameters

RollbackTransaction()

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

AddRouteSegment(RouteSegment)

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

UpdateRouteSegment(RouteSegment)

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

DeleteRouteSegment(String)

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters
  • id
    • Type:String
    • Description:N/A

ToString()

N/A

Remarks

N/A

Return Value
  • Type:String
  • Description:N/A
Parameters

Equals(Object)

N/A

Remarks

N/A

Return Value
  • Type:Boolean
  • Description:N/A
Parameters
  • obj
    • Type:Object
    • Description:N/A

GetHashCode()

N/A

Remarks

N/A

Return Value
  • Type:Int32
  • Description:N/A
Parameters

GetType()

N/A

Remarks

N/A

Return Value
  • Type:Type
  • Description:N/A
Parameters

GenerateRoutingData(String,FeatureSource)

This method generates routing data to an .rtg file based on a feature source.

Remarks

This method is the overloads method. It will use do-not-rebuild mode and an empy string as adjunctiveInformation to call other methods.

Return Value
  • Type:Void
  • Description:None
Parameters
  • rtgFilePathName
    • Type:String
    • Description:This parameter is the path and file name of the routing file you want to use.
  • featureSource
    • Description:This parameter is the feature source which gets enough information to generate routing data.

GenerateRoutingData(String,FeatureSource,BuildRoutingDataMode)

This method generates routing data to an .rtg file based on a feature source.

Remarks

This method is the overloads method. It will use an empy string as adjunctiveInformation to call other methods.

Return Value
  • Type:Void
  • Description:None
Parameters
  • rtgFilePathName
    • Type:String
    • Description:This parameter is the path and file name of the routing file you want to use.
  • featureSource
    • Description:This parameter is the feature source which gets enough information to generate routing data.
  • buildRoutingDataMode
    • Description:This parameter represents whether routing data will be rebuilt or not.

GenerateRoutingData(String,FeatureSource,BuildRoutingDataMode,String)

This method generates routing data to an .rtg file based on a feature source.

Remarks

N/A

Return Value
  • Type:Void
  • Description:None
Parameters
  • rtgFilePathName
    • Type:String
    • Description:This parameter is the path and file name of the routing file you want to use.
  • featureSource
    • Description:This parameter is the feature source which gets enough information to generate routing data.
  • buildRoutingDataMode
    • Description:This parameter represents whether routing data will be rebuilt or not.
  • adjunctiveInformation
    • Type:String
    • Description:This parameter represents the adjunctive information which will be stored in the .rtg file.

GenerateRoutingData(String,FeatureSource,BuildRoutingDataMode,GeographyUnit,DistanceUnit)

This method generates routing data to an .rtg file based on a feature source.

Remarks

N/A

Return Value
  • Type:Void
  • Description:None
Parameters
  • rtgFilePathName
    • Type:String
    • Description:N/A

GenerateRoutingData(String,String,BuildRoutingDataMode)

This method generates routing data to an .rtg file based on a feature source.

Remarks

N/A

Return Value
  • Type:Void
  • Description:None
Parameters
  • sourceShapeFilePathName
    • Type:String
    • Description:N/A
  • routableShapeFilePathName
    • Type:String
    • Description:N/A

GenerateRoutingData(String,String,String,BuildRoutingDataMode)

This method generates routing data to an .rtg file based on a feature source.

Remarks

N/A

Return Value
  • Type:Void
  • Description:None
Parameters
  • rtgFilePathName
    • Type:String
    • Description:N/A
  • sourceShapeFilePathName
    • Type:String
    • Description:N/A
  • routableShapeFilePathName
    • Type:String
    • Description:N/A

GenerateRoutingData(String,String,String,BuildRoutingDataMode,GeographyUnit,DistanceUnit)

This method generates routing data to an .rtg file based on a feature source.

Remarks

N/A

Return Value
  • Type:Void
  • Description:None
Parameters
  • rtgFilePathName
    • Type:String
    • Description:N/A
  • sourceShapeFilePathName
    • Type:String
    • Description:N/A
  • routableShapeFilePathName
    • Type:String
    • Description:N/A

GenerateRoutableShapeFile(String,String,OverwriteMode)

Create the routable shapefile which can be used to create RTG file directly.

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters
  • shapefilePathName
    • Type:String
    • Description:The path name of the source shape file.
  • routableShapeFilePathName
    • Type:String
    • Description:The path name of the routable shape file created.
  • overwriteMode
    • Description:The write mode used to specify whether we should overwrite the existed file.

Protected Methods

GetRouteSegmentByFeatureIdCore(String)

This method returns a RouteSegment by providing its ID in the RoutingSource.

Remarks

N/A

Return Value
  • Description:The RouteSegment based on a specific ID.
Parameters
  • featureId
    • Type:String
    • Description:This parameter is the feature ID which uniquely identifies it in the RoutingSource.

OpenCore()

This method opens the RoutingSource so that it is initialized and ready to use.

Remarks

This protected method is called from the concrete public method Open. The Open method plays an important role, as it is responsible for initializing the RoutingSource. Most methods on the RoutingSource will throw an exception if the state of the RoutingSource is not opened. When the map draws each layer, it will open the RoutingSource 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 RoutingSource. This implementation of OpenCore opens the .rtg file and .rtx file.

Return Value
  • Type:Void
  • Description:None
Parameters

OnStreamLoading(StreamLoadingEventArgs)

This method allows you to raise the StreamLoading event.

Remarks

This method allows you to raise the StreamLoading event. Normally events are not accessible to derived classes, so we exposed a way to raise the event as necessary through this protected method.

Return Value
  • Type:Void
  • Description:None
Parameters
  • e
    • Description:This parameter represents the event arguments you want to raise the StreamLoading event with.

CloseCore()

This method closes the RoutingSource and releases any resources it was using.

Remarks

This method is the concrete wrapper for the abstract method CloseCore. The Close method plays an important role in the life cycle of the RoutingSource. It may be called after drawing to release any memory and other resources that were allocated since the Open method was called. If you override the Core version of this method, it is recommended that you take the following things into account: This method may be called multiple times, so we suggest you write the method so that that a call to a closed RoutingSource is ignored and does not generate an error. We also suggest that in the Close you free all resources that have been opened. Remember that the object will not be destroyed, but will be re-opened possibly in the near future. This implementation of CloseCore closes the .rtg file and .rtx file.

Return Value
  • Type:Void
  • Description:None
Parameters

BeginTransactionCore()

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

CommitTransactionCore(RoutingTransactionBuffer)

N/A

Remarks

N/A

Return Value
Parameters

RollbackTransactionCore()

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

GetRouteSegmentCountCore()

This method returns the count of the number of records in this RoutingSource.

Remarks

This protected method is called from the concrete public method GetCount. It does not take into account any transaction activity, as this is the responsibility of the concrete public method GetRouteSegmentCount. This way, as a developer, if you choose to override this method you do not have to consider transactions at all. The implementation of GetRouteSegmentCountCore returns the count from the .rtg file.

Return Value
  • Type:Int32
  • Description:This method returns the count of the number of records in this RoutingSource.
Parameters

GetRouteSegmentsNearestToCore(BaseShape,FeatureSource,GeographyUnit,Int32)

This method returns a user defined number of Route Segments that are closest to the TargetShape.

Remarks

This method returns a user defined number of Route Segments that are closest to the TargetShape, and it is called in the GetRouteSegmentsNearestTo method, you need to implement it if you define a custome RoutingSource.It is important to note that the TargetShape and the FeatureSource must use the same unit, such as feet or meters. If they do not, then the results will not be predictable or correct.

Return Value
  • Type:Collection<RouteSegment>
  • Description:This method returns a user defined number of Route Segments that are closest to the TargetShape.
Parameters
  • targetShape
    • Type:BaseShape
    • Description:This parameter is the shape you want to find Route Segments close to.
  • featureSource
    • Description:This parameter defines the FeatureSource that is used to get information of RouteSegments
  • unitOfFeatureSource
    • Description:This parameter is the unit of measurement that the TargetShape and the FeatureSource are in, such as feet, meters, etc.
  • numberOfItemsToFind
    • Type:Int32
    • Description:This parameter defines how many close Route Segments to find around the TargetShape.

OnCommittingTransaction(RoutingCommittingTransactionEventArgs)

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

OnCommittedTransaction(RoutingCommittedTransactionEventArgs)

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

Finalize()

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

MemberwiseClone()

N/A

Remarks

N/A

Return Value
  • Type:Object
  • Description:N/A
Parameters

OnBuildingRoutingData(BuildingRoutingDataRtgRoutingSourceEventArgs)

This method allows you to raise the BuildingRoutingData event from a derived class.

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

OnGeneratingRoutableShapefile(GeneratingRoutableShapeFileRoutingSourceEventArgs)

This method allows you to raise the GeneratingRoutableShapeFile event from a derived class.

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters

vhQ=(ShapeFileFeatureSource,String,OverwriteMode)

N/A

Remarks

N/A

Return Value
  • Type:Void
  • Description:N/A
Parameters
  • routableShapeFilePathName
    • Type:String
    • Description:N/A

Public Properties

RtgFilePathName

This property returns the path and file name of the routing file you want to use.

Remarks

When you specify the path and file name it should be in the correct format as such; however, the file does not need to actually exist on the file system. This allows us to accept streams supplied by the developer at runtime. If you choose to provide a file that exists then we will attempt to use it. If we cannot find the file then we will raise the SteamLoading event and allow you to supply the stream. For example, you can pass in “C:\NotARealPath\File1.rtg” which does not exist on the file system. When we raise the event for you to supply a stream, we will pass to you the path and file name so that you can differentiate the files.

Return Value
  • Type:String

ReadEndPoints

Gets or sets a value indicating whether re

Remarks

N/A

Return Value
  • Type:Boolean

CachedIndex

Gets or sets a value indicating whether we should cache the index records to improve the performance.

Remarks

N/A

Return Value
  • Type:Boolean

GeographyUnit

N/A

Remarks

N/A

Return Value

IsOpen

N/A

Remarks

N/A

Return Value
  • Type:Boolean

AdjunctiveInformation

Gets a value that represents the adjunctive information.

Remarks

When you build the routing data by calling GenerateRoutingData, you can pass in the adjunctive information. For example, you can store the company or project version information in it.

Return Value
  • Type:String

IsEditable

This property returns whether the RoutingSource allows edits or is read-only.

Remarks

This property is useful to check if a specific RoutingSource accepts editing. If you call BeginTransaction and this property is false, then an exception will be raised. For developers who are creating or extending a RoutingSource, it is expected that you override this virtual method if the new RoutingSource you are creating allows edits.

Return Value
  • Type:Boolean

Version

N/A

Remarks

N/A

Return Value
  • Type:Int32

IsInTransaction

N/A

Remarks

N/A

Return Value
  • Type:Boolean

Protected Properties

kRQ=

N/A

Remarks

N/A

Return Value

Public Events

BuildingRoutingData This event is called during building of routing data.

Remarks

This event is called during building of routing data. It will be called many times during the build.

Event Arguments:BuildingRoutingDataRtgRoutingSourceEventArgs

GeneratingRoutableShapeFile This event is called during generating the routable shapefile from raw files.

Remarks

N/A

Event Arguments:GeneratingRoutableShapeFileRoutingSourceEventArgs

StreamLoading This event allows you to pass in your own stream to represent the Routing Index file.

Remarks

If you wish, you can pass in your own stream to represent the Routing Index file. The stream can come from a variety of places, including isolated storage, a compressed file, or an encrypted stream. When the file 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 an alternate stream, the class will attempt to load the file from the file system using the PathFileName property.

Event Arguments:StreamLoadingEventArgs

CommittingTransaction N/A

Remarks

N/A

Event Arguments:RoutingCommittingTransactionEventArgs

CommittedTransaction N/A

Remarks
thinkgeo.mapsuite.routing.rtgroutingsource.1442545611.txt.gz · Last modified: 2015/09/18 03:06 by admin