Skip to content

几何构造 — G.geom.*

几何命名空间提供各种几何对象的工厂函数。所有方法均为同步,直接返回几何对象。

G.geom.point(coord)

创建点几何。

ts
G.geom.point(coord: Coordinate): Point
参数类型描述
coord[number, number]坐标 [lng, lat]
ts
const pt = G.geom.point([116, 39]);

G.geom.lineString(coords)

创建线几何。

ts
G.geom.lineString(coords: Coordinate[]): LineString
参数类型描述
coordsCoordinate[]坐标数组 [[lng, lat], ...]
ts
const ls = G.geom.lineString([[0, 0], [1, 1], [2, 2]]);

G.geom.polygon(rings)

创建多边形几何。

ts
G.geom.polygon(rings: Coordinate[][]): Polygon
参数类型描述
ringsCoordinate[][]环形坐标数组 [[[lng, lat], ...], ...]
ts
const poly = G.geom.polygon([[[0, 0], [10, 0], [10, 10], [0, 10], [0, 0]]]);

G.geom.multiPoint(coords)

创建多点几何。

ts
G.geom.multiPoint(coords: Coordinate[]): MultiPoint
参数类型描述
coordsCoordinate[]坐标数组 [[lng, lat], ...]
ts
const mp = G.geom.multiPoint([[0, 0], [1, 1]]);

G.geom.multiLineString(lines)

创建多线几何。

ts
G.geom.multiLineString(lines: Coordinate[][]): MultiLineString
参数类型描述
linesCoordinate[][]坐标数组数组 [[[lng, lat], ...], ...]
ts
const mls = G.geom.multiLineString([[[0, 0], [1, 1]], [[2, 2], [3, 3]]]);

G.geom.multiPolygon(polys)

创建多多边形几何。

ts
G.geom.multiPolygon(polys: Coordinate[][][]): MultiPolygon
参数类型描述
polysCoordinate[][][]多边形数组 [[[[lng, lat], ...], ...], ...]
ts
const mpg = G.geom.multiPolygon([
  [[[0, 0], [10, 0], [10, 10], [0, 10], [0, 0]]],
]);

G.geom.circle(center, radius)

创建圆形几何。

ts
G.geom.circle(center: Coordinate, radius: number): Circle
参数类型描述
center[number, number]圆心坐标
radiusnumber半径
ts
const c = G.geom.circle([116, 39], 500);

G.geom.boundingBox(extent)

创建包围盒几何。

ts
G.geom.boundingBox(extent: Extent): BoundingBox
参数类型描述
extent[number, number, number, number]范围 [minX, minY, maxX, maxY]
ts
const bb = G.geom.boundingBox([0, 0, 100, 100]);

G.geom.ellipse(center, rx, ry)

创建椭圆几何。

ts
G.geom.ellipse(center: Coordinate, rx: number, ry: number): Ellipse
参数类型描述
center[number, number]中心坐标
rxnumberX 方向半径
rynumberY 方向半径
ts
const e = G.geom.ellipse([116, 39], 500, 300);

G.geom.box3d(center, dims)

创建 3D 盒体几何。

ts
G.geom.box3d(center: Coordinate, dims: [number, number, number]): Box3D
参数类型描述
center[number, number, number]中心坐标(含高程)
dims[number, number, number]X/Y/Z 方向尺寸
ts
const b = G.geom.box3d([116, 39, 0], [100, 100, 50]);

G.geom.sphere3d(center, radius)

创建 3D 球体几何。

ts
G.geom.sphere3d(center: Coordinate, radius: number): Sphere3D
参数类型描述
center[number, number, number]中心坐标(含高程)
radiusnumber半径
ts
const s = G.geom.sphere3d([116, 39, 100], 50);

G.geom.cylinder3d(center, radius, height)

创建 3D 圆柱几何。

ts
G.geom.cylinder3d(center: Coordinate, radius: number, height: number): Cylinder3D
参数类型描述
center[number, number, number]中心坐标(含高程)
radiusnumber半径
heightnumber高度
ts
const c = G.geom.cylinder3d([116, 39, 0], 30, 100);

G.geom.cone3d(center, radius, height)

创建 3D 圆锥几何。

ts
G.geom.cone3d(center: Coordinate, radius: number, height: number): Cone3D
参数类型描述
center[number, number, number]中心坐标(含高程)
radiusnumber底面半径
heightnumber高度
ts
const c = G.geom.cone3d([116, 39, 0], 30, 100);

G.geom.geometryCollection(geoms)

创建几何集合。

ts
G.geom.geometryCollection(geoms: Geometry[]): GeometryCollection
参数类型描述
geomsGeometry[]几何对象数组
ts
const gc = G.geom.geometryCollection([
  G.geom.point([0, 0]),
  G.geom.point([1, 1]),
]);

四川省交通运输综合地理服务平台 地图开发框架