ShadowCastViewModel

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

提供 ShadowCast 微件的逻辑。

另请参阅

构造函数

new ShadowCastViewModel(properties)
参数
properties Object
optional

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

属性概述

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

用于计算阴影投射的日历日期。

更多详情
ShadowCastViewModel
String

类的名称。

更多详情
Accessor
Accessor

当微件的 visualizationType 设置为 "discrete” 时使用的配置。

更多详情
ShadowCastViewModel
Accessor

当微件的 visualizationType 设置为 "duration” 时使用的配置。

更多详情
ShadowCastViewModel
Number

应停止阴影投射计算的时间 (从 date 午夜开始的毫秒数为单位)。

更多详情
ShadowCastViewModel
Number

应开始阴影投射计算的时间 (从 date 午夜开始的毫秒数为单位)。

更多详情
ShadowCastViewModel
String

视图模型的当前状态,可用于渲染微件的 UI。

更多详情
ShadowCastViewModel
Accessor

当微件的 visualizationType 设置为 "threshold" 时使用的配置。

更多详情
ShadowCastViewModel
Number

UTC 时间与微件中显示的时间之间的小时差。

更多详情
ShadowCastViewModel
SceneView

视图的引用。

更多详情
ShadowCastViewModel
String

显示阴影时要使用的可视化类型。

更多详情
ShadowCastViewModel

属性详细信息

date Date

用于计算阴影投射的日历日期。此日期不包括时间。如果设置了具有时间的日期,则在本地系统时间中,时间值将设置为该日期的午夜 (00:00:00)。如果未设置日期,则默认为本地系统时间的当前日期。

示例
widget.viewModel.date = new Date('June 1, 2021');
declaredClass Stringreadonly inherited

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

discreteOptions Accessor

当微件的 visualizationType 设置为 "discrete” 时使用的配置。

属性
color Color
optional
默认值:[50, 50, 50, 0.7]

阴影可视化的颜色。可视化效果的不透明度映射到重叠阴影的数量。没有阴影对应于不透明度 0,最大阴影数对应于此颜色值中设置的不透明度。

interval Number
optional
默认值:15 * 60 * 1000

各阴影按此时间间隔显示,从 startTimeOfDay 开始。间隔以毫秒为单位表示。默认情况下,它设置为 15 分钟 (15 * 60 * 1000)。如果设置为 0,将使用尽可能小的间隔,最多为 256 个样本。

intervalOptions Collection<number>
optional

可在 UI 中为用于显示阴影的时间间隔选择值 (以毫秒为单位)。

durationOptions Accessor

当微件的 visualizationType 设置为 "duration” 时使用的配置。

属性
color Color
optional
默认值:[50, 50, 50, 0.7]

阴影投射的颜色。不透明度映射到花费在阴影中的时间。未接收任何阴影的区域以零不透明度显示,并且在整个时间范围内接收阴影的区域将使用此属性中指定的不透明度显示。

mode String
optional
默认值:"continuous"

应显示累积阴影持续时间的模式:作为连续表面或作为值的每小时聚合。

可能值"continuous"|"hourly"

endTimeOfDay Number

应停止阴影投射计算的时间 (从 date 午夜开始的毫秒数为单位)。默认情况下,阴影投射的结束时间设置为 4PM (16 * 3600 * 1000ms)。

默认值:16 * 3600 * 1000
startTimeOfDay Number

应开始阴影投射计算的时间 (从 date 午夜开始的毫秒数为单位)。默认情况下,阴影投射的开始时间设置为 10AM (10 * 3600 * 1000ms)。

默认值:10 * 3600 * 1000
state Stringreadonly

视图模型的当前状态,可用于渲染微件的 UI。

描述
disabled 正在创建微件
ready 微件已就绪

可能的值"disabled"|"ready"

默认值:disabled
thresholdOptions Accessor

当微件的 visualizationType 设置为 "threshold" 时使用的配置。

属性
color Color
optional
默认值:[255, 0 , 0, 0.7]

阴影可视化的颜色。累积阴影时间长于阈值的区域将使用此颜色显示。

value Number
optional
默认值:4 * 3600 * 1000

时间段,以毫秒为单位。仅显示投射时间超过此值的阴影。

minValue Number
optional
默认值:0

可在 UI 中为阈值选择的最短时间段(以毫秒为单位)。微件滑块中的值以小时为单位显示。

maxValue Number
optional
默认值:8 * 3600 * 1000

可在 UI 中为阈值选择的最长时间段(以毫秒为单位)。微件滑块中的值以小时为单位显示。

utcOffset Number

UTC 时间与微件中显示的时间之间的小时差。

视图的引用。此微件仅在 SceneView 中受支持。

visualizationType String

显示阴影时要使用的可视化类型。共有 3 种可视化类型:

  • "threshold" 仅显示接收阴影的时间段超过给定阈值的区域
  • "duration" 显示以连续模式或 1 小时时间间隔接收阴影的所有区域
  • "discrete" 模式显示以给定时间间隔投射的单个阴影

可能值"threshold"|"duration"|"discrete"

默认值:"threshold"

方法概述

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

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

更多详情
Accessor
Number

返回屏幕上某个点在阴影中花费的时间 (以毫秒为单位)。

更多详情
ShadowCastViewModel
Boolean

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

更多详情
Accessor

移除对象拥有的句柄组。

更多详情
Accessor

启动微件。

更多详情
ShadowCastViewModel

停止微件。

更多详情
ShadowCastViewModel

方法详细说明

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() 进行删除。如果未提供键,则句柄将被添加到默认组。

getDuration(point){Number}

返回屏幕上某个点在阴影中花费的时间 (以毫秒为单位)。

参数

屏幕上计算阴影投射的点。

返回
类型 描述
Number 给定屏幕点在阴影中花费的时间,以毫秒为单位。
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");
}
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");
start()

启动微件。运行时,它将自动配置阴影累积。

stop()

停止微件。

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