UNPKG

imobile_for_reactnative

Version:

iMobile for ReactNative,是SuperMap iMobile推出的一款基于React-Native框架的移动应用开发工具。基于该开发工具,用户可以使用JavaScript开发语言,开发出在Android和IOS操作系统下运行的原生移动GIS应用,入门门槛低,一次开发,处处运行。

75 lines (69 loc) 2.44 kB
/** * 设施网络分析类,主要用于进行各类连通性分析和追踪分析 * Author: ysl */ import { NativeModules, } from 'react-native' import { Point2D, TEngineType } from '../data/SData' import { LayerInfo } from '../mapping/SMap' import { AnalystSetting } from './SAnalystType' const Analyst = NativeModules.SFacilityAnalyst /** * 加载设施网络分析模型 * @param datasourceInfo 目标数据源 * @param setting 设施分析配置对象 * @returns 加载成功返回true,否则返回false */ export function load (datasourceInfo: {alias: string, server: string, engineType: TEngineType}, setting: AnalystSetting): Promise<{ result: boolean, layerInfo: LayerInfo, } | null> { return Analyst.load(datasourceInfo, setting) } /** * 传入节点ID数组,查找与节点相连通的弧段ID数组 * @param ids 节点ID数组 * @returns 与节点相连通的弧段ID数组 */ export function findConnectedEdgesFromNodes (ids: number[] = []): Promise<number[]> { return Analyst.findConnectedEdgesFromNodes(ids) } /** * 设施网络路径分析,即根据给定的起始和终止结点ID,查找其间耗费最小的路径,返回该路径包含的弧段、结点及耗费。 * @param startNodeID 起点ID * @param endNodeID 终点ID * @param weightName 权重名称 * @param isUncertainDirectionValid 指定不确定流向是否有效 * @returns 该路径包含的弧段、结点及耗费 */ export function findPathFromNodes (startNodeID = -1, endNodeID = -1, weightName = 'Length', isUncertainDirectionValid = true): Promise<{ coast: number, edges: number[], nodes: number[], } | null> { return Analyst.findPathFromNodes(startNodeID, endNodeID, weightName, isUncertainDirectionValid) } /** * 设置网络路径分析起点 * @param point 网络路径分析起点 * @returns 起点ID */ export function setStartPoint (point: Point2D): Promise<number> { return Analyst.setStartPoint(point) } /** * 设置网络路径分析起点 * @param point 网络路径分析终点 * @returns 终点ID */ export function setEndPoint (point: Point2D): Promise<number> { return Analyst.setEndPoint(point) } /** * 清除跟踪层上的起始点和结果路径 * @returns 清除成功返回true,否则返回false */ export function clear (): Promise<boolean> { return Analyst.clear() }