幻灯片存储 WebScene 和 SceneView 的多个预设属性的快照,如 basemap、viewpoint 和 visible layers。可见图层可能包含对场景中业务图层以及地面高程图层的引用 (按 Layer) ,从而影响表面高程。
幻灯片包含其他元数据,如标题、描述和缩略图,这可用于在用户界面中向用户呈现幻灯片。可创建、更新幻灯片,并将其应用于 SceneView 中。此外,还可将幻灯片存储为 WebScene.presentation。
// Create a slide from a view and apply it at a later time
Slide.createFrom(view).then(function(slide) {
// Add slide to the scene presentation
scene.presentation.slides.add(slide);
});
// At a later time
let firstSlide = scene.presentation.slides.getItemAt(0);
firstSlide.applyTo(view).then(function() {
// Slide has been successfully applied to the view
});
构造函数
-
new Slide(properties)
-
创建新的幻灯片实例。通常,Slide.createFrom 用于创建存储视图快照的新幻灯片。
参数properties Objectoptional有关可能传递给构造函数的所有属性的列表,请参见属性。
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
Basemap | 场景的底图。 更多详情 | Slide | |
String | 类的名称。 更多详情 | Accessor | |
Accessor | 幻灯片的描述。 更多详情 | Slide | |
Accessor | 表示影响在其中显示 WebScene 的环境 (如照明) 的设置。 更多详情 | Slide | |
Accessor | 此幻灯片的地面属性。 更多详情 | Slide | |
String | 更多详情 | Slide | |
Accessor | 数据 URI 编码的缩略图。 更多详情 | Slide | |
Accessor | 幻灯片的标题。 更多详情 | Slide | |
Viewpoint | 幻灯片的视点。 更多详情 | Slide | |
Collection<Accessor> | 场景的可见图层。 更多详情 | Slide |
属性详细信息
-
场景的底图。幻灯片中仅存储底图的 base 和 reference 图层。
此值可以是 Basemap 实例,也可以是下表中列出的字符串之一。
值 描述 tianditu-vector 中国地图彩色版 tianditu-image 中国地图灰色版 geoscene-blue 中国地图蓝黑版 geoscene-warm 中国地图暖色版
-
起始版本:GeoScene Maps SDK for JavaScript 4.7
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
幻灯片的描述。
- 属性
-
text String
说明。
-
表示影响在其中显示 WebScene 的环境 (如照明) 的设置。
- 属性
-
lighting SunLighting|VirtualLighting
用于定义场景照明的设置。
-
此幻灯片的地面属性。
- 属性
-
opacity Number
地面不透明度
-
id String
-
-
数据 URI 编码的缩略图。
- 属性
-
url String
指向表示幻灯片缩略图的 URI。
-
幻灯片的标题。
- 属性
-
text String
标题。
-
幻灯片的视点。这类似于书签,用于保存要从中查看场景的预定义位置或视点。
-
visibleLayers Collection<Accessor>autocast
-
场景的可见图层。这是一个对象集合,用于存储对场景图层和地面图层的引用 (按 Id),在将幻灯片应用于 SceneView 时,将这些图层设置为
visible
。当分配可见图层时,将自动转换以下类型的值:
下表概述了集合中每个对象的规范。
- 属性
-
id String
WebScene 或 Ground 中的图层 ID,当幻灯片应用于视图时,该图层在 SceneView 中为
visible
。图层上由图层 id 指定的可见子图层的服务 id。如果不存在服务 id,则在应用幻灯片时不会更改子图层的可见性。
示例// Update the visible layers to the second layer in the scene, and the // first elevation layer in the ground. slide.visibleLayers = [ { id: scene.layers.getItemAt(1).id } { id: scene.ground.layers.getItemAt(0).id } ]; // Equivalent using convenience autocasting slide.visibleLayers = [scene.layers.getItemAt(0), scene.ground.layers.getItemAt(0)];
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
Promise<Slide> | 将幻灯片的设置应用于 SceneView。 更多详情 | Slide | |
Slide | 创建此对象的深度克隆。 更多详情 | Slide | |
Promise<Slide> | 从 SceneView 创建幻灯片,该幻灯片可添加到 WebScene presentation 的幻灯片中。 更多详情 | Slide | |
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
移除对象拥有的句柄组。 更多详情 | Accessor | ||
Promise<Slide> | 从 WebScene 的幻灯片中更新幻灯片。 更多详情 | Slide |
方法详细说明
-
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() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
将幻灯片的设置应用于 SceneView。
参数规范view SceneView应该应用幻灯片的 SceneView。
options Objectoptional动画选项。有关对象规范,请参阅以下属性。
规范animate Booleanoptional默认值:true指示是否对幻灯片切换效果进行动画处理。
speedFactor Numberoptional默认值:1按指定因子增加或减少动画速度。speedFactor 为 2 将使动画速度加倍,而 speedFactor 为 0.5 将使动画速度减半。设置速度因子将自动相应地调整默认的 maxDuration。
duration Numberoptional设置动画的精确持续时间 (以毫秒为单位)。请注意,默认情况下,动画持续时间是根据以恒定速度到达目标所需的时间计算的。设置持续时间会覆盖 speedFactor 选项。请注意,结果持续时间仍然限于 maxDuration。
maxDuration Numberoptional默认值:8000动画的最大允许持续时间 (以毫秒为单位)。默认的 maxDuration 值会考虑指定的 speedFactor。
easing String|EasingFunctionoptional用于动画的 easing 函数。这可以是预设 (命名) 函数,也可以是用户指定的函数。支持的命名预设是:
linear
、in-cubic
、out-cubic
、in-out-cubic
、in-expo
、out-expo
、in-out-expo
默认情况下,小于 1000 ms 的动画使用 out easing 函数;时间较长的动画使用 in-out 函数。
signal AbortSignaloptional可用于中止异步任务的信号对象。中止将导致幻灯片动画停止。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise<Slide> 解析时,返回更新后的幻灯片。 示例// Applies the slide's settings to the view, but does // not use animation when updating the viewpoint slide.applyTo(view, { animate: false });
// Applies the slide's settings to the view, animates with a maximum // duration of 2 seconds. slide.applyTo(view, { maxDuration: 2000 });
slide.applyTo(view, { maxDuration: 2000 }).then(function(){ //do something after applying the slide's settings to the view });
-
从 SceneView 创建幻灯片,该幻灯片可添加到 WebScene presentation 的幻灯片中。更新幻灯片是异步的,只有在返回的 promise 解析时,视图的快照才会完成。
参数规范view SceneView应从中创建幻灯片的 SceneView。
options Objectoptional创建选项。有关对象规范,请参阅以下属性。
参数规范screenshot Objectoptional要使用的屏幕截图选项。有关对象规范,请参阅以下属性。
规范format Stringoptional默认值: png图像格式。
quality Numberoptional默认值:80图像质量 (由于压缩)。
width Numberoptional默认值:120图像宽度。
height Numberoptional默认值:75图像高度。
返回类型 描述 Promise<Slide> 解析时,返回创建的幻灯片。 示例// Creates a slide from the view and // adds it to the webscene Slide.createFrom(view).then(function(slide){ webscene.presentation.slides.add(slide); });
// Create multiple slides from multiple viewpoints. view.goTo({ heading: 0 }, { animate: false }) .then(function() { // Create first slide at heading 0 (looking north) return Slide.createFrom(view); }) .then(function(slide){ // Slide has been captured, add to presentation webscene.presentation.slides.add(slide); // Change viewpoint to look east return view.goTo({ heading: 90 }, { animate: false }); }) .then(function() { // Capture second slide return Slide.createFrom(view); }) .then(function(slide) { // Add second slide to presentation webscene.presentation.slides.add(slide); });
-
起始版本: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");
-
从 WebScene 的幻灯片中更新幻灯片。更新幻灯片是异步的,只有在返回的 promise 解析时,视图的快照才会完成。
参数规范view SceneView应在其中更新幻灯片的 SceneView。
options Objectoptional更新选项。有关对象规范,请参阅以下属性。
参数规范screenshot Object要使用的屏幕截图选项。有关对象规范,请参阅以下属性。
规范format Stringoptional默认值: png图像格式。
quality Numberoptional默认值:80图像质量 (由于压缩)。
width Numberoptional默认值:120图像宽度。
height Numberoptional默认值:75图像高度。
返回类型 描述 Promise<Slide> 解析时,返回更新后的幻灯片。