SuperMap.Geometry.Collection

几何对象集合类,存储在本地的 components 属性中(可作为参数传递给构造函数)。 随着新的几何图形添加到集合中,将不能被克隆,当移动几何图形时,需要指定参照物。 getArea和getLength函数只能通过遍历存储几何对象的 components 数组,总计所有几何图形的面积和长度。 构造函数 SuperMap.Geometry.Collection 实例化此类新的实例。

Inerhits from

Summary
SuperMap.Geometry.Collection 几何对象集合类,存储在本地的 components 属性中(可作为参数传递给构造函数)。 随着新的几何图形添加到集合中,将不能被克隆,当移动几何图形时,需要指定参照物。 getArea和getLength函数只能通过遍历存储几何对象的 components 数组,总计所有几何图形的面积和长度。 构造函数 SuperMap.Geometry.Collection 实例化此类新的实例。
Properties
components {Array(SuperMap.Geometry)} 存储几何对象的数组。
Constructor
SuperMap.Geometry.Collection 创建几何对象集合。
Functions
addComponents 给几何图形对象添加元素。
calculateBounds 通过遍历数组重新计算边界,在遍历每一子项中时调用 extend 方法。
clone 克隆当前几何对象。
destroy 销毁几何图形。
distanceTo 计算两个几个图形间的最小距离(x-y平面坐标系下)。
equals 判断两个几何图形是否相等。如果所有的 components 具有相同的坐标,则认为是相等的。
getArea 计算几何对象的面积。注意,这个方法在 SuperMap.Geometry.Polygon 类中需要重写。
getCentroid 计算几何图形集合的质心。
getGeodesicArea 计算多边形投影到球面上的近似面积。
getGeodesicLength 计算投影到球面上的几何图形的近似测地长度。
getLength 计算几何对象长度。
getVertices 返回几何对象的所有结点的列表。
intersects 判断输入的几何对象是否与当前几何对象相交。
move 沿着x、y轴的正方向上按照给定的位移移动几何图形,move 不仅改变了几何图形的位置并且清理了边界缓存。
removeComponents 清除几何对象。
resize 调整几何对象大小。
rotate 围绕中心点旋转几何图形。
transform 投影转换。

Properties

components

{Array(SuperMap.Geometry)} 存储几何对象的数组。

Constructor

SuperMap.Geometry.Collection

创建几何对象集合。

Parameters

components {Array(SuperMap.Geometry)} 几何对象数组。
var point1 = new SuperMap.Geometry.Point(10,20);
var point2 = new SuperMap.Geometry.Point(30,40);
var col = new SuperMap.Geometry.Collection([point1,point2]);

Functions

destroy

destroy: function ()

销毁几何图形。

clone

clone: function()

克隆当前几何对象。

Returns

{SuperMap.Geometry.Collection} 克隆的几何对象集合。

calculateBounds

calculateBounds: function()

通过遍历数组重新计算边界,在遍历每一子项中时调用 extend 方法。

addComponents

addComponents: function( components )

给几何图形对象添加元素。

Parameters

components {Array(SuperMap.Geometry)} 几何对象组件。
var collection = new SuperMap.Geometry.Collection();
collection.addComponents(new SuerpMap.Geometry.Point(10,10));

removeComponents

removeComponents: function( components )

清除几何对象。

Parameters

components {Array(SuperMap.Geometry)}需要清除的几何对象。

Returns

{Boolean} 元素是否被删除。

getLength

getLength: function()

计算几何对象长度。

Returns

{Float} 几何对象长度(所有几何对象长度总和)。

getArea

getArea: function()

计算几何对象的面积。注意,这个方法在 SuperMap.Geometry.Polygon 类中需要重写。

Returns

{Float} 几何图形的面积,是几何对象中所有组成部分的面积之和。

getGeodesicArea

getGeodesicArea: function( projection )

计算多边形投影到球面上的近似面积。

Parameters

projection {SuperMap.Projection} 空间参考系统的几何坐标。如果没有设置,默认 WGS84。

Returns

{float} 几何图形的近似测地面积。

getCentroid

getCentroid: function( weighted )

计算几何图形集合的质心。

Parameters

weighted {Boolean} 执行getCentroid方法进行递归计算,返回此几何图形集合中的面积加权平均值。

Returns

{SuperMap.Geometry.Point} 质心。

getGeodesicLength

getGeodesicLength: function( projection )

计算投影到球面上的几何图形的近似测地长度。

projection {SuperMap.Projection} 空间参考系统的几何坐标。如果没有设置,默认 WGS84。

