• geoscene/networks

UtilityNetwork

AMD: require(["geoscene/networks/UtilityNetwork"], (UtilityNetwork) => { /* code goes here */ });
ESM: import UtilityNetwork from "@geoscene/core/networks/UtilityNetwork";
类: geoscene/networks/UtilityNetwork
继承于:UtilityNetwork Network Accessor
起始版本:GeoScene Maps SDK for JavaScript 4.20

此类包含有关从 WebMap 检索的公共设施网络数据集的元数据。要访问完整属性,用户需要调用 webmap 的 load() 方法。某些属性在不调用 load 的情况下可用,例如 idtitle。在 4.20 中,只能从具有公共设施网络图层的 web 地图中检索此对象。

另请参阅
示例
require([
  "geoscene/WebMap",
  "geoscene/views/MapView",
  "geoscene/config"
], (WebMap, MapView, geosceneConfig) => {
  let utilityNetwork;

  // set the hostname to the portal instance
  geosceneConfig.portalUrl = "https://myHostName.domain.com/geoscene";

  const webMap = new WebMap({
    portalItem: {
      id: "webmapID"
    }
  });

  const mapView = new MapView({
    map: webMap
  });

  webMap.when(async () => {
    // check if webMap contains utility networks
    if (webMap.utilityNetworks.length > 0) {
      // assign the utility network at index 0
      utilityNetwork = webMap.utilityNetworks.getItemAt(0);

      // trigger the loading of the UtilityNetwork instance
      await utilityNetwork.load();
    }
  });
});

构造函数

new UtilityNetwork(properties)
参数
properties Object
optional

有关可能传递给构造函数的所有属性的列表,请参见属性

属性概述

可以设置、检索或侦听任何属性。请参阅使用属性主题。
显示继承属性 隐藏继承属性
名称 类型 描述
Object

完整的网络定义,只有在加载网络后才可访问。

更多详情
Network
String

在后端数据库中定义的网络的物理数据集名称。

更多详情
Network
String

类的名称。

更多详情
Accessor
String[]

返回公共设施网络中的所有域网络

更多详情
UtilityNetwork
String

返回此网络所属的根要素服务 url。

更多详情
Network
Extent

网络的完整范围,基于用于创建网络的服务区域定义。

更多详情
Network
String

用于标识 webmap 规范中定义的网络的随机唯一 id (UUID)。

更多详情
Network
Number

网络的图层 id。

更多详情
Network
String

webmap 规范中定义的网络图层 id 的完整 url。

更多详情
Network
Boolean

指示网络实例是否已加载。

更多详情
Network
Error

如果加载时发生错误,则返回 Error 对象。

更多详情
Network
String

表示 load 操作的状态。

更多详情
Network
Object[]

加载时发生的警告列表。

更多详情
Network
String

返回网络服务器的 url。

更多详情
Network
NetworkSystemLayers

包含公共设施网络规则、子网和脏区表或图层的 url 和 ID。

更多详情
UtilityNetwork
String

网络的门户用户所有者。

更多详情
Network
String

将 url 转换为 url 对象

更多详情
Network
Number

包含公共设施网络规则表的服务图层 id。

更多详情
UtilityNetwork
String

包含公共设施网络规则表的服务 url。

更多详情
UtilityNetwork
Number

网络的逻辑示意图版本。

更多详情
Network
Number

用于定义公共设施网络范围的服务区域类的图层 id。

更多详情
UtilityNetwork
NamedTraceConfiguration[]

此属性返回 web 地图上共享的追踪配置列表。

更多详情
UtilityNetwork
Object更多详情Network
SpatialReference

网络的空间参考,在创建网络时定义,通常来自服务区域类。

更多详情
Network
Number

包含公共设施网络子网表的服务图层 id。

更多详情
UtilityNetwork
String

包含公共设施网络子网表的服务 url。

更多详情
UtilityNetwork
TerminalConfiguration[]

返回公共设施网络上的所有终端网络。

更多详情
UtilityNetwork
String

webmap 规范中定义的网络名称。

更多详情
Network
String

数据集的类型。

更多详情
UtilityNetwork

属性详细信息

dataElement Object inherited

完整的网络定义,只有在加载网络后才可访问。

datasetName Stringreadonly inherited

在后端数据库中定义的网络的物理数据集名称。仅在加载网络时才可访问。

declaredClass Stringreadonly inherited

类的名称。声明的类名称格式化为 geoscene.folder.className

