Package oracle.spatial.network.lod
Provides support for the Load-On-Demand (LOD) approach of network analysis in the Oracle Spatial network data model, which is documented in Oracle Spatial Topology and Network Data Models.
This package provides methods to
- read network information,
- perform network analysis,
- store analysis results, and
- configure the load-on-demand settings, such as cache size, caching policy, load network from the node/link tables or from the blobs, etc.,
LODNetworkManager is the entry point for all the functionalities provided by this package.
To read network information, first obtain a NetworIO object from the NetworkManager, and then call various network IO methods provided by NetworkIO. For example,
NetworkIO networkIO = LODNetworkManager.getCachedNetworkIO(myConnection, "MYNETWORK", "MYNETWORK"); int numberOfPartitions = networkIO.readNumberOfPartitions(1); int numberOfNodes = networkIO.readNumberOfNodes(1); LogicalPartition part = networkIO.readLogicalPartition(1, 1, true, true);To analyze a network, first obtain a NetworkAnalyst object from the NetworkManager, and then call the various network analysis functions provided by the network analyst. For example,
NetworkAnalyst analyst = LODNetworkManager.getNetworkAnalyst(networkIO); LogicalSubPath path = analyst.shortestPathDijkstra( new PointOnNet(2000), new PointOnNet(6700), null); LogicalSubPath[] paths = analyst.nearestNeighbors( new PointOnNet(2000), 10, null, null);To configure load-on-demand settings, create or edit your LOD configuration xml file, obtain the ConfigManager object from the NetworkManager, and then call the loadConfig method to load the configuration. For example,
InputStream in = ClassLoader.getSystemResourceAsStream("lodconfig.xml"); LODNetworkManager.getConfigManager().loadConfig(in);
-
Interface Summary Interface Description BinaryHeap.IndexKeeper<E> CachedNetworkIO This interface defines methods related to cached network input and output.CachedNetworkIOWM This interface defines methods related to workspace change.CachingHandler This interface defines methods supported by a caching handler.CategorizedUserData This interface defines methods supported by a categorized user data object.Cluster ClusterEvaluator ClusteringConstraint ClusterResult Constraint<T> Feature This interface defines the methods supported by a network feature.FeatureData FeatureData contains information about all feature data associated with the network elements in a network, sub-network or a partition.FeatureElement A feature element is a point or line defined on a network element.FeatureFilter This interface defines the methods to check whether a given feature is a goal feature during network analysis.FeatureLayer Features associated with elements in a network, sub-network or a partition, in a feature layer.HeuristicCostFunction This interface defines the heuristic cost function from one point to another.Identifiable IdentifiablePriorityQueue<E extends Identifiable & java.lang.Comparable> This interface defines the methods supported by a priority queue.KShortestPaths This interface defines methods supported by a k shortest path algorithm.LinkCostCalculator This interface defines methods supported by a link cost calculator.LinkLevelSelector A LinkLevelSelector selects the link level for the next node to expand on.LODGoalNode This interface defines methods to check whether a given node is a goal node.LODNetworkConstraint This interface defines a general network constraint for network analysis.LODUserDataIO This interface defines methods to read and write user defined data from and to the database.LogicalBasicNetwork This interface defines methods supported by a logical network.LogicalHeavyPath A LogicalHeavyPath is a logical path with detailed node and link information.LogicalLightPath Light-weight logical path, which only contains the start and end node IDs on the path.LogicalLightSubPath Light weight logical sub-path that references to aLogicalLightPath
LogicalLink This interface defines a standalone link.LogicalNetLink A LogicalNetLink defines a network link, which is a LogicalLink with reference to the LogicalNetNode objects of its start and end nodes.LogicalNetNode A LogicalNetNode is a LogicalNode with reference to adjacent node and link objects.LogicalNode This interface defines a standalone node.LogicalPartition This interface defines methods supported by a logical network partition.LogicalPath A LogicalPath is defined by an array of link IDs, array of node IDs, and the costs for traversing through this path.LogicalSubNetwork A LogicalSubNetwork is a LogicalNetwork that connects to external nodes.LogicalSubPath LogicalSubPath represents a portion of a LogicalPath, with the start and/or end points located on links of the the containing path.MinimumSpanningTree This interface defines methods supported by a minimum-spanning-tree algorithm.NetworkIO This interface defines methods to read/write network information from/to a datasource.NodeCostCalculator This interface defines methods supported by a node cost calculator.PairwiseCostCalculator This interface defines methods to calculate the pairwise costs between two sets of points.PairwisePathResultIO PairwiseShortestPaths A PairwiseShortestPaths is an algorithm to calculate the the pair-wise shortest paths between a set of candidate start points and end points.PartitionBlobTranslator This interface defines methods supported by a partition blob translator.PathFeature A feature representing a path on a network.PathFilter This interface defines the methods to check whether a given sub-path is a goal sub-path during network analysis.PointClustering PriorityQueue<E extends java.lang.Comparable> This interface defines the methods supported by a priority queue.ShortestPath This interface defines methods supported by a shortest path algorithm.SingleSourceShortestPaths SpatialBasicNetwork A SpatialNetwork is a LogicalNetwork with geometry information.SpatialHeavyPath A SpatialHeavyPath is a LogicalHeavyPath with geometry information.SpatialLink A SpatialLink is a LogicalLink with geometry information.SpatialNetLink A SpatialNetLink is a LogicalNetLink with geometry information.SpatialNetNode A SpatialNetNode is a LogicalNetNode with geometry information.SpatialNode A SpatialNode is a LogicalNode with geometry information.SpatialPartition A SpatialPartition is a LogicalPartition with geometry information.SpatialPath A SpatialPath is a LogicalPath with geometry information.SpatialSubNetwork A SpatialSubNetwork is a LogicalSubNetwork with geometry information.SpatialSubPath A SpatialSubPath is a LogicalSubPath with geometry information.TSP This interface defines methods supported by traveling salesman problem algorithm.TspConstraint TspOptimizer UserData This interface defines methods supported by a user data set.VRP XMLConfigurable This interface defines methods that make a customized XML configuration implementation. -
Class Summary Class Description AnalysisEngine AnalysisEngine.DefaultCallable AStar This class implements A* shortest path algorithm.AStar.AStarVisitedNode BidirectionalBfs BidirectionalDijkstra BinaryHeap<E extends java.lang.Comparable> a binary Min.BreadthFirstSearch Network search algorithm that explores the network in breadth first manner.CategorizedUserDataImpl Default implementation for CategorizedUserData.ClusterSizeConstraint ConstraintOperator Supports "and", "or", and "not" operations on network constraints.DefaultLinkCostCalculator This is the default link cost calculator implementation.DefaultNodeCostCalculator This is the default node cost calculator implementation.DefaultPairwiseCostCalculator This is the default pairwise cost calculator.DefaultPairwiseShortestPaths This is the default pairwise shortest paths algorithm.DefaultSingleSourceShortestPaths Dijkstra This class implements Dijkstra shortest path algorithm.DummyCostFunction The heuristic cost function implemented in this class always returns 0.DummyLinkCostCalculator This implementation of LinkCostCalculator always returns a fixed number as link cost.DummyLinkLevelSelector This implementation of LinkLevelSelector always returns the fixed link level specified in the constructor.DummyNodeCostCalculator This implementation of NodeCostCalculator always returns a fixed number as node cost.DynamicLinkLevelSelector This implementation of LinkLevelSelector dynamically assigns link level to the next node according to the distance from the next node to the start/end point.EuclideanCostFunction This class implements the A* heuristic cost function as the 2D euclidean distance between the current node and the goal node.FeatureDataImpl Default implementations for FeatureData.FeatureElementImpl Default implementation of FeatureElement.FeatureFilterOperator Supports "and", "or", and "not" operations on feature filters.FeatureImpl Default implementation of Feature.FeatureLayerImpl Default implementation of FeatureLayer.FeatureLayerMetadata Metadata information for a feature layer.FeatureMetadata Metadata for all registered feature layers on a network.FeaturePath A FeaturePath object consists of a Feature and the PathFeature that ends at the feature.FilePairwisePathResultIO GeodeticCostFunction This class implements the heuristic cost as the 2D geodetic distance in meters between the current node and the goal node.GeodeticPairwiseCostCalculator GoalNodeOperator Supports "and", "or", and "not" operations on goal node filters.HeavyPointOnNet A HeavyPointOnNet is a PointOnNet with reference to the underlying LogialNode and LogicalLink object.IdentifiableBinaryHeap<E extends Identifiable & java.lang.Comparable> a binary Min.InMemoryPairwisePathResultIO KShortestPathsBfs BFS implementation of K-shortest paths search.LeveledNetworkCache An instance of this class contains the cache for all link levels of a network.LODAnalysisInfo An instance of this class carries the analysis information.LODNetworkFactory This class handles network element creation for Oracle Spatial Network Data Model.LODNetworkManager This class is the entry point of all functionalities provided by the lod package.LODNetworkWrapper This is the wrapper class containing LOD related java stored procedures used by SDO_NET package.LODUserDataIOSDO This implementation of LODUserDataIO reads all the user defined data from the node, link and path tables.LogicalNetLinkImpl Default implementation of LogicalNetLink.LogicalNetNodeImpl Default implementation of LogicalNetNode.LogicalPartitionImpl Default implementation of LogicalPartition.LogicalSubPathImpl Default implementation of LogicalSubPath.LongHashMap<V> This is a bare-bones, application specific, optimized hash table implementation.LongHashSet This is a bare-bones, application specific, optimized hash set implementation.LongLinkedHashMap<V> This is a bare-bones, application specific, optimized ordered hash map implementation.LRUCachingHandler This class implements the Least Recently Used (LRU) caching handler.Matrix<E> A simple double array matrix implementation.MaxCostConstraint Maximum cost network constraint.MaxDepthConstraint Maximum depth network constraint.NetworkAnalyst This class is the single entry point to all the network analysis operations supported by NDM LOD.NetworkBuffer A NetworkBuffer is defined by central points and the set of nodes and link intervals within certain radius from the cental points.NetworkBuffer.DoubleInterval This class defines a double interval.NetworkBuffer.Elements This class contains elements in a network buffer.NetworkBuffer.LinkInterval NetworkBuffer.LinkIntervals An instance of this class contains a LogicalLink object and a list of intervals associated with the link object.NetworkExplorer This class provides methods to navigate a network.NetworkSearch NetworkSearch.MatchedPoint NetworkSearch.NetworkSearchTree NetworkSearch.NodeLinkIds NetworkSearch.PartialLinkElement NetworkSearch.PointOnNetWithLink NetworkSearch.SameLinkMatchedPointPair NetworkSearch.Statistics NetworkSearch.TmpSearchData NetworkUpdate A NetworkUpdate object contains network update information.OrderedLongSet Ordered Long SetParallelPairwiseShortestPaths PartitionBlob An instance of the PartitionBlob represents a row in the partition BLOB table in the database.PartitionBlobTranslator11g The class to translate a network partition BLOB to a LogicalPartition object, or vice versa.PartitionBlobTranslator11gR2 The class translates a network partition BLOB to a LogicalPartition object, or vice versa.PartitionUpdate A PartitionUpdate object contains partition update information.PathFeatureImpl Default implementation of PathFeature.PathToPoint PointOnNet This class defines the methods supported by a point on a network.SilhouetteClusterEvaluator This implementation uses the Silhouette method to measure cluster quality.SpanningTree A spanning tree on the network.SpatialBisectClustering SpatialKMeansClustering SpatialSubPathImpl Default implementation of SpatialSubPath.TimeWindow Tsp2Opt TspAnalysisInfo This class contains the TSP points in order, besides other info in LODAnalysisInfo.TspConstraintOperator TspConstraintOperator.CombinedConstraint TspImpl The default two step TSP implementation, which first computes the pairwise costs between the TSP stops, and then optimizes the order the stops to be visited.TspImpl.NetworkTspConstraint TspNearestNeighbor This is a simple heuristic TSP algorithm, which always picks the closest point as the next one to visit.TspOp2 This class implements the 2-opt heuristic algorithm for the Traveling-Salesman-Problem.TspOrderConstraint TSP ordering constraint implementation.TspPath A TspPath consists of an array of LogicalSubPath and the order of the points on the TSP tour.TspPathFeature A TspPathFeature object contains information about the tsp order and a sequence of path features from the first point until the last point.TspTimeWindowConstraint UserDataImpl Default implementation of UserData.VisitedNode This class represents a node visited while exploring a network.VrpClusterAndRoute VrpPath YenDeviation This class implements Yen's Deviation Algorithm for finding the k shortest loopless paths. -
Enum Summary Enum Description Feature.FeatureType A list of valid feature types.FeatureElement.FeatureElementType A list of valid feature element types.FeatureLayerMetadata.FeatureLayerType A list of valid feature layer types.TSP.TourFlag Enumeration whose values indicate whether a tsp tour is open or closed, and if open, whether the tour have fixed start and/or end point. -
Exception Summary Exception Description LinkNotFoundException Thrown when a link(s) cannot be found.LODNetworkException Base exception class for Load-On-Demand network analysis.MethodNotSupportedException Thrown when an unsupported or invalid method is called.NodeNotFoundException Thrown when a node(s) cannot be found.