SpatialReference

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

定义视图、图层或方法参数的空间参考。这表示用于在地图中定位地理要素的投影坐标系或地理坐标系。每个投影坐标系和地理坐标系都由熟知 ID (WKID) 或定义字符串 (WKT) 定义。请注意,对于 GeoScene 1.0 之前的版本,仅支持 WKID

示例
// set the spatial reference of a view to WebMercator using wkid
const view = new SceneView({
  container: "viewDiv",
  map: map,
  spatialReference: {
    wkid: 3857
  }
});
// set the spatial reference of a geometry
// to WGS84 using the WGS84 property
const point = new Point({
  x: 10.1,
  y: 47.4,
  spatialReference: SpatialReference.WGS84
});

构造函数

new SpatialReference(properties)
参数
properties Object
optional

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

属性概述

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

类的名称。

更多详情
Accessor
Object

影像坐标系定义了用于以其原始坐标显示影像的空间参考,而不会发生失真、地图变换或正射校正。

更多详情
SpatialReference
Boolean

指示空间参考是否引用地理坐标系。

更多详情
SpatialReference
Boolean

指示空间参考对象的 wkid 是否为下列值之一:1021131021003857

更多详情
SpatialReference
Boolean

指示空间参考对象的 wkid 是否为 4326

更多详情
SpatialReference
Boolean

指示地图的空间参考是否支持环绕国际日期变更线。

更多详情
SpatialReference
SpatialReference

Web 墨卡托的便利空间参考实例。

更多详情
SpatialReference
SpatialReference

WGS84 的便利空间参考实例。

更多详情
SpatialReference
Number

空间参考的熟知 ID。

更多详情
SpatialReference
String

定义空间参考的熟知文本。

更多详情
SpatialReference

属性详细信息

declaredClass Stringreadonly inherited
起始版本:GeoScene Maps SDK for JavaScript 4.7

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

imageCoordinateSystem Object
起始版本:GeoScene Maps SDK for JavaScript 4.13

影像坐标系定义了用于以其原始坐标显示影像的空间参考,而不会发生失真、地图变换或正射校正。通常,ImageryLayer 显示在视图的 spatialReference 中。在某些情况下,由于使用了各种变换和地形校正,将影像转换为地图坐标可能会导致影像看起来倾斜或扭曲。由于影像坐标系中影像不会失真,因此非常适合与倾斜影像和测量一起使用。

图像只能在 2D MapView 中以其原始坐标显示,并具有 top-up 旋转,该旋转始终面向数据集的方向。此工作方式类似于车载导航系统,其中的选择通常是北在屏幕的顶部 (因此,不使用北向上选项),或者屏幕旋转,因此行驶方向始终显示在顶部。

另请参阅
示例
// get image coordinate system of the specified catalog item
// for example Raster.OBJECTID = 1600
layer.getCatalogItemICSInfo(imageId).then(function(info) {
// create a spatialReference object and set its
// imageCoordinateSystem property
 let sr = { // autocasts to geoscene/geometry/SpatialReference
   imageCoordinateSystem: { id: imageId }
 };

 // Calculate an extent for the mapview based on the image's extent
 // in its original coordinate system
 const width = document.getElementById("viewDiv").getBoundingClientRect().width;
 const height = document.getElementById("viewDiv").getBoundingClientRect().height;
 const newExt = info.icsExtent.clone();
 const scaleFactor = 5;
 newExt.xmin = (newExt.xmin + newExt.xmax - width * scaleFactor) / 2;
 newExt.xmax = newExt.xmin + width * scaleFactor;
 newExt.ymin = (newExt.ymin + newExt.ymax - height * scaleFactor) / 2;
 newExt.ymax = newExt.ymin + height * scaleFactor;
 newExt.spatialReference = sr;

 // set the MapView's spatialReference to the image's coordinate system
 // and the extent to the extent calculated above
 view = new MapView({
   container: "viewDiv",
   map: map,
   spatialReference: sr,
   extent: newExt
 });
});
isGeographic Booleanreadonly

指示空间参考是否引用地理坐标系。

isWebMercator Booleanreadonly

指示空间参考对象的 wkid 是否为下列值之一:1021131021003857

isWGS84 Booleanreadonly

指示空间参考对象的 wkid 是否为 4326

isWrappable Booleanreadonly

指示地图的空间参考是否支持环绕国际日期变更线。如果空间参考为 Web 墨卡托或 WGS84,则值为 true

WebMercator SpatialReferencestatic

Web 墨卡托的便利空间参考实例。

示例
// returns true if the webMercatorUtils can
// project geometries from WGS84 to Web Mercator
let canProjectWGS84toWebMercator = webMercatorUtils.canProject(SpatialReference.WGS84, SpatialReference.WebMercator);
WGS84 SpatialReferencestatic

WGS84 的便利空间参考实例。

示例
// returns true if the webMercatorUtils can
// project geometries from WGS84 to Web Mercator
let canProjectWGS84toWebMercator = webMercatorUtils.canProject(SpatialReference.WGS84, SpatialReference.WebMercator);
wkid Number

空间参考的熟知 ID。

wkt String

定义空间参考的熟知文本。

方法概述

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

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

更多详情
Accessor
SpatialReference

返回空间参考对象的深度克隆。

更多详情
SpatialReference
Boolean

检查指定的空间参考对象是否与此空间参考对象具有相同的 wkidwkt

更多详情
SpatialReference
*

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

更多详情
SpatialReference
Boolean

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

更多详情
Accessor

移除对象拥有的句柄组。

更多详情
Accessor
Object

将此类的实例转换为 GeoScene Portal JSON 表示。

更多详情
SpatialReference

方法详细说明

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

返回空间参考对象的深度克隆。

返回
类型 描述
SpatialReference 返回空间参考对象的深度克隆。
equals(spatialReference){Boolean}

检查指定的空间参考对象是否与此空间参考对象具有相同的 wkidwkt

参数
spatialReference SpatialReference

与之比较的空间参考。

返回
类型 描述
Boolean 如果输入空间参考对象与此空间参考对象具有相同的 wkid 或 wkt,则返回 true
示例
require(["geoscene/geometry/SpatialReference"], function(SpatialReference) {
  const sr1 = new SpatialReference({ wkid: 4326 });
  const sr2 = new SpatialReference({ wkid: 4326 });
  console.log(sr1.equals(sr2)); // true
});
fromJSON(json){*}static

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

参数
json Object

GeoScene 格式实例的 JSON 表示。有关各种输入 JSON 对象的结构示例,请参阅 GeoScene REST API 文档

返回
类型 描述
* 返回该类的新实例。
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");
toJSON(){Object}

将此类的实例转换为 GeoScene Portal JSON 表示。有关详细信息,请参阅使用 fromJSON() 指南主题。

返回
类型 描述
Object 此类实例的 GeoScene Portal JSON 表示。

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