SliceViewModel

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

提供 Slice 微件的逻辑。SliceViewModel 提供对切片平面和可从切片微件中排除的图层的访问。

另请参阅

构造函数

new SliceViewModel(properties)
参数
properties Object
optional

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

属性概述

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

由视图模型创建或修改的切片分析对象。

更多详情
SliceViewModel
String

类的名称。

更多详情
Accessor
Collection<(Layer|BuildingComponentSublayer)>

将图层添加到此集合以将其从切片中排除。

更多详情
SliceViewModel
Boolean

指示是否从切片中排除 Ground 和叠加在地面上的图层。

更多详情
SliceViewModel
SlicePlane

用于对 3D 场景中的元素进行切片的形状。

更多详情
SliceViewModel
String

视图模型的状态。

更多详情
SliceViewModel
Boolean

启用倾斜切片形状。

更多详情
SliceViewModel
SceneView

微件将从中操作的视图。

更多详情
SliceViewModel

属性详细信息

analysis SliceAnalysisautocastreadonly
起始版本:GeoScene Maps SDK for JavaScript 4.23

由视图模型创建或修改的切片分析对象。

可以在视图模型构建期间设置此属性,以向视图模型提供现有分析以进行修改。一旦分配给视图模型,分析上的属性也可进行更新。

如果在视图模型构建期间未提供分析,则视图模型会自动创建其自己的分析并将其添加到视图中。在这种情况下,当视图模型被销毁时,分析也将自动从视图中移除。

示例
// Construct a slice analysis object outside of the view model
const analysis = new SliceAnalysis({
  shape: {
    type: "plane", // autocasts as new SlicePlane()
    position: {
      type: "point",
      x: -0.1,
      y: 51.5
    },
    width: 50,
    height: 50,
    tilt: 45
  },
  tiltEnabled: true
});

// Ensure that the analysis is added to the view
view.analyses.add(analysis);

// Frame the analysis in the view
view.goTo(analysis.extent);

// Pass the analysis object as a constructor parameter to modify it using the view model
const viewModel = new SliceViewModel({
  analysis: analysis,
  view: view
});
declaredClass Stringreadonly inherited

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

将图层添加到此集合以将其从切片中排除。叠加在地表上的图层不受此属性的影响。

excludeGroundSurface Boolean

指示是否从切片中排除 Ground 和叠加在地面上的图层。

默认值:false
起始版本:GeoScene Maps SDK for JavaScript 4.16

用于对 3D 场景中的元素进行切片的形状。目前唯一支持的形状是平面。

示例
// Clone the shape to modify its properties
const shape = viewModel.shape.clone();

// Set new values for heading and tilt
shape.heading = 180;
shape.tilt = 45;

// Set the new properties on the viewModel's shape
viewModel.shape = shape;
state Stringreadonly

视图模型的状态。

描述
disabled 尚未准备就绪
ready 准备切片
slicing 当前切片
sliced 完成切片

可能值"disabled"|"ready"|"slicing"|"sliced"

默认值:disabled
tiltEnabled Boolean
起始版本:GeoScene Maps SDK for JavaScript 4.16

启用倾斜切片形状。如果设置为 true,则在首次放置形状时,切片形状将尽可能地将自己定向到游标下的表面。如果设置为 false,则将切片形状限制为水平或垂直。

默认值:false

微件将从中操作的视图。

方法概述

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

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

更多详情
Accessor

清除切片的形状,有效地将其从视图中移除。

更多详情
SliceViewModel
Boolean

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

更多详情
Accessor

移除对象拥有的句柄组。

更多详情
Accessor

启动新切片的交互式放置,清除以前的形状

更多详情
SliceViewModel

方法详细说明

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

clear()
起始版本:GeoScene Maps SDK for JavaScript 4.16

清除切片的形状,有效地将其从视图中移除。不会修改其他属性 (如,excludedLayersexcludeGroundSurface)。

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()
起始版本:GeoScene Maps SDK for JavaScript 4.16

启动新切片的交互式放置,清除以前的形状

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