domainNetworkNames String[]readonly

返回公共设施网络中的所有域网络。域网络包含传递的资源流经的网络要素。

featureServiceUrl Stringreadonly inherited

返回此网络所属的根要素服务 url。

示例
`https://utilitynetwork.geosceneonline.cn/server/rest/services/NapervilleElectric/FeatureServer/`
fullExtent Extent inherited

网络的完整范围,基于用于创建网络的服务区域定义。

用于标识 webmap 规范中定义的网络的随机唯一 id (UUID)。在共享 webmap 期间生成。

layerId Numberreadonly inherited

网络的图层 id。

layerUrl String inherited

webmap 规范中定义的网络图层 id 的完整 url。例如,https://utilitynetwork.geosceneonline.cn/server/rest/services/NapervilleElectric/FeatureServer/17 (其中 17 是网络的图层 ID)

loaded Booleanreadonly inherited

指示网络实例是否已加载。如果为 true,则可访问对象的所有属性。

默认值:false
loadError Errorreadonly inherited

如果加载时发生错误,则返回 Error 对象。

默认值:null
loadStatus Stringreadonly inherited

表示 load 操作的状态。

描述
not-loaded 对象的资源尚未加载。
loading 对象的资源当前正在加载。
loaded 对象的资源已加载且未出现错误。
failed 无法加载对象的资源。有关更多详情,请参阅 loadError

可能值"not-loaded"|"loading"|"failed"|"loaded"

默认值:not-loaded
loadWarnings Object[]readonly inherited

加载时发生的警告列表。

networkServiceUrl Stringreadonly inherited

返回网络服务器的 url。

示例
`https://utilitynetwork.geosceneonline.cn/server/rest/services/NapervilleElectric/UtilityNetworkServer/`
networkSystemLayers NetworkSystemLayersreadonly

包含公共设施网络规则、子网和脏区表或图层的 url 和 ID。

示例
// Print out the dirty areas layer url in the utility network
view.when(async () => {
  // Check if the webmap contains utility networks
  if(webmap?.utilityNetworks?.length > 0) {
    // Assigns the utility network at index 0
    utilityNetwork = webmap.utilityNetworks.getItemAt(0);

    // Load the utility network
    await utilityNetwork.load();

    // Print the dirty areas layer url and id
    console.log(`Dirty areas layer id: ${utilityNetwork.networkSystemLayers.dirtyAreasLayerId}`);
    console.log(`Dirty areas layer url: ${utilityNetwork.networkSystemLayers.dirtyAreasLayerUrl}`);
  }
});
owner Stringreadonly inherited

网络的门户用户所有者。此门户用户可以对网络执行管理操作。

parsedUrl Stringreadonly inherited

将 url 转换为 url 对象

rulesTableId Numberreadonly
已弃用从 4.25 版开始。请改为使用 networkSystemLayers.rulesTableId

包含公共设施网络规则表的服务图层 id。

rulesTableUrl Stringreadonly
已弃用从 4.25 版开始。请改为使用 networkSystemLayers.rulesTableUrl

包含公共设施网络规则表的服务 url。

schemaGeneration Numberreadonly inherited

网络的逻辑示意图版本。每个版本的网络都引入了新的特性和功能。例如,使用 GeoScene Pro 3.0 创建的公共设施网络将具有版本 5 的示意图生成。而使用 GeoScene Pro 2.0.1 创建的公共设施网络将是版本 4。

serviceTerritoryFeatureLayerId Numberreadonly

用于定义公共设施网络范围的服务区域类的图层 id。当服务区域图层未发布到要素服务时,值为 null

sharedNamedTraceConfigurations NamedTraceConfiguration[]

此属性返回 web 地图上共享的追踪配置列表。当 webmap 上未共享任何追踪配置时,该值为空。此属性可以在不完全加载公共设施网络的情况下使用,但只有 globalIdtitle 可用。

sourceJSON Object inherited
spatialReference SpatialReference inherited

网络的空间参考,在创建网络时定义,通常来自服务区域类。

subnetworksTableId Numberreadonly
已弃用从 4.25 版开始。请改为使用 networkSystemLayers.subnetworksTableId

包含公共设施网络子网表的服务图层 id。子网表包含有关公共设施网络中所有现有子网和已删除子网的信息。

subnetworksTableUrl Stringreadonly
已弃用从 4.25 版开始。请改为使用 networkSystemLayers.subnetworksTableUrl

