BookmarksViewModel

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

提供书签微件的逻辑。

另参阅:

构造函数

new BookmarksViewModel(properties)
参数:
properties Object
optional

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

属性列表

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

定义微件的功能。

更多信息BookmarksViewModel
Bookmark更多信息

要导航到的书签

更多信息BookmarksViewModel
Collection<Bookmark>更多信息

书签的集合。

更多信息BookmarksViewModel
String更多信息

类名。

更多信息Accessor
BookmarkOptions更多信息

指定如何创建新书签。

更多信息BookmarksViewModel
BookmarkOptions更多信息

指定如何编辑书签。

更多信息BookmarksViewModel
GoToOverride更多信息

此函数提供了覆盖 MapView goTo() 或 SceneView goTo() 方法的功能。

更多信息BookmarksViewModel
String更多信息

视图模型的状态。

更多信息BookmarksViewModel
MapView更多信息

微件将从中运行的视图。

更多信息BookmarksViewModel

属性详细说明

abilities Abilities
起始版本: GeoScene API for JavaScript 4.22

定义微件的功能。此属性可用于启用或禁用“书签”微件的时间功能。

示例代码:
const bookmarksVM = new BookmarksViewModel({
  view: view,
  abilities: {
     time: false // 禁用 Bookmarks 微件中的“所有时间”功能
  }
});
activeBookmark Bookmarkreadonly
起始版本: GeoScene API for JavaScript 4.22

要导航到的书签

bookmarks Collection<Bookmark>

书签的集合。

declaredClass Stringreadonly inherited

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

defaultCreateOptions BookmarkOptions
起始版本: GeoScene API for JavaScript 4.22

指定如何创建新书签。可用于在创建书签时启用或禁用截取屏幕截图或根据当前视图捕获书签的视点。 有关选项的完整列表,请参阅 BookmarkOptions

defaultEditOptions BookmarkOptions
起始版本: GeoScene API for JavaScript 4.22

指定如何编辑书签。可用于在编辑书签时启用或禁用截取屏幕截图或根据当前视图捕获书签的视点。 有关选项的完整列表,请参阅 BookmarkOptions

goToOverride GoToOverride

此函数提供了覆盖 MapView goTo() 或 SceneView goTo() 方法的功能。

另参阅:
示例代码:
// 以下代码段使用了搜索微件,但可以应用于任何应用程序
// 微件支持 goToOverride 属性
search.goToOverride = function(view, goToParams) {
  goToParams.options.duration = updatedDuration;
  return view.goTo(goToParams.target, goToParams.options);
};
state Stringreadonly

视图模型的状态。

可选值:"loading"|"ready"

默认值:ready
view MapView

微件将从中运行的视图。

方法列表

名称 返回值类型 描述
Promise<Bookmark>更多信息

除非另有指定,否则从 defaultCreateOptions 创建新书签。

更多信息BookmarksViewModel
Promise<Bookmark>更多信息

编辑给定的书签。

更多信息BookmarksViewModel
Promise更多信息

缩放至特定书签。

更多信息BookmarksViewModel

方法详细说明

createBookmark(options){Promise<Bookmark>}
起始版本: GeoScene API for JavaScript 4.22

除非另有指定,否则从 defaultCreateOptions 创建新书签。

参数:
options BookmarkOptions
optional

指定如何创建新书签。可用于启用/禁用在添加新书签时截取屏幕截图或捕获范围。

返回值:
类型 描述
Promise<Bookmark> 解析后,返回新创建的书签
示例代码:
// 从当前视图范围创建新书签
viewModel.createBookmark().then(function(bookmark){
   // 给书签命名
   bookmark.name = "New Bookmark";
   // 添加到书签列表
   viewModel.bookmarks.add(bookmark);
});
editBookmark(bookmark, options){Promise<Bookmark>}
起始版本: GeoScene API for JavaScript 4.22

编辑给定的书签。

参数:
bookmark Bookmark

要编辑的书签。

options BookmarkOptions
optional

指定如何编辑书签。可用于在编辑书签时启用/禁用截取屏幕截图或捕获范围。 如果未指定,则将使用 defaultEditOptions

返回值:
类型 描述
Promise<Bookmark> 解析后,返回已编辑的书签
示例代码:
const options = {
  takeScreenshot: false,
  captureViewpoint: true
};

// 更新给定书签的视点,而不拍摄新的屏幕截图
viewModel.editBookmark(bookmark, options).then(function(editedBookmark){
   // 已编辑的书签的视点现在应该与当前视图匹配
   console.log(editedBookmark.viewpoint);
   console.log(view.viewpoint);
})
goTo(bookmark){Promise}

缩放至特定书签。

参数:
bookmark Bookmark

要缩放到的书签。

返回值:
类型 描述
Promise 在指定书签的动画完成后解析。

类型定义

Abilities Object

指定“书签”微件的功能。

属性:
time Boolean
optional

指示是否在“书签”微件中启用了时间功能。默认值为 true。当 false 时,书签的 timeExent 将不可见或不可编辑。任何新创建的书签都不会捕获时间范围。

BookmarkOptions Object

指定如何创建或修改书签。

属性:
takeScreenshot Boolean
optional

指示在创建新书签时是否截取屏幕截图。屏幕截图将设置为新创建的书签中的缩略图。默认值为 true

captureViewpoint Boolean
optional

自 4.17 起指示当前视图的视点是否将成为新创建或修改的书签的视点。默认值为 true

captureRotation Boolean
optional

自 4.17 起指示当前视图的旋转是否将保存在新创建或修改的书签的视点中。默认值为 true

captureScale Boolean
optional

自 4.17 起指示是否将当前视图的比例保存在新创建或修改的书签的视点中。默认值为 true

captureTimeExtent Boolean
optional

自 4.22 起指示当前视图的时间范围是否保存在新创建或修改的书签的 timeExtent 内。默认值为 true

screenshotSettings Object
optional

一个对象,它指定将用于创建书签缩略图的屏幕截图的设置。

规范:
width Number
optional

屏幕截图的宽度(以像素为单位)。默认值为 128px

height Number
optional

屏幕截图的高度(以像素为单位)。默认值为 128px

area Object
optional

用于截取视图的子区域的屏幕截图。默认为整个视图。

规范:
x Number
optional

屏幕截图区域的 x 值。

y Number
optional

屏幕截图区域的 y 值。

width Number
optional

屏幕截图区域的宽度。

height Number
optional

屏幕截图区域的高度。

layers Layer[]
optional

要包含在屏幕截图中的可选图层列表。

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