This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
thinkgeo.mapsuite.routing.routingalgorithm [2015/09/11 03:20] admin [MemberwiseClone()] |
thinkgeo.mapsuite.routing.routingalgorithm [2017/03/16 21:59] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== ThinkGeo.MapSuite.Routing.RoutingAlgorithm ====== | ====== ThinkGeo.MapSuite.Routing.RoutingAlgorithm ====== | ||
- | + | {{section>upgrade_map_suite_to_10.0}} | |
This class is the base class for all types of RoutingAlgorithm. | This class is the base class for all types of RoutingAlgorithm. | ||
- | === Remarks === | ||
- | The RoutingAlgorithm class is where all other types of RoutingAlgorithm are inherited from. It provides the base set of functionality.As it is abstract, you will need to implement the GetRouteCore method. In this method, you are repsonsible for implementing a routing algorithm to get the path between two routeSegments.There are many graph search algorithms you can use to extend this class. This assembly includes Dijkstra, A* and Bidirectional, but you can also write your own. | ||
===== Inheritance Hierarchy ===== | ===== Inheritance Hierarchy ===== | ||
*System.Object | *System.Object | ||
- | * [[ThinkGeo.MapSuite.Routing.RoutingAlgorithm]] | + | ***ThinkGeo.MapSuite.Routing.RoutingAlgorithm** |
- | * [[ThinkGeo.MapSuite.Routing.AStarRoutingAlgorithm]] | + | *[[ThinkGeo.MapSuite.Routing.BidirectionalRoutingAlgorithm]] |
- | * [[ThinkGeo.MapSuite.Routing.BidirectionalRoutingAlgorithm]] | + | *[[ThinkGeo.MapSuite.Routing.AStarRoutingAlgorithm]] |
- | * [[ThinkGeo.MapSuite.Routing.DijkstraRoutingAlgorithm]] | + | *[[ThinkGeo.MapSuite.Routing.DijkstraRoutingAlgorithm]] |
===== Members Summary ===== | ===== Members Summary ===== | ||
==== Public Constructors ==== | ==== Public Constructors ==== | ||
- | ^ Name ^ Parameters ^ DeclaringType ^ Summary ^ | ||
- | |||
==== Protected Constructors ==== | ==== Protected Constructors ==== | ||
- | ^ Name ^ Parameters ^ DeclaringType ^ Summary ^ | + | ** {{wiki:ProtectedMethod.gif|}} RoutingAlgorithm() ** |
- | | {{wiki:ProtectedMethod.gif|Protected Method}}[[#RoutingAlgorithm()|RoutingAlgorithm]] | | | This is the default constructor for the RoutingAlgorithm and should be called by inherited classes. | | + | |
+ | * //This is the default constructor for the RoutingAlgorithm and should be called by inherited classes.// | ||
+ | == Remarks == | ||
+ | * //This is the default constructor for the RoutingAlgorithm and should be called by inherited classes.// | ||
+ | == Parameters == | ||
+ | <div newline></div> | ||
==== Public Methods ==== | ==== Public Methods ==== | ||
- | ^ Name ^ Parameters ^ DeclaringType ^ Summary ^ | + | ** {{wiki:PublicMethod.gif|}} GetRoute(RoutingSource,String,String) ** |
- | | {{wiki:PublicMethod.gif|Public Method}}[[#Equals(Object)|Equals]] | Object | Object | | | + | |
- | | {{wiki:PublicMethod.gif|Public Method}}[[#GetHashCode()|GetHashCode]] | | Object | | | + | |
- | | {{wiki:PublicMethod.gif|Public Method}}[[#GetRoute(RoutingSource, String, String)|GetRoute]] | [[ThinkGeo.MapSuite.Routing.RoutingSource|RoutingSource]], String, String | | This method returns a RoutingResult based on the extent you provided. | | + | |
- | | {{wiki:PublicMethod.gif|Public Method}}[[#GetType()|GetType]] | | Object | | | + | |
- | | {{wiki:PublicMethod.gif|Public Method}}[[#ToString()|ToString]] | | Object | | | + | |
- | ==== Protected Methods ==== | + | * //This method returns a RoutingResult based on the extent you provided.// |
- | ^ Name ^ Parameters ^ DeclaringType ^ Summary ^ | + | == Remarks == |
- | | {{wiki:ProtectedMethod.gif|Protected Method}}[[#Finalize()|Finalize]] | | Object | | | + | * //This method is the concrete wrapper for the abstract method GetRouteCore. This method gets the routing result based on the extent you provided. In this method, you are repsonsible for implementing a routing algorithm to get the path between two routeSegments.// |
- | | {{wiki:ProtectedMethod.gif|Protected Method}}[[#GetRouteCore(RoutingSource, String, String)|GetRouteCore]] | [[ThinkGeo.MapSuite.Routing.RoutingSource|RoutingSource]], String, String | | This method returns a RoutingResult based on the extent you provided. | | + | |
- | | {{wiki:ProtectedMethod.gif|Protected Method}}[[#MemberwiseClone()|MemberwiseClone]] | | Object | | | + | |
- | | {{wiki:ProtectedMethod.gif|Protected Method}}[[#OnFindingRoute(FindingRouteRoutingAlgorithmEventArgs)|OnFindingRoute]] | [[ThinkGeo.MapSuite.Routing.FindingRouteRoutingAlgorithmEventArgs|FindingRouteRoutingAlgorithmEventArgs]] | | This method allows you to raise the FindingRoute event from a derived class. | | + | |
- | ==== Public Properties ==== | + | == Return Value == |
- | ^ Name ^ Return ^ DeclaringType ^ Summary ^ | + | * Type:Collection<[[ThinkGeo.MapSuite.Routing.RouteSegment|RouteSegment]]> |
- | | {{wiki:PublicProperty.gif|Public Property}}[[#DistanceUnit|DistanceUnit]] | [[ThinkGeo.MapSuite.Core.DistanceUnit|DistanceUnit]] | | | | + | * Description:Routing result that contains path information. |
- | | {{wiki:PublicProperty.gif|Public Property}}[[#GeographyUnit|GeographyUnit]] | [[ThinkGeo.MapSuite.Core.GeographyUnit|GeographyUnit]] | | | | + | |
- | ==== Protected Properties ==== | + | == Parameters == |
- | ^ Name ^ Return ^ DeclaringType ^ Summary ^ | + | * //routingSource// |
+ | * Type:[[ThinkGeo.MapSuite.Routing.RoutingSource|RoutingSource]] | ||
+ | * Description:The routing source that contains the routeSegments to route on. | ||
- | ==== Public Events ==== | + | * //startFeatureId// |
- | ^ Name ^ Event Arguments ^ DeclaringType ^ Summary ^ | + | * Type:String |
- | | {{wiki:PublicEvent.gif|Public Event}}[[#FindingRoute|FindingRoute]] | [[ThinkGeo.MapSuite.Routing.FindingRouteRoutingAlgorithmEventArgs|FindingRouteRoutingAlgorithmEventArgs]] | | This event is called after finding the adjacent routeSegments. | | + | * Description:The feature ID which represents the starting routeSegment. |
- | ===== Public Constructors ===== | + | * //endFeatureId// |
- | ===== Protected Constructors ===== | + | * Type:String |
- | ==== RoutingAlgorithm() ==== | + | * Description:The feature ID which represents the ending routeSegment. |
- | This is the default constructor for the RoutingAlgorithm and should be called by inherited classes. | + | |
- | === Remarks === | + | |
- | This is the default constructor for the RoutingAlgorithm and should be called by inherited classes. | + | |
- | === Parameters === | + | |
- | ^ Name ^ Type ^ Description ^ | + | |
- | [[#Protected Constructors|Go Back]] | + | <div newline></div> |
- | ===== Public Methods ===== | + | ** {{wiki:PublicMethod.gif|}} ToString() ** |
- | ==== Equals(Object) ==== | + | |
- | === Remarks === | + | |
- | For the most updated Info for this topic, please check it here:// http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#Equals.28Object.29 // | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ Description ^ | + | |
- | | Boolean | | | + | |
- | === Parameters === | + | * //N/A// |
- | ^ Name ^ Type ^ Description ^ | + | == Remarks == |
- | | obj | Object | | | + | * //For the most updated Info for this topic, please check it here:http:wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#ToString.28.29// |
- | [[#Public Methods|Go Back]] | + | == Return Value == |
- | ==== GetHashCode() ==== | + | * Type:String |
- | === Remarks === | + | * Description:N/A |
- | For the most updated Info for this topic, please check it here:// http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#GetHashCode.28.29 // | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ Description ^ | + | |
- | | Int32 | | | + | |
- | === Parameters === | + | == Parameters == |
- | ^ Name ^ Type ^ Description ^ | + | <div newline></div> |
+ | ** {{wiki:PublicMethod.gif|}} Equals(Object) ** | ||
- | [[#Public Methods|Go Back]] | + | * //N/A// |
- | ==== GetRoute(RoutingSource, String, String) ==== | + | == Remarks == |
- | This method returns a RoutingResult based on the extent you provided. | + | * //For the most updated Info for this topic, please check it here:http:wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#Equals.28Object.29// |
- | === Remarks === | + | |
- | This method is the concrete wrapper for the abstract method GetRouteCore.This method gets the routing result based on the extent you provided. In this method, you are repsonsible for implementing a routing algorithm to get the path between two routeSegments. | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ Description ^ | + | |
- | | Collection<[[ThinkGeo.MapSuite.Routing.RouteSegment|RouteSegment]]> | Routing result that contains path information. | | + | |
- | === Parameters === | + | == Return Value == |
- | ^ Name ^ Type ^ Description ^ | + | * Type:Boolean |
- | | routingSource | [[ThinkGeo.MapSuite.Routing.RoutingSource|RoutingSource]] | The routing source that contains the routeSegments to route on. | | + | * Description:N/A |
- | | startFeatureId | String | The feature ID which represents the starting routeSegment. | | + | |
- | | endFeatureId | String | The feature ID which represents the ending routeSegment. | | + | |
+ | == Parameters == | ||
+ | * //obj// | ||
+ | * Type:Object | ||
+ | * Description:N/A | ||
- | [[#Public Methods|Go Back]] | + | <div newline></div> |
- | ==== GetType() ==== | + | ** {{wiki:PublicMethod.gif|}} GetHashCode() ** |
- | === Remarks === | + | |
- | For the most updated Info for this topic, please check it here:// http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#GetType.28.29 // | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ Description ^ | + | |
- | | Type | | | + | |
- | === Parameters === | + | * //N/A// |
- | ^ Name ^ Type ^ Description ^ | + | == Remarks == |
+ | * //For the most updated Info for this topic, please check it here:http:wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#GetHashCode.28.29// | ||
- | [[#Public Methods|Go Back]] | + | == Return Value == |
- | ==== ToString() ==== | + | * Type:Int32 |
- | === Remarks === | + | * Description:N/A |
- | For the most updated Info for this topic, please check it here:// http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#ToString.28.29 // | + | |
- | === Return Value === | + | == Parameters == |
- | ^ Return Type ^ Description ^ | + | <div newline></div> |
- | | String | | | + | ** {{wiki:PublicMethod.gif|}} GetType() ** |
- | === Parameters === | + | * //N/A// |
- | ^ Name ^ Type ^ Description ^ | + | == Remarks == |
+ | * //For the most updated Info for this topic, please check it here:http:wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#GetType.28.29// | ||
+ | == Return Value == | ||
+ | * Type:Type | ||
+ | * Description:N/A | ||
- | [[#Public Methods|Go Back]] | + | == Parameters == |
- | ===== Protected Methods ===== | + | <div newline></div> |
- | ==== Finalize() ==== | + | ==== Protected Methods ==== |
- | === Remarks === | + | ** {{wiki:ProtectedMethod.gif|}} GetRouteCore(RoutingSource,String,String) ** |
- | For the most updated Info for this topic, please check it here:// http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#Finalize.28.29 // | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ Description ^ | + | |
- | | Void | | | + | |
- | === Parameters === | + | * //This method returns a RoutingResult based on the extent you provided.// |
- | ^ Name ^ Type ^ Description ^ | + | == Remarks == |
+ | * //This abstract method is called from the concrete public method GetRoute. This method gets the routing result based on the extent you provided. In this method, you are repsonsible for implementing a routing algorithm to get the path between two routeSegments.// | ||
- | [[#Protected Methods|Go Back]] | + | == Return Value == |
- | ==== GetRouteCore(RoutingSource, String, String) ==== | + | * Type:Collection<[[ThinkGeo.MapSuite.Routing.RouteSegment|RouteSegment]]> |
- | This method returns a RoutingResult based on the extent you provided. | + | * Description:Routing result that contains path information. |
- | === Remarks === | + | |
- | This abstract method is called from the concrete public method GetRoute.This method gets the routing result based on the extent you provided. In this method, you are repsonsible for implementing a routing algorithm to get the path between two routeSegments. | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ Description ^ | + | |
- | | Collection<[[ThinkGeo.MapSuite.Routing.RouteSegment|RouteSegment]]> | Routing result that contains path information. | | + | |
- | === Parameters === | + | == Parameters == |
- | ^ Name ^ Type ^ Description ^ | + | * //routingSource// |
- | | routingSource | [[ThinkGeo.MapSuite.Routing.RoutingSource|RoutingSource]] | The routing source that contains the routeSegments to route on. | | + | * Type:[[ThinkGeo.MapSuite.Routing.RoutingSource|RoutingSource]] |
- | | startFeatureId | String | The feature ID which represents the starting routeSegment. | | + | * Description:The routing source that contains the routeSegments to route on. |
- | | endFeatureId | String | The feature ID which represents the ending routeSegment. | | + | |
+ | * //startFeatureId// | ||
+ | * Type:String | ||
+ | * Description:The feature ID which represents the starting routeSegment. | ||
- | [[#Protected Methods|Go Back]] | + | * //endFeatureId// |
- | ==== MemberwiseClone() ==== | + | * Type:String |
- | === Remarks === | + | * Description:The feature ID which represents the ending routeSegment. |
- | For the most updated Info for this topic, please check it here:// http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#MemberwiseClone.28.29 // | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ Description ^ | + | |
- | | Object | | | + | |
- | === Parameters === | + | <div newline></div> |
- | ^ Name ^ Type ^ Description ^ | + | ** {{wiki:ProtectedMethod.gif|}} OnFindingRoute(FindingRouteRoutingAlgorithmEventArgs) ** |
+ | * //This method allows you to raise the FindingRoute event from a derived class.// | ||
+ | == Remarks == | ||
+ | * //For the most updated Info for this topic, please check it here:http:wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#OnFindingRoute.28FindingRouteRoutingAlgorithmEventArgs.29// | ||
- | [[#Protected Methods|Go Back]] | + | == Return Value == |
- | ==== OnFindingRoute(FindingRouteRoutingAlgorithmEventArgs) ==== | + | * Type:Void |
- | This method allows you to raise the FindingRoute event from a derived class. | + | * Description:N/A |
- | === Remarks === | + | |
- | For the most updated Info for this topic, please check it here:<a href="http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#OnFindingRoute.28FindingRouteRoutingAlgorithmEventArgs.29" target="_blank">http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#OnFindingRoute.28FindingRouteRoutingAlgorithmEventArgs.29</a> | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ Description ^ | + | |
- | | Void<!-- System.Void --> | | | + | |
- | === Parameters === | + | == Parameters == |
- | ^ Name ^ Type ^ Description ^ | + | * //e// |
- | | e | [[ThinkGeo.MapSuite.Routing.FindingRouteRoutingAlgorithmEventArgs|FindingRouteRoutingAlgorithmEventArgs]]<!-- ThinkGeo.MapSuite.Routing.FindingRouteRoutingAlgorithmEventArgs --> | | | + | * Type:[[ThinkGeo.MapSuite.Routing.FindingRouteRoutingAlgorithmEventArgs|FindingRouteRoutingAlgorithmEventArgs]] |
+ | * Description:N/A | ||
- | <!-- ThinkGeo.MapSuite.Routing.RoutingAlgorithm --> | + | <div newline></div> |
- | [[#Protected Methods|Go Back]] | + | ** {{wiki:ProtectedMethod.gif|}} Finalize() ** |
- | ===== Public Properties ===== | + | |
- | ==== DistanceUnit ==== | + | |
- | === Remarks === | + | |
- | For the most updated Info for this topic, please check it here:<a href="http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#DistanceUnit" target="_blank">http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#DistanceUnit</a> | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ | + | |
- | | [[ThinkGeo.MapSuite.Core.DistanceUnit|DistanceUnit]]<!-- ThinkGeo.MapSuite.Core.DistanceUnit --> | | + | |
- | <!-- ThinkGeo.MapSuite.Routing.RoutingAlgorithm --> | + | * //N/A// |
- | [[#Public Properties|Go Back]] | + | == Remarks == |
- | ==== GeographyUnit ==== | + | * //For the most updated Info for this topic, please check it here:http:wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#Finalize.28.29// |
- | === Remarks === | + | |
- | For the most updated Info for this topic, please check it here:<a href="http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#GeographyUnit" target="_blank">http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#GeographyUnit</a> | + | |
- | === Return Value === | + | |
- | ^ Return Type ^ | + | |
- | | [[ThinkGeo.MapSuite.Core.GeographyUnit|GeographyUnit]]<!-- ThinkGeo.MapSuite.Core.GeographyUnit --> | | + | |
- | <!-- ThinkGeo.MapSuite.Routing.RoutingAlgorithm --> | + | == Return Value == |
- | [[#Public Properties|Go Back]] | + | * Type:Void |
- | ===== Protected Properties ===== | + | * Description:N/A |
- | ===== Public Events ===== | + | |
- | ==== FindingRoute ==== | + | == Parameters == |
+ | <div newline></div> | ||
+ | ** {{wiki:ProtectedMethod.gif|}} MemberwiseClone() ** | ||
+ | |||
+ | * //N/A// | ||
+ | == Remarks == | ||
+ | * //For the most updated Info for this topic, please check it here:http:wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#MemberwiseClone.28.29// | ||
+ | |||
+ | == Return Value == | ||
+ | * Type:Object | ||
+ | * Description:N/A | ||
+ | |||
+ | == Parameters == | ||
+ | <div newline></div> | ||
+ | ==== Public Properties ==== | ||
+ | ** {{wiki:PublicProperty.gif|}} GeographyUnit ** | ||
+ | |||
+ | N/A | ||
+ | == Remarks == | ||
+ | For the most updated Info for this topic, please check it here:http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#GeographyUnit | ||
+ | == Return Value == | ||
+ | * Type:[[ThinkGeo.MapSuite.Core.GeographyUnit|GeographyUnit]] | ||
+ | |||
+ | ** {{wiki:PublicProperty.gif|}} DistanceUnit ** | ||
+ | |||
+ | N/A | ||
+ | == Remarks == | ||
+ | For the most updated Info for this topic, please check it here:http://wiki.thinkgeo.com/wiki/ThinkGeo.MapSuite.Routing.RoutingAlgorithm#DistanceUnit | ||
+ | == Return Value == | ||
+ | * Type:[[ThinkGeo.MapSuite.Core.DistanceUnit|DistanceUnit]] | ||
+ | |||
+ | ==== Protected Properties ==== | ||
+ | ==== Public Events ==== | ||
+ | ** {{wiki:PublicEvent.gif|}} FindingRoute ** | ||
This event is called after finding the adjacent routeSegments. | This event is called after finding the adjacent routeSegments. | ||
- | === Remarks === | + | == Remarks == |
This event is called after finding the adjacent routeSegments. It wil be called many times during the route. | This event is called after finding the adjacent routeSegments. It wil be called many times during the route. | ||
- | === Event Arguments === | ||
- | ^ Event Arguments ^ | ||
- | | [[ThinkGeo.MapSuite.Routing.FindingRouteRoutingAlgorithmEventArgs|FindingRouteRoutingAlgorithmEventArgs]]<!-- ThinkGeo.MapSuite.Routing.FindingRouteRoutingAlgorithmEventArgs --> | | ||
- | <!-- ThinkGeo.MapSuite.Routing.RoutingAlgorithm --> | + | Event Arguments:[[ThinkGeo.MapSuite.Routing.FindingRouteRoutingAlgorithmEventArgs|FindingRouteRoutingAlgorithmEventArgs]] |
- | [[#Public Events|Go Back]] | + | |
- | __NOTOC__ | ||
- | [[Category:MapSuiteRouting]] | ||
- | [[Category:ThinkGeo.MapSuite.Routing]] | ||
- | [[Category:UpdateDocumentation]] | ||