包含公共设施网络子网表的服务 url。

terminalConfigurations TerminalConfiguration[]readonly

返回公共设施网络上的所有终端网络。终端配置定义了设备有多少个终端以及如何设置这些终端。必须加载公共设施网络才能访问此设施。

webmap 规范中定义的网络名称。表示在共享 web 地图时定义的网络图层的图层名称。

type Stringreadonly

数据集的类型。如果对象表示公共设施网络,则返回 utility

对于 UtilityNetwork,类型总是 "utility"

默认值:"utility"

方法概述

显示继承的方法 隐藏继承的方法
名称 返回值类值 描述

添加一个或多个与对象的生命周期相关联的句柄。

更多详情
Accessor

如果 load() 操作已在进行中,则取消它。

更多详情
Network
*

创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。

更多详情
Network
Number

网络由源 (类) 组成,每个源都有一个唯一 ID。

更多详情
Network
TerminalConfiguration

所有设备功能都具有终端配置 (默认单终端)。

更多详情
UtilityNetwork
String[]

获取域网络的名称,并返回一个包含其层名称的数组。

更多详情
UtilityNetwork
Boolean

如果存在指定的句柄组,则返回 true。

更多详情
Accessor
Boolean

isFulfilled() 可用于验证创建类的实例是否已完成 (已解决或已拒绝)。

更多详情
Network
Boolean

isRejected() 可用于验证创建类的实例是否被拒绝。

更多详情
Network
Boolean

isResolved() 可用于验证创建类的实例是否已解决。

更多详情
Network
Promise

触发 UtilityNetwork 实例的加载。

更多详情
UtilityNetwork
Promise<NamedTraceConfiguration[]>

命名追踪配置允许您在网络中添加和存储复杂的追踪,这些追踪可以通过 web 地图在整个组织中共享,并由 web 和外业应用程序使用。

更多详情
Network

移除对象拥有的句柄组。

更多详情
Accessor
Object

将此类的实例转换为 GeoScene Portal JSON 表示。

更多详情
Network
Promise

一旦创建了类的实例,就可以使用when()

更多详情
Network

方法详细说明

addHandles(handleOrHandles, groupKey)inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。

// Manually manage handles
const handle = reactiveUtils.when(
  () => !view.updating,
  () => {
    wkidSelect.disabled = false;
  },
  { once: true }
);

// Handle gets removed when the object is destroyed.
this.addHandles(handle);
参数
handleOrHandles WatchHandle|WatchHandle[]

对象销毁后,标记为要移除的句柄。

groupKey *
optional

标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。

cancelLoad()inherited

如果 load() 操作已在进行中,则取消它。

fromJSON(json){*}static

创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。传入到输入 json 参数的对象通常来自对 REST API 中查询操作的响应或来自另一个 GeoScene 产品的 toJSON() 方法。有关何时以及如何使用该函数的详细信息和示例,请参阅指南中的使用 fromJSON() 主题。

参数
json Object

GeoScene 格式实例的 JSON 表示。有关各种输入 JSON 对象的结构示例,请参阅 GeoScene REST API 文档

返回
类型 描述
* 返回该类的新实例。
getLayerIdBySourceId(id){Number}inherited

网络由源 (类) 组成,每个源都有一个唯一 ID。这些源 Id 用于在网络拓扑中执行遍历。追踪端点不知道图层,仅返回结果源。此方法返回给定源 Id 的 layerId。用作处理追踪结果的辅助方法。

参数

源的 id。

返回
类型 描述
Number 图层 id。
getTerminalConfiguration(feature){TerminalConfiguration}

所有设备功能都具有终端配置 (默认单终端)。用户可以使用此方法检索给定功能的已分配终端配置。此方法采用图形/要素,使用网络源旁的 ASSETGROUPASSETTYPE 字段来查找分配的终端配置。如果未填充 ASSETGROUPASSETTYPElayer,则返回 null。如果找不到终端配置对象,则返回 null

参数
feature Graphic

从中获取终端配置的图形要素。必须属于设备图层,并且填充了 ASSETGROUPASSETTYPE 字段。

返回
类型 描述
TerminalConfiguration 终端配置对象。除非另有配置,否则大多数设备都有一个终端配置。
getTierNames(domainNetworkName){String[]}

获取域网络的名称,并返回一个包含其层名称的数组。域网络可以有一个或多个层。层是域网络的子组,表示子网的逻辑层次结构。

参数
domainNetworkName String

