1、创建点
1.1point()创建单点
var point =ee.Geometry.Point(-101.8775,35.2463)
Map.addLayer(point)
Map.centerObject(point)
1.2 MultiPoint()创建多点
var point =ee.Geometry.MultiPoint([[-101.8775,35.2463],
[-101.7621,35.2007],
[-101.7604,35.2386]])
Map.addLayer(point)
2 LineString()/MultiLineString()创建单线或者多线段
//创建单线
/*var line =ee.Geometry.LineString([[-101.8775,35.2463],
[-101.7621,35.2007]])*/
//创建多线
var multiline=ee.Geometry.MultiLineString([[-101.8775,35.2463],
[-101.7621,35.2007],
[-101.8761,35.2036],
[-101.76044,35.2386]])
Map.addLayer(multiline)
注:创建闭合线时最后一个点为起始点坐标,且使用的时LinearRing()
3 创建多边形
3.1 Polygon()创建单个多边形
var multiline=ee.Geometry.Polygon([[[-102.00057948108831,35.11716328220111],
[-101.65451014515081,35.11716328220111],
[-101.65451014515081,35.268670400291384],
[-102.00057948108831,35.268670400291384],
[-102.00057948108831,35.11716328220111]]])
Map.addLayer(multiline)
3.2MultiPolygon()创建多个多边形
var Forbidden_City = ee.Geometry.MultiPolygon(
[[[[116.39393637477303, 39.921260179361866],
[116.39350722133065, 39.91882457850439],
[116.39676878749276, 39.918791664386056],
[116.39711211024667, 39.920963962263336]]],
[[[116.39887163936044, 39.91810046424626],
[116.39595339595223, 39.91698136351405],
[116.40080282985116, 39.91652055201477]]]]);
Map.centerObject(Forbidden_City)
print(Forbidden_City)
Map.addLayer(Forbidden_City)
3.3rectangle()创建长方形
var rectangle=ee.Geometry.Rectangle(-102.00057948108831,35.11716328220111,
-101.65451014515081,35.268670400291384)//输入四边形的对角线
Map.addLayer(rectangle)
4、transform()投影变换
var rectangle=ee.Geometry.Rectangle(-102.00057948108831,35.11716328220111,
-101.65451014515081,35.268670400291384)
var tran_rectangle=rectangle.transform('EPSG:4326',ee.ErrorMargin(100))//将rectangle转换为WGS84
Map.addLayer(tran_rectangle,{color:'000000'})
Map.addLayer(rectangle,{color:'FF0000'})
transform(proj,maxerror):
proj为其中要变换的投影,其中投影必须是EPSG格式的编号详情可以见网址
EPSG.io: Coordinate Systems Worldwide
maxerror为可以容忍的最大投影误差为多少。
5、centroid()计算几何体的形心/质心
var rectangle=ee.Geometry.Rectangle(-102.00057948108831,35.11716328220111,
-101.65451014515081,35.268670400291384)
var centroid_rectangle=rectangle.centroid()
Map.addLayer(rectangle,{color:'FF0000'})
Map.addLayer(centroid_rectangle,{color:'000000'})
6、simplify()简化图形
var simple_pol1=pol_1.simplify(1000)//接受的最大误差值
Map.addLayer(simple_pol1,{color:'000000'})
7、bounds()/convexHull()得出集合体的外接矩阵或者凸包
var bound_pol1=pol_1.bounds()
var convexHull=pol_1.convexHull()
Map.addLayer(bound_pol1,{color:'000000'})//黑色显示
Map.addLayer(convexHull,{color:"FF0000"})//凸包红色显示
点的凸包就是点本身,共线点的凸包是直线,其他一切的凸包都是多边形。
8、buffer()返回给定距离的缓冲区
var pol_1_buffer=pol_1.buffer(1000)
Map.addLayer(pol_1_buffer,{color:"FF0000"})