类名 Extent

# new Extent(options)

几何范围对象,即左下角和右上角组成的矩形范围几何对象,参考示例:[几何范围对象]

[ES5引入方式]:
zondy.geometry.Extent()
[ES6引入方式]:
import { Extent } from "@mapgis/webclient-common"

参数:

名称 类型 默认值 描述
options Object

构造参数

xmin Number 0

x轴最小坐标

ymin Number 0

y轴最小坐标

xmax Number 0

x轴最大坐标

ymax Number 0

y轴最大坐标

zmin0 Number

Z轴最小坐标

zmax0 Number

Z轴最大坐标

spatialReference SpatialReference new zondy.SpatialReference('EPSG:4326')

几何点的空间参考系,默认4326,当不是4326时请指定坐标系,方便进行投影转换,参考示例:[指定坐标系]

支持如下方法:
[1、根据中心点生成新的范围]
[2、输入的几何是否包含在范围内]
[3、将原始范围与输入范围求交]
[4、输入的几何图形是否与范围相交]
[5、是否和输入范围相等]
[6、按给定的因子扩大范围]
[7、平移extent]
[8、求并]
[9、返回字符串]
[10、返回IGS1.0的字符串]
[11、返回IGS所对应的GeometryModule型]
[12、通过传入的json构造并返回一个新的几何对象]
[13、导出为json对象]
14、克隆几何对象

示例

创建几何对象

// ES5引入方式
const { Extent } = zondy.geometry
// ES6引入方式
import { Extent } from "@mapgis/webclient-common"
new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})

指定坐标系

// ES5引入方式
const { Extent } = zondy.geometry
const { SpatialReference } = zondy
// ES6引入方式
import { Extent, SpatialReference } from "@mapgis/webclient-common"
new Extent({
  // 3857坐标系的点
  xmin: 12060733.232006868,
  xmax: 12929863.44711455,
  ymin: 3377247.5680546067,
  ymax: 3934286.575385226,
  // 当不是4326时请指定坐标系,方便进行投影转换
  spatialReference: new SpatialReference('EPSG:3857')
})

继承关系

成员变量

Array.<Number>

# center

中心点

Object

# extensionOptions

初始化几何的额外参数,可以通过该参数传入引擎原生的构造参数

Inherited From:
Default Value:
  • {}
Number

# extent

几何的范围

Inherited From:
Boolean

# readonly hasZ

是否含有z坐标

Overrides:
Number

# height

高度

SpatialReference

# spatialReference

几何点的空间参考系

Inherited From:
Number

# width

宽度

Number

# xmax

x坐标最大值

Default Value:
  • 0
Number

# xmin

x坐标最小值

Default Value:
  • 0
Number

# ymax

y坐标最大值

Default Value:
  • 0
Number

# ymin

y坐标最小值

Default Value:
  • 0
Number

# zmax

z坐标最大值

Number

# zmin

z坐标最小值

方法

# static fromJSON(jsonopt)

通过传入的json构造并返回一个新的几何对象

参数:

名称 类型 描述
json Object

JSON对象

示例

通过传入的json构造并返回一个新的几何对象

// ES5引入方式
const { Extent } = zondy.geometry
// ES6引入方式
import { Extent } from "@mapgis/webclient-common"
const json = {
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
}
const extent = Extent.fromJSON(json)

# centerAt(point)

根据中心点生成新的范围,新范围的宽高为当前范围的宽高

参数:

名称 类型 描述
point Point

中心点

以点为中心的新范围。

Extent
示例

根据中心点生成新的范围

// ES5引入方式
const { Extent, Point } = zondy.geometry
// ES6引入方式
import { Extent, Point } from "@mapgis/webclient-common"
const extent = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const point = new Point({
  coordinates: [100.0, 0.0]
})
const newConst = extent.centerAt(point)

# clone()

克隆几何对象

Overrides:

克隆后的几何对象

Geometry

# contains(geometry)

输入的几何是否包含在范围内

参数:

名称 类型 描述
geometry Point | Extent

输入的几何图形

如果输入几何图形包含在范围内,则返回true

Boolean
示例

输入的几何是否包含在范围内

// ES5引入方式
const { Extent, Point } = zondy.geometry
// ES6引入方式
import { Extent, Point } from "@mapgis/webclient-common"
const extent = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const point = new Point({
  coordinates: [100.0, 0.0]
})
const isIn = extent.contains(point)

# equals(extent)

是否和输入范围相等

参数:

名称 类型 描述
extent Extent

输入的外包范围

如果输入范围等于调用equals()的范围,则返回true

Boolean
示例

是否和输入范围相等

// ES5引入方式
const { Extent } = zondy.geometry
// ES6引入方式
import { Extent } from "@mapgis/webclient-common"
const extent = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const extent2 = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const isEqual = extent.equals(extent2)

# expand(factor)

按给定的因子扩大范围。例如,值为1.5将将范围扩展到比原始范围大50%。

参数:

名称 类型 描述
factor Number

乘数的值,必须大于等于1

返回扩大的范围

Extent
示例

按给定的因子扩大范围

// ES5引入方式
const { Extent } = zondy.geometry
// ES6引入方式
import { Extent } from "@mapgis/webclient-common"
const extent = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
extent.expand(1.5)

# fromGeoJSON(GeoJSON)

导入GeoJSON

参数:

名称 类型 描述
GeoJSON Object

Object

Inherited From:

# getGeometryType()

获取GeometryModule型

Inherited From:

GeometryModule型

String

# getIGSType()

返回IGS所对应的GeometryModule型

Overrides:

string GeometryModule型

# getType()

返回所对应的GeometryModule型

Inherited From:

GeometryModule型

String

# intersection(extent)

将原始范围与输入范围求交

参数:

名称 类型 描述
extent Extent

输入的范围,用于相交。

返回输入Extent与原始Extent的交集,没有交集返回 null

Extent
示例

将原始范围与输入范围求交

// ES5引入方式
const { Extent } = zondy.geometry
// ES6引入方式
import { Extent } from "@mapgis/webclient-common"
const extent = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const extent2 = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const newExtent = extent.intersection(extent2)

# intersects(geometry)

输入的几何图形是否与范围相交

参数:

名称 类型 描述
geometry Geometry

用于测试相交的几何图形。可以是 Point, Polyline, Polygon, Extent or Multipoint

如果输入几何图形与区段相交,则返回true

Boolean
示例

输入的几何图形是否与范围相交

// ES5引入方式
const { Extent, Point } = zondy.geometry
// ES6引入方式
import { Extent, Point } from "@mapgis/webclient-common"
const extent = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const point = new Point({
  coordinates: [100.0, 0.0]
})
const isIntersect = extent.intersects(point)

# normalize()

归一化计算

归一化后的点对象

Extent
示例

归一化计算

// ES5引入方式
const { Extent } = zondy.geometry
// ES6引入方式
import { Extent } from "@mapgis/webclient-common"
const extent = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const normalize = extent.normalize()

# offset(dx, dy, dz)

根据输入的dx, dy, dz值,平移extent

参数:

名称 类型 描述
dx Number

要平移的x值

dy Number

要平移的y值

dz Number

要平移的z值

偏移后的范围

Extent
示例

平移extent

// ES5引入方式
const { Extent } = zondy.geometry
// ES6引入方式
import { Extent } from "@mapgis/webclient-common"
const extent = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
extent.offset(0, 1, 0)

# toGeoJSON()

导出为GeoJSON

Overrides:

GeoJSON对象

Object

# toIGSOldString()

返回如下格式的字符串:"xmin$ymin$xmax$ymax"

string

# toJSON()

导出为json对象

Overrides:

json对象

Object

# toPolygon()

Polygon

# toString()

返回如下格式的字符串:"xmin,ymin,xmax,ymax"

Overrides:

string

# toXML()

导出为OGC服务要求的xml字符串,子类实现

Inherited From:

字符串

String

# union(extent)

求并

参数:

名称 类型 描述
extent Extent

输入的范围,用于并集

返回输入Extent与原始Extent的并集

Extent
示例

求并

// ES5引入方式
const { Extent } = zondy.geometry
// ES6引入方式
import { Extent } from "@mapgis/webclient-common"
const extent = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const extent2 = new Extent({
  xmin: 10,
  xmax: 210,
  ymin: 0,
  ymax: 100
})
const newExtent = extent.union(extent2)
构造函数
成员变量
方法
事件