Summary
Methods:
| fromArray |
从一个数组来构建地理范围。 |
| fromString |
从字符串中解析出地理范围实例。 |
| clone |
复制一个新Extent对象,这个副本相对于正本,独立存在 |
| containsCoord |
检测是一个地理坐标是否被包含在当前地理范围之内。 |
| containsExtent |
检测一个地理范围是否包含了另外一个地理范围,(含边界共用的情况)。 |
| equals |
判断两个地理范围是否相等。在允许的容差范围以内,四至相同就可以认为相等,否则不相等。 |
| extendExtent |
扩展地理范围,使之包含参数指定的地理范围。并返回扩展后的地理范围。 |
| extendXY |
扩展地理范围,使其包含给定的坐标。坐标中的Z值对地理范围的扩展无效 |
| getArea |
获取地理范围的面积。地理坐标系下计算结果仅表示一个近似值。 |
| getBottom |
计算下边界纬线值 |
| getBottomLeft |
获取左下角坐标 |
| getBottomRight |
获取右下角坐标 |
| getCenter |
获取地理范围的中心坐标 |
| getHeight |
计算纬线方向的跨度 |
| getIntersection |
计算两个地理范围相交的部分。 |
| getLeft |
计算左边界经线值 |
| getRight |
计算右边界经线值 |
| getSize |
返回当前地理范围尺寸 |
| getTop |
计算上边界纬线值 |
| getTopLeft |
获取左上角坐标 |
| getTopRight |
获取右上角坐标 |
| getWidth |
计算经线方向的跨度 |
| intersects |
判断两个地理范围是否相交。 |
| isEmpty |
判断当前地理范围是否为空 |
| offset |
根据给出的水平与垂直方向的平移量,对当前地理范围的四至整体平移。 |
| scale |
以原点为中心,缩放当前地理范围。 |
| setBottom |
设置下边界纬线值 |
| setLeft |
设置左边界经线值 |
| setRight |
设置右边界经线值 |
| setTop |
设置上边界纬线值 |
| toArray |
地理范围对象的数组表现形式。返回的数组[l,b,r,t]分别表示[左边界,下边界,右边界、上边界]等几个坐标值。 |
| toString |
将当前地理范围转化成字符串形式。 |
Constructor
new Extent(left, bottom, right, top)
Parameters:
| Name | Type | Description |
|---|---|---|
left |
Number | 左边界坐标值 |
bottom |
Number | 下边界坐标值 |
right |
Number | 右边界坐标值 |
top |
Number | 上边界坐标值 |
Throws:
当左边界left大于右边界right或者下边界bottom大于上边界top时,抛出异常。
Example
let extent = new hmap.basetype.Extent(120.1,30.01,120.7,30.3);
Methods
-
static fromArray(arr) → {module:basetype~Extent}
-
从一个数组来构建地理范围。
Parameters:
Name Type Description arrArray.<Number> 由左下角坐标与右上角坐标组成
Throws:
当参数arr不是4个元素的数组或者数组的元素不是数值类型时,抛出异常
Example
let newExtent = hmap.basetype.Extent.fromArray([120,30,120.2,30.3]); -
static fromString(str) → {module:basetype~Extent}
-
从字符串中解析出地理范围实例。
Parameters:
Name Type Description strString 该字符串是由逗号分割的4个可以转换为数值的数字组成,例: "83,42,10,45"。 不符合规范的字符串将发生解析异常。
Throws:
当转换后得到的数值,不等于4时,抛出异常
Example
let result = hmap.basetype.Extent.fromString("118,30,120,31"); //result=new hmap.basetype.Extent(118,30,120,31); -
clone() → {module:basetype~Extent}
-
复制一个新Extent对象,这个副本相对于正本,独立存在
Example
let newExtent = extent.clone(); -
containsCoord(coordinate, inclusive) → {Boolean}
-
检测是一个地理坐标是否被包含在当前地理范围之内。
Parameters:
Name Type Default Description coordinatemodule:basetype~Coordinate 地理坐标
inclusiveBoolean true 考虑地理坐标落在在地理范围的边界上的情况:为true时,表示即使地理坐标落在地理范围的边界上,也按坐标在地理范围以内计算。否则按不在地理范围以内计算。默认为true。
Returns:
Boolean -包含返回true;不包含返回false,如果参数不合法,直接返回false
Example
let extent = new hmap.basetype.Extent(120.1,30.01,120.7,30.3); let coord = new hmap.basetype.Coordinate(120.3,30.2); let result = extent.containsCoord(coord,true);//result=true -
containsExtent(extent) → {Boolean}
-
检测一个地理范围是否包含了另外一个地理范围,(含边界共用的情况)。
Parameters:
Name Type Description extentmodule:basetype~Extent 给出的另外一个地理范围
Returns:
Boolean -包含返回true;不包含返回false
Example
let extentOut = new hmap.basetype.Extent(120.1,30.01,120.7,30.3); let extentIn = new hmap.basetype.Extent(120.1,30.01,120.3,30.2); let result = extentOut.containsExtent(extentIn);//result=true -
equals(extent, tolerance) → {Boolean}
-
判断两个地理范围是否相等。在允许的容差范围以内,四至相同就可以认为相等,否则不相等。
Parameters:
Name Type Default Description extentmodule:basetype~Extent 需要对比的地理范围
toleranceNumber 0 容差。Extent四至的单位相同
Returns:
Boolean -地理范围相等返回true;地理范围不相等返回false
Example
let newExtent = new hmap.basetype.Extent(121.1,30.01,120.7,30.3); let result = extent.equals(newExtent, 0.1); -
extendExtent(extent) → {module:basetype~Extent}
-
扩展地理范围,使之包含参数指定的地理范围。并返回扩展后的地理范围。
Parameters:
Name Type Description extentmodule:basetype~Extent 需要扩展的地理范围
Example
let extent = new hmap.basetype.Extent(120.1,30.01,120.7,30.3); let extent2 = new hmap.basetype.Extent(121.1,31.07,122.7,32.3); let result = extent.extendExtent(extent2);//result=new hmap.basetype.Extent(120.1,30.01,122.7,32.3); -
extendXY(coord) → {module:basetype~Extent}
-
扩展地理范围,使其包含给定的坐标。坐标中的Z值对地理范围的扩展无效
Parameters:
Name Type Description coordmodule:basetype~Coordinate 给定的一个坐标
Example
let coord = new hmap.basetype.Coordinate(120.3,30.6); let extent = new hmap.basetype.Extent(110.1,20.01,130.3,40.2); let result = extent.extendXY(coord);// result = new hmap.basetype.Extent(110.1,20.01,130.3,40.2); -
getArea() → {Number}
-
获取地理范围的面积。地理坐标系下计算结果仅表示一个近似值。
Returns:
Number -面积,单位取决于地图单位,如平方米。
Example
let area = extent.getArea(); -
getBottom() → {Number}
-
计算下边界纬线值
Returns:
Number -下边界纬线值
Example
let bottom = extent.getBottom(); -
getBottomLeft() → {module:basetype~Coordinate}
-
获取左下角坐标
Example
let coordinate = extent.getBottomLeft(); -
getBottomRight() → {module:basetype~Coordinate}
-
获取右下角坐标
Example
let coordinate = extent.getBottomRight(); -
getCenter() → {module:basetype~Coordinate}
-
获取地理范围的中心坐标
Example
let centerCoord = extent.getCenter(); -
getHeight() → {Number}
-
计算纬线方向的跨度
Returns:
Number -返回纬线方向的跨度
Example
let height = extent.getHeight(); -
getIntersection(extent) → {module:basetype~Extent}
-
计算两个地理范围相交的部分。
Parameters:
Name Type Description extentmodule:basetype~Extent 地理范围
Example
let extent2 = new hmap.basetype.Extent(120.1,30.01,122.7,32.3); let interstExtent = extent.getIntersection(extent2); -
getLeft() → {Number}
-
计算左边界经线值
Returns:
Number -左边界经线值
Example
let left = extent.getLeft(); -
getRight() → {Number}
-
计算右边界经线值
Returns:
Number -右边界经线值
Example
let right = extent.getRight(); -
getSize() → {module:basetype~Size}
-
返回当前地理范围尺寸
Example
let size = extent.getSize(); -
getTop() → {Number}
-
计算上边界纬线值
Returns:
Number -上边界纬线值
Example
let top = extent.getTop(); -
getTopLeft() → {module:basetype~Coordinate}
-
获取左上角坐标
Example
let coordinate = extent.getTopLeft(); -
getTopRight() → {module:basetype~Coordinate}
-
获取右上角坐标
Example
let coordinate = extent.getTopRight(); -
getWidth() → {Number}
-
计算经线方向的跨度
Returns:
Number -返回经线方向的跨度。
Example
let width = extent.getWidth(); -
intersects(extent, inclusive) → {Boolean}
-
判断两个地理范围是否相交。
Parameters:
Name Type Default Description extentmodule:basetype~Extent 指定的地理范围
inclusiveBoolean true 边界有重合的情况。如果为true,那么当发生全部或部分边界重合时,按相交计算。否则不按相交计算。
Returns:
Boolean -相交返回true,不相交返回false。
Example
let extent1 = new hmap.basetype.Extent(120.1,30.01,120.7,30.3); let extent2 = new hmap.basetype.Extent(120.1,31.07,122.7,32.3); let result = extent1.intersects(extent2,true);//result=false -
isEmpty() → {Boolean}
-
判断当前地理范围是否为空
Returns:
Boolean -为true时表示当前对象是一个空的地理范围,否则表示一个正常的地理范围。
Example
let result = extent.isEmpty(); -
offset(deltaX, deltaY) → {module:basetype~Extent}
-
根据给出的水平与垂直方向的平移量,对当前地理范围的四至整体平移。
Parameters:
Name Type Description deltaXNumber 水平方向的平移量
deltaYNumber 垂直方向的平移量
Throws:
当参数deltaX或者参数deltaY不是数值类型时,抛出异常
Example
let newExtent = extent.offset(2, 3); -
scale(ratio) → {module:basetype~Extent}
-
以原点为中心,缩放当前地理范围。
Parameters:
Name Type Description ratioNumber 缩放倍率,大于等于0的数值,其它值结果都是错误的。
Throws:
当参数ratio不是数值类型时,抛出异常。
Example
let newExtent = extent.scale(2); -
setBottom(bottom) → {Extent}
-
设置下边界纬线值
Parameters:
Name Type Description bottomNumber 需要设置的下边界纬线值
Throws:
当参数大于地理范围的上边界纬线值时,抛出异常
Returns:
Extent -返回新的地理范围
Example
extent.setBottom(-80); -
setLeft(left) → {module:basetype~Extent}
-
设置左边界经线值
Parameters:
Name Type Description leftNumber 经线值
Throws:
当参数大于地理范围的右边界经线值,抛出异常
Example
extent.setLeft(-170); -
setRight(right) → {module:basetype~Extent}
-
设置右边界经线值
Parameters:
Name Type Description rightNumber 需要设置的右边界经线值
Throws:
当参数小于地理范围的左边界经线值时,抛出异常
Example
extent.setRight(170); -
setTop(top) → {module:basetype~Extent}
-
设置上边界纬线值
Parameters:
Name Type Description topNumber 上边界纬线值
Throws:
当参数小于地理范围的下边界纬线值时,抛出异常
Example
extent.setTop(80); -
toArray() → {Array.<Number>}
-
地理范围对象的数组表现形式。返回的数组[l,b,r,t]分别表示[左边界,下边界,右边界、上边界]等几个坐标值。
Returns:
Array.<Number> -按照left、bottom、 right、 top 顺序组成的数组。
Example
let arr = extent.toArray(); -
toString() → {String}
-
将当前地理范围转化成字符串形式。
Returns:
String -返回“left,bottom,right,top”的字符串形式
Example
let extent = new hmap.basetype.Extent(120.1,30.01,120.7,30.3); let result = extent.toString();//result="120.1,30.01,120.7,30.3"