com.supermap.services.components.spi

Interface FacilityAnalystProvider



  • public interface FacilityAnalystProvider
    

    Facility Network Analysis Service Provider

    SuperMap Facility Network Analysis Service Provider provides services related to network analysis of SuperMap facilities, encapsulating GIS functions related to network analysis of SuperMap facilities.

    • Method Detail

      • checkLoops

        Feature[] checkLoops()
        

        Checks the loop. Returns all arcs that make up the loop.

        A loop is an arc that has an ineffective flow in the network. In SuperMap, the flow of network datasets for facility network analysis is stored in the flow field and there are four flow field values:

        value significance
        0 The direction of flow is the same as the line
        1 The direction of flow is the same as the line
        2 Loop
        3 Not connected arc

        The following figure to line AB as an example to describe the flow field value to determine. If the point A is the source point, the direction of the water flow (assuming the facility is a river) should be from A-> B, which is the same as the direction of the line (A-> B), and the flow field value is 0; if B Is the source point, then the flow will flow from B to point A, then the direction of the flow and the direction of the line (A-> B) is the opposite, then flow field value of 1.

        Loop: If both A and B are source, the direction of the flow is the same as the direction of the line at point A, and the opposite direction to the line at the point B where is the source, constitutes an ineffective flow Called loop. As shown below:Example:

        Returns:
        All the arcs that make up the loop.
      • findCommonAncestors

        FacilityAnalystResult findCommonAncestors(int[] elementIDs,
                                                FacilityElementType elementType,
                                                boolean isLoopValid,
                                                FacilityAnalystResultOption option)
        

        Returns the common upstream of a given node or arc.

        Parameters:
        elementIDs - Node or arc ID list.
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        isLoopValid - Whether the loop is valid. When the parameter is true, the loop is valid and the trace analysis continues. When the parameter is false, the loop is invalid and the trace analysis ends.
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        Common upstream analysis results.
      • findCommonCatchements

        FacilityAnalystResult findCommonCatchements(int[] elementIDs,
                                                  FacilityElementType elementType,
                                                  boolean isLoopValid,
                                                  FacilityAnalystResultOption option)
        

        Returns the common downstream of a given node or arc.

        Parameters:
        elementIDs - Node or arc ID list.
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        isLoopValid - Whether the loop is valid. When the parameter is true, the loop is valid and the trace analysis continues. When the parameter is false, the loop is invalid and the trace analysis ends.
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        Common downstream analysis results.
      • findConnected

        FacilityAnalystResult findConnected(int[] elementIDs,
                                          FacilityElementType elementType,
                                          FacilityAnalystResultOption option)
        

        Connectivity analysis, returns all arcs connected to a given network node or arc.

        Parameters:
        elementIDs - Node or arc ID list.
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        All arcs connected to the analysis node / arc.
      • findDisConnected

        FacilityAnalystResult findDisConnected(int[] elementIDs,
                                             FacilityElementType elementType,
                                             FacilityAnalystResultOption option)
        

        DIsconnectivity analysis, returns all arcs disconnected to a given network node or arc.

        Parameters:
        elementIDs - Node or arc ID list.
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        All arcs connected to the analysis node / arc.
      • findLoops

        FacilityAnalystResult findLoops(int[] elementIDs,
                                      FacilityElementType elementType,
                                      FacilityAnalystResultOption option)
        

        Finds loops look for loops connected to these arcs or nodes based on a given arc or node.

        Parameters:
        elementIDs - Node or arc ID list.
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        All loops connected to the analysis node / arc.
      • findPath

        FacilityAnalystResult findPath(int elementID,
                                     FacilityElementType elementType,
                                     FlowDirection direction,
                                     java.lang.String weightName,
                                     FacilityAnalystResultOption option)
        

        Shortest path search, you can find the shortest path upstream, or the shortest path downstream.

        Parameters:
        elementIDs - Node or arc ID .
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        direction -
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        The analysis results of the shortest path to the upstream or downstream.
      • findPath

        FacilityAnalystResult findPath(int fromElementID,
                                     int endElementID,
                                     FacilityElementType elementType,
                                     java.lang.String weightName,
                                     FacilityAnalystResultOption option)
        

        Finds the shortest path between two nodes or arcs.

        Parameters:
        fromElementID - Starting node or arc ID .
        endElementID - ending node or arc ID .
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        direction -
        weight - The weight field name of the path analysis.
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        Results of the shortest path analysis.
      • trace

        FacilityAnalystResult trace(int elementID,
                                  FacilityElementType elementType,
                                  FlowDirection direction,
                                  FacilityAnalystResultOption option)
        

        Tracks all the arcs flowing through a given analysis node / arc to upstream or downstream.

        Parameters:
        elementIDs - Node or arc ID .
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        direction - Path finding direction, can be upstream or downstream.
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        Tracks the analysis result set.
      • findSink

        FacilityAnalystResult findSink(int elementID,
                                     FacilityElementType elementType,
                                     FacilityAnalystResultOption option)
        

        Finds the farthest sinks. Returns all the arcs flowing through.

        Parameters:
        elementIDs - Node or arc ID .
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        All the arcs the analysis of elements to the furthest of the sink through from .
      • findSource

        FacilityAnalystResult findSource(int elementID,
                                       FacilityElementType elementType,
                                       FacilityAnalystResultOption option)
        

        Finds the farthest sinks. Returns all the arcs flowing through.

        Parameters:
        elementIDs - Node or arc ID .
        elementType - The type of facility element to be analyzed. Can be a node or arc.
        option - Facility network analysis result setting.
        mapParameter - Output the parameters of the map image. Including the scope, scale, background transparency of the map and so on.
        Returns:
        All the arcs flow through.
      • getPrjCoordSys

        PrjCoordSys getPrjCoordSys()
        

        Gets the projection information of the network dataset.

        Returns:
        The projection information of the network dataset.
      • getWeightNames

        java.lang.String[] getWeightNames()
        

        Gets the name of the weight field.

        Returns:
        The name of the weight field.
      • findNode

        Geometry findNode(Point2D point)
        

        According to the given coordinate point, finds the network node closest to the coordinate point.

        Parameters:
        point - The given coordinate point.
        Returns:
        The network node closest to the coordinate point.
      • findEdge

        Geometry findEdge(Point2D point)
        

        According to the given coordinate point, finds the network arc closest to the coordinate point.

        Parameters:
        point - The given coordinate point.
        Returns:
        The network arc closest to the coordinate point.