域网络的名称。

返回
类型 描述
String[] 返回层名称数组。
hasHandles(groupKey){Boolean}inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

如果存在指定的句柄组,则返回 true。

参数
groupKey *
optional

组键。

返回
类型 描述
Boolean 如果存在指定的句柄组,则返回 true
示例
// Remove a named group of handles if they exist.
if (obj.hasHandles("watch-view-updates")) {
  obj.removeHandles("watch-view-updates");
}
isFulfilled(){Boolean}inherited

isFulfilled() 可用于验证创建类的实例是否已完成 (已解决或已拒绝)。如果满足,则返回 true

返回
类型 描述
Boolean 指示创建类的实例是否已完成 (已解决或已拒绝)。
isRejected(){Boolean}inherited

isRejected() 可用于验证创建类的实例是否被拒绝。如果被拒绝,则返回 true

返回
类型 描述
Boolean 指示创建类的实例是否已被拒绝。
isResolved(){Boolean}inherited

isResolved() 可用于验证创建类的实例是否已解决。如果已解决,则返回 true

返回
类型 描述
Boolean 指示创建类的实例是否已解决。
load(){Promise}

触发 UtilityNetwork 实例的加载。

完全加载公共设施网络定义和所有共享的命名追踪配置。

返回
类型 描述
Promise 加载 UtilityNetwork 时解析。
queryNamedTraceConfigurations(query, options){Promise<NamedTraceConfiguration[]>}inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

命名追踪配置允许您在网络中添加和存储复杂的追踪,这些追踪可以通过 web 地图在整个组织中共享,并由 web 和外业应用程序使用。此方法可返回满足特定搜索条件的 NamedTraceConfiguration 对象列表。用于查找公共设施网络中现有的命名追踪配置

参数
query Object
optional

用于确定将返回哪些命名追踪配置的查询参数。

规范
creators String[]
optional

要查询的命名追踪配置创建者的数组。

globalIds String[]
optional

要查询的命名追踪配置 globalIds (UUID) 数组。

names String[]
optional

要查询的命名追踪配置名称的数组。

optional

要查询的命名追踪配置用户标签的数组。

optional

用户在数据请求中指定的请求选项。有关可用属性,请参阅 RequestOptions

返回
类型 描述
Promise<NamedTraceConfiguration[]> 使用基于查询参数过滤的命名追踪配置数组进行解析。
示例
// Initialize the query object with global IDs of the named trace configurations to query.
const query = {
  globalIds: ["5dbb5a13-ab2f-452d-bfcb-6f98154ccb9d", "cf568e46-f200-486c-adb1-d008a3da0ed1"],
}

// Query the utility network named trace configurations
// and filter the results by the query object.
const namedTraceConfigurations = await utilityNetwork.queryNamedTraceConfigurations(query);

// Print the named trace configurations to the console.
console.log(namedTraceConfigurations)
// Calling this method without parameters returns all named trace configurations in the utility network.
const namedTraceConfigurations = await utilityNetwork.queryNamedTraceConfigurations();

// Print all the named trace configurations to the console.
console.log(namedTraceConfigurations);
removeHandles(groupKey)inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

移除对象拥有的句柄组。

参数
groupKey *
optional

要移除的组键或组键的数组或集合。

示例
obj.removeHandles(); // removes handles from default group

obj.removeHandles("handle-group");
obj.removeHandles("other-handle-group");
toJSON(){Object}inherited

将此类的实例转换为 GeoScene Portal JSON 表示。有关详细信息,请参阅使用 fromJSON() 指南主题。

返回
类型 描述
Object 此类实例的 GeoScene Portal JSON 表示。
when(callback, errback){Promise}inherited

一旦创建了类的实例,就可以使用when() 。此方法接受两个输入参数:callback 函数和 errback 函数。callback 在类的实例加载时执行。errback 在类的实例无法加载时执行。

参数
callback Function
optional

当 promise 解决时调用的函数。

errback Function
optional

当 promise 失败时执行的函数。

返回
类型 描述
Promise 返回 callback 结果的新承诺,可用于链接其他函数。
示例
// Although this example uses MapView, any class instance that is a promise may use when() in the same way
let view = new MapView();
view.when(function(){
  // This function will execute once the promise is resolved
}, function(error){
  // This function will execute if the promise is rejected due to an error
});

您的浏览器不再受支持。请升级您的浏览器以获得最佳体验。请参阅浏览器弃用帖子以获取更多信息