com.supermap.analyst.networkanalyst3d

类 FacilityAnalyst3D



  • public class FacilityAnalyst3D
    extends InternalHandleDisposable

    三维设施网络分析类。该类提供数据检查功能,以及查找结点或弧段到源或汇之间的弧段、上游追踪、下游追踪和上游最近设施查找等分析功能。

    设施网络,是对现实世界中的常见网络和基础设施的模拟,如供水网、输电线、通信线路、天然气管道、河流等,其共同的特点是资源的流动具有方向。

    三维设施网络分析是基于创建了流向的三维网络数据集的分析,是三维网络分析的重要内容,目前提供的主要功能有:查找结点或弧段到源或汇之间的弧段、上下游追踪、上游最近设施查找等。

    相对于传统的二维设施网络分析,三维设施网络分析由于其真实的三维展现,从而能够更好地为设施网络的设计、施工、突发事故处理等提供指导和决策支持。

    三维设施网络分析的一般步骤:

    1.(可选)建议对用于分析的网络数据集进行数据检查(check 方法);

    2.设置三维设施网络分析环境( setAnalystSetting() 方法);

    3.加载网络模型( load() 方法);

    4.使用 FacilityAnalyst3D 类提供的各种设施网络分析方法进行相应的分析。

    • 构造器详细资料

      • FacilityAnalyst3D

        public FacilityAnalyst3D()
        构造一个新的 FacilityAnalyst3D 对象。
    • 方法详细资料

      • getAnalystSetting

        public FacilityAnalystSetting3D getAnalystSetting()
        返回分析环境设置对象。
        返回:
        分析环境设置对象。
      • setAnalystSetting

        public void setAnalystSetting(FacilityAnalystSetting3D value)
        设置分析环境设置对象。
        参数:
        value - 分析环境设置对象。
      • load

        public boolean load()
        加载网络模型。根据分析环境对象中的环境参数,加载网络模型,该方法在设置完AnalystSetting后调用
        返回:
        boolean 返回一个布尔值,加载成功返回true,失败返回false。
      • check

        public FacilityAnalystCheckResult3D check()
        对三维设施网络数据集进行数据检查,返回三维设施网络分析数据检查结果对象。
        返回:
        三维设施网络分析数据检查结果对象。
      • findSourceFromEdge

        public FacilityAnalystResult3D findSourceFromEdge(int edgeID,
                                                          java.lang.String weightName,
                                                          boolean isUncertainDirectionValid)
        基于弧段查找源头,传入弧段ID,返回从弧段到源头之间的弧段ID数组
        参数:
        edgeID - 传入ID。
        weightName - 权值字段信息名称。
        isUncertainDirectionValid - 环路是否有效。
        返回:
        从弧段到源头之间的弧段ID数组。
      • findSinkFromNode

        public FacilityAnalystResult3D findSinkFromNode(int nodeID,
                                                        java.lang.String weightName,
                                                        boolean isUncertainDirectionValid)
        基于节点查找交汇,传入节点ID,返回从节点到交汇之间的弧段ID数组
        参数:
        nodeID - 传入ID。
        weightName - 权值字段信息名称。
        isUncertainDirectionValid - 环路是否有效。
        返回:
        从节点到交汇之间的弧段ID数组。
      • findSinkFromEdge

        public FacilityAnalystResult3D findSinkFromEdge(int edgeID,
                                                        java.lang.String weightName,
                                                        boolean isUncertainDirectionValid)
        基于弧段查找交汇,传入弧段ID,返回从弧段到交汇之间的弧段ID数组。
        参数:
        edgeID - 传入ID。
        weightName - 权值字段信息名称。
        isUncertainDirectionValid - 环路是否有效。
        返回:
        从弧段到交汇之间的弧段ID数组。
      • traceUpFromNode

        public FacilityAnalystResult3D traceUpFromNode(int nodeID,
                                                       java.lang.String weightName,
                                                       boolean isUncertainDirectionValid)
        上游追踪,返回从分析点上游追踪所流经弧段ID数组
        参数:
        nodeID - 传入ID。
        weightName - 权值字段信息名称。
        isUncertainDirectionValid - 环路是否有效。
        返回:
        从分析点上游追踪所流经弧段ID数组。
      • traceUpFromEdge

        public FacilityAnalystResult3D traceUpFromEdge(int edgeID,
                                                       java.lang.String weightName,
                                                       boolean isUncertainDirectionValid)
        上游追踪,返回从弧段上游追踪所流经弧段ID数组
        参数:
        edgeID - 传入ID。
        weightName - 权值字段信息名称。
        isUncertainDirectionValid - 环路是否有效。
        返回:
        从弧段上游追踪所流经弧段ID数组。
      • traceDownFromNode

        public FacilityAnalystResult3D traceDownFromNode(int nodeID,
                                                         java.lang.String weightName,
                                                         boolean isUncertainDirectionValid)
        下游追踪,返回从分析点下游追踪所流经弧段ID数组。
        参数:
        nodeID - 传入ID。
        weightName - 权值字段信息名称。
        isUncertainDirectionValid - 环路是否有效。
        返回:
        从分析点下游追踪所流经弧段ID数组。
      • traceDownFromEdge

        public FacilityAnalystResult3D traceDownFromEdge(int edgeID,
                                                         java.lang.String weightName,
                                                         boolean isUncertainDirectionValid)
        下游追踪,返回从分析点或弧段下游追踪所流经弧段ID数组
        参数:
        edgeID - 传入ID
        weightName - 权值字段信息名称
        isUncertainDirectionValid - 环路是否有效
        返回:
        从分析点或弧段下游追踪所流经弧段ID数组。
      • findCriticalFacilitiesUpFromNode

        public FacilityAnalystResult3D findCriticalFacilitiesUpFromNode(int[] sourceNodeIDs,
                                                                        int nodeID,
                                                                        boolean isUncertainDirectionValid)
        设施网络上游分析,找出上游最近设施结点,用户可以指定一个结点或弧段ID,从满足条件的结点数组中找到上游最近的设施结点。
        参数:
        sourceNodeIDs - 传入的满足条件的结点ID数组,分析得到的结果是此数组sourceNodeIDs的一个子集,如果传入数组为空,则查询所有的结点。
        nodeID - 传入的ID。
        isUncertainDirectionValid - 环路是否有效。
        返回:
        上游最近的设施结点。
      • findCriticalFacilitiesUpFromEdge

        public FacilityAnalystResult3D findCriticalFacilitiesUpFromEdge(int[] sourceNodeIDs,
                                                                        int edgeID,
                                                                        boolean isUncertainDirectionValid)
        设施网络上游分析,找出上游最近设施结点,用户可以指定一个结点或弧段ID,从满足条件的结点数组中找到上游最近的设施结点
        参数:
        sourceNodeIDs - 传入的满足条件的结点ID数组,分析得到的结果是此数组nodeIDs的一个子集,如果传入数组为空,则查询所有的结点。
        edgeID - 传入的ID。
        isUncertainDirectionValid - 环路是否有效。
        返回:
        上游最近设施结点。
      • dispose

        public void dispose()
        释放对象