Returns

{Float} 几何图形的近似测地长度。

move

move: function( x,
y )

沿着x、y轴的正方向上按照给定的位移移动几何图形,move 不仅改变了几何图形的位置并且清理了边界缓存。

Parameters

x {Float} x轴正方向上移动的距离。
y {Float} y轴正方向上移动的距离。

rotate

rotate: function( angle,
origin )

围绕中心点旋转几何图形。

Parameters

angle {Float} 旋转角的度数(沿着x轴正方向逆时针测量)。
origin {SuperMap.Geometry.Point} 旋转中心点。

resize

resize: function( scale,
origin,
ratio )

调整几何对象大小。

Parameters

scale {Float} 几何图形缩放的比例系数,是几何图形维数的两倍。 (如,对于线来说将以线2倍的长度拉长,对于多边形来说,将以面积的4倍变化)。
origin {SuperMap.Geometry.Point} 调整大小选定的起始原点。
ratio {Float} 可选的x,y的比例,默认的比例为1。

Returns

{SuperMap.Geometry} 几何图形。

distanceTo

distanceTo: function( geometry,
options )

计算两个几个图形间的最小距离(x-y平面坐标系下)。

Parameters

geometry {SuperMap.Geometry} 目标几何图形。
options {Object} 距离计算需要设置的可选属性。有效的选项取决于特定的几何类型。

Valid options

details {Boolean} 返回距离计算的细节。默认为false。
edge {Boolean} 计算一个几何图形到目标几何图形边缘的最近距离。默认为true。如果设为true, 一个几何图形完全包含在目标几何图形中时,调用distanceTo返回非零结果,如果false,两个几何图形相交情况下 调用distanceTo结果返回0,而且如果false,将不返距离值。

Returns

{Number | Object} 返回一个几何图形到目标几何图形的距离。

equals

equals: function( geometry )

判断两个几何图形是否相等。如果所有的 components 具有相同的坐标,则认为是相等的。

Parameters

geom {SuperMap.Geometry} 需要判断的几何图形。

Returns

{Boolean} 输入的几何图形与当前几何图形是否相等。

transform

transform: function( source,
dest )

投影转换。

Parameters

source {SuperMap.Projection} 源对象投影。
dest {SuperMap.Projection} 目标对象投影。

Returns

{SuperMap.Geometry}

intersects

intersects: function( geometry )

判断输入的几何对象是否与当前几何对象相交。

Parameters

geometry {SuperMap.Geometry} 任意的几何类型。

Returns

{Boolean} 输入几何对象与当前几何对象相交。

getVertices

getVertices: function( nodes )

返回几何对象的所有结点的列表。

Parameters

nodes {Boolean} 对于线来说,仅仅返回作为端点的顶点,如果设为false,则返回非端点的顶点 如果没有设置此参数,则返回所有顶点。

Returns

{Array} 几何对象的顶点列表。

创建几何对象集合。
几何对象类,描述地理对象的几何图形。
destroy: function ()
销毁几何图形。
clone: function()
克隆当前几何对象。
calculateBounds: function()
通过遍历数组重新计算边界,在遍历每一子项中时调用 extend 方法。
addComponents: function( components )
给几何图形对象添加元素。
removeComponents: function( components )
清除几何对象。
getLength: function()
计算几何对象长度。
getArea: function()
计算几何对象的面积。注意,这个方法在 SuperMap.Geometry.Polygon 类中需要重写。
多边形几何对象类。
getGeodesicArea: function( projection )
计算多边形投影到球面上的近似面积。
getCentroid: function( weighted )
计算几何图形集合的质心。
getGeodesicLength: function( projection )
计算投影到球面上的几何图形的近似测地长度。
move: function( x,
y )
沿着x、y轴的正方向上按照给定的位移移动几何图形,move 不仅改变了几何图形的位置并且清理了边界缓存。
rotate: function( angle,
origin )
围绕中心点旋转几何图形。
resize: function( scale,
origin,
ratio )
调整几何对象大小。
distanceTo: function( geometry,
options )
计算两个几个图形间的最小距离(x-y平面坐标系下)。
equals: function( geometry )
判断两个几何图形是否相等。如果所有的 components 具有相同的坐标,则认为是相等的。
transform: function( source,
dest )
投影转换。
intersects: function( geometry )
判断输入的几何对象是否与当前几何对象相交。
getVertices: function( nodes )
返回几何对象的所有结点的列表。
坐标转换类。这个类封装了与 proj4js 投影对象进行交互的几种方法。
点几何对象类。
Close