WebStyleSymbol

AMD: require(["geoscene/symbols/WebStyleSymbol"], (WebStyleSymbol) => { /* 代码 */ });
ESM: import WebStyleSymbol from "@geoscene/core/symbols/WebStyleSymbol";
类: geoscene/symbols/WebStyleSymbol
继承于: WebStyleSymbol Symbol Accessor
起始版本: GeoScene API for JavaScript 4.22

WebStyleSymbol 是一个用于方便地创建矢量 2D 符号以及逼真和主题 3D 符号的类。它是一个包装器,用于创建指向API中可用的Web样式资源的 CIMSymbol 和 PointSymbol3D 对象。

web-styleweb-style

Web 样式是存储在 GeoScene Enterprise 门户或 GeoScene Online 项目中的符号的集合。从当前版本开始,只有 GeoScene Web 样式符号 (2D) 和 GeoScene Web 样式符号 (3D) 可以与此类结合使用。请注意,2D Web 样式符号仅在 2D 中受支持,3D Web 样式符号仅在 3D 中受支持,但 EsriIconsStyle 除外,它可在 2D 和 3D 中使用。

WebStyleSymbol 本身不包含任何符号系统定义;它仅包含对 Web 样式符号的引用。出于可视化目的,它在内部被替换为 CIMSymbol 或它所引用的 PointSymbol3D 实例。您可以使用 fetchSymbol() 从 Web 样式中检索实际的符号对象,以更改其颜色或大小。

Web 样式可以直接使用 URL (styleUrl) 或注册样式的唯一名称 (styleName)引用。

已知限制

示例:
示例代码:
// Referencing a web style via styleName
let symbol = {
  type: "web-style",  // 转换成 new WebStyleSymbol()
  styleName: "EsriThematicShapesStyle",
  name: "Standing Diamond"
};
// Referencing a web style via styleUrl
let symbol = {
  type: "web-style",  // 转换成 new WebStyleSymbol()
  styleUrl: "http://www.geosceneonline.cn/geoscene/sharing/rest/content/items/273209ef274343e69db22aceae23cf00/data",
  name: "Centered Sphere"
};

构造函数

new WebStyleSymbol(properties)
参数:
properties Object
optional

所有可传入构造函数的属性,请参见属性列表

属性列表

可以设置、检索或监听的属性。参见 使用属性
展示继承属性 隐藏继承属性
属性 类型 描述
String更多信息

类名。

更多信息Accessor
String更多信息

Web 样式中符号的名称。

更多信息WebStyleSymbol
Portal更多信息

包含此符号所指的 web 样式的门户。

更多信息WebStyleSymbol
String更多信息

已注册的 Web 样式名称。

更多信息WebStyleSymbol
String更多信息

指向 Web 样式定义的 URL。

更多信息WebStyleSymbol
String更多信息对于 WebStyleSymbol,类型始终为 "web-style"。更多信息WebStyleSymbol

属性详细说明

declaredClass Stringreadonly inherited
起始版本: GeoScene API for JavaScript 4.22

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

name String

Web 样式中符号的名称。Web 样式中的每个符号都由唯一的名称标识。此处只能引用 GeoScene Web 样式符号 (2D) 和 GeoScene Web 样式符号 (3D)。

示例:

包含此符号所指的 web 样式的门户。仅当设置 styleName 时才需要。

默认为 config.portalUrl 中的值(例如 https://www.geosceneonline.cn)。

styleName String

已注册的 Web 样式名称。此处只能引用 GeoScene Web 样式符号 (2D) 和 GeoScene Web 样式符号 (3D)。请注意,2D Web 样式符号仅在 2D 中受支持,3D Web 样式符号仅在 3D 中受支持,但 EsriIconsStyle 除外,它可在 2D 和 3D 中使用。

需要设置 portal 属性。不能与 styleUrl 结合使用。

请参阅类描述的例子。

示例:
styleUrl String

指向 Web 样式定义的 URL。不能与 styleName 和 portal 结合使用。

请参阅类描述的例子。

type Stringreadonly

对于 WebStyleSymbol,类型始终为 "web-style"。

方法列表

展示继承方法 隐藏继承方法
属性 返回值类型 描述
WebStyleSymbol更多信息

创建符号的深层克隆。

更多信息WebStyleSymbol
Promise<CIMSymbol>更多信息

返回 WebStyleSymbol 引用的 CIMSymbol 实例。

更多信息WebStyleSymbol
Promise<PointSymbol3D>更多信息

下载并返回 WebStyleSymbol引用的 PointSymbol3D 实例。

更多信息WebStyleSymbol
*更多信息

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

更多信息Symbol
Object更多信息

将此类的实例转换为其 GeoScene portal JSON 格式。

更多信息Symbol

方法详细说明

clone(){WebStyleSymbol}

创建符号的深层克隆。

返回值:
类型 描述
WebStyleSymbol 返回调用此方法对象的深拷贝。
示例代码:
// Creates a deep clone of the graphic's symbol
let symLyr = graphic.symbol.clone();
fetchCIMSymbol(options){Promise<CIMSymbol>}
起始版本: GeoScene API for JavaScript 4.22

返回 WebStyleSymbol 引用的 CIMSymbol 实例。

参数:
options Object
optional

具有如下属性的对象。

规范:
signal AbortSignal
optional

可用于中止异步任务的 Signal 对象。 当发出中止信号时,返回的 Promise 将被一个名为 AbortErrorError 拒绝。另请参阅 AbortController 以获取有关如何构造可用于传递中止 signals 的控制器的更多信息。

返回值:
类型 描述
Promise<CIMSymbol> 解析后,返回 CIMSymbol 实例。
示例代码:
// Given a SimpleRenderer with a WebStyleSymbol,
// fetch the corresponding CIMSymbol,
// then replace the renderer symbol with the returned CIMSymbol
renderer.symbol.fetchCIMSymbol().then(function (cimSymbol) {
  renderer.symbol = cimSymbol;
});
fetchSymbol(options){Promise<PointSymbol3D>}

下载并返回 WebStyleSymbol引用的 PointSymbol3D 实例。

参数:
options Object
optional

具有如下属性的对象。

规范:
signal AbortSignal
optional

可用于中止异步任务的 Signal 对象。 当发出中止信号时,返回的 Promise 将被一个名为 AbortErrorError 拒绝。另请参阅 AbortController 以获取有关如何构造可用于传递中止 signals 的控制器的更多信息。

返回值:
类型 描述
Promise<PointSymbol3D> 解析后,返回 PointSymbol3D 实例。
示例:
示例代码:
// Given a SimpleRenderer with a WebStyleSymbol, replaces the symbol with its non-referencing version by fetching it
renderer.symbol.fetchSymbol().then(function(actualSymbol) {
  renderer.symbol = actualSymbol;
});


fromJSON(json){*}static

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

参数:
json Object

实例的 json 表达式,以geoscene 格式显示。

返回值:
类型 描述
* 返回一个该类的新实例。
toJSON(){Object}inherited

将此类的实例转换为 GeoScene portal JSON 格式。 有关更多信息,请参阅 使用 fromJSON() 指南。

返回值:
类型 描述
Object 此类实例的 GeoScene portal JSON 格式。

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.