Class: LonLat

LonLat

这个类用来表示经度和纬度对。

new LonLat(lon, lat)

Usage
// 浏览器
<script type="text/javascript" src="https://iclient.supermap.io/dist/openlayers/iclient-ol.js"></script>
<script>
  new ol.supermap.LonLat(lon, lat);
  
</script>

// ES6 Import
import { LonLat } from '@supermapgis/iclient-ol';

new LonLat(lon, lat);

common/commontypes/LonLat.js, line 6
Name Type Default Description
lon number | Array.<number> 0.0 可选

地图单位上的 X 轴坐标或者横纵坐标组成的数组;如果地图是地理投影,则此值是经度,否则,此值是地图地理位置的 x 坐标。

lat number 0.0 可选

地图单位上的 Y 轴坐标,如果地图是地理投影,则此值是纬度,否则,此值是地图地理位置的 y 坐标。

Example
var lonLat = new LonLat(30,45);

Members

latnumber

地图的单位的 Y 轴(纵轴)坐标。

Default Value:
0.0

lonnumber

地图的单位的 X 轴(横轴)坐标。

Default Value:
0.0

Methods

static fromArray(arr){LonLat}

common/commontypes/LonLat.js, line 173

通过数组生成一个 LonLat 对象。

Name Type Description
arr Array.<number>

数组的格式,长度只能为2,:[Lon,Lat]。如:[5,-42]。

Returns:
Type Description
LonLat LonLat 对象。

static fromString(str){LonLat}

common/commontypes/LonLat.js, line 159

通过字符串生成一个 LonLat 对象。

Name Type Description
str string

字符串的格式:Lon+","+Lat。如:"100,50"。

Returns:
Type Description
LonLat LonLat 对象。
Example
var str = "100,50";
var lonLat = LonLat.fromString(str);

add(lon, lat){LonLat}

common/commontypes/LonLat.js, line 74

在已有坐标对象的经纬度基础上加上新的坐标经纬度,并返回新的坐标对象。

Name Type Description
lon number

经度参数。

lat number

纬度参数。

Returns:
Type Description
LonLat 新的 LonLat 对象,此对象的经纬度是由传入的经纬度与当前的经纬度相加所得。
Example
var lonLat1 = new LonLat(100,50);
//lonLat2 是新的对象
var lonLat2 = lonLat1.add(100,50);

clone(){LonLat}

common/commontypes/LonLat.js, line 62

复制坐标对象,并返回复制后的新对象。

Returns:
Type Description
LonLat 相同坐标值的新的坐标对象。
Example
var lonLat1 = new LonLat(100,50);
var lonLat2 = lonLat1.clone();

destroy()

common/commontypes/LonLat.js, line 145

销毁此对象。 销毁后此对象的所有属性为 null,而不是初始值。

Example
var lonLat = new LonLat(100,50);
lonLat.destroy();

equals(ll){boolean}

common/commontypes/LonLat.js, line 93

判断两个坐标对象是否相等。

Name Type Description
ll LonLat

需要进行比较的坐标对象。

Returns:
Type Description
boolean 如果LonLat对象的经纬度和传入的经纬度一致则返回true,不一 致或传入的ll参数为NULL则返回false。
Example
var lonLat1 = new LonLat(100,50);
var lonLat2 = new LonLat(100,50);
var isEquals = lonLat1.equals(lonLat2);

toShortString(){string}

common/commontypes/LonLat.js, line 50

将经度纬度转换成简单字符串。

Returns:
Type Description
string 处理后的经纬度字符串。例如:"100,50"。
Example
var lonLat = new LonLat(100,50);
var str = lonLat.toShortString();

toString(){string}

common/commontypes/LonLat.js, line 38

返回此对象的字符串形式。

Returns:
Type Description
string 例如: "lon=100,lat=50"。
Example
var lonLat = new LonLat(100,50);
var str = lonLat.toString();

wrapDateLine(maxExtent){LonLat}

common/commontypes/LonLat.js, line 113

通过传入的范围对象对坐标对象转换到该范围内。 如果经度小于给定范围最小精度,则在原经度基础上加上范围宽度,直到精度在范围内为止,如果经度大于给定范围则在原经度基础上减去范围宽度。 即指将不在经度范围内的坐标转换到范围以内(只会转换 lon,不会转换 lat,主要用于转移到日界线以内)。

Name Type Description
maxExtent Bounds

最大边界的范围。

Returns:
Type Description
LonLat 将坐标转换到范围对象以内,并返回新的坐标。
Example
var lonLat1 = new LonLat(420,50);
var lonLat2 = lonLat1.wrapDateLine(
     new Bounds(-180,-90,180,90)
 );