st_geomfromtext : 将wkt数据转换成geometry空间数据
st_geomfromtext('polygon ((10.02 20.01, 11.92 35.64, 25.02 34.15,
19.15 33.94, 10.02 20.01))', 4326)// (wkt, 坐标系)
st_astext: 将数据库中的空间数据转换成wkt数据,常用于空间数据的提取
select st_astext(geom) from tableName
st_asmvtgeom:函数将几何图形坐标转换成MapBox VectorTile坐标空间里的几何图形
st_asmvt:函数将基于MapBox VectorTile坐标空间的几何图形转换为MVT二进制矢量切片
二个函数通常搭配使用,可以在Java后台实现动态矢量切片
以下示例实现动态矢量切片,以及后端接口如何返回空间数据属性
前端用maptalks加载
var vt = new VectorTileLayer("id", {
urlTemplate: "http://xxx/tiles/{z}/{x}/{y}?tableId="+ tableId,
spatialReference: "preset-vt-3857",
features: true,// identify点击返回features
schema: true,// identify点击返回属性
pickingGeometry: true,// identify点击返回Geometry
style
});
const sceneConfig = {
postProcess: {
enable: true,
antialias: {
enable: true,
}
}
}
groupLayer = new GroupGLLayer(data.id, [vt], {
sceneConfig,
symbol: {
polygonFill: '#f00',
polygonOpacity: 0.5
}
});
st_extent: 获取空间数据的外包矩形
SELECT st_astext (ST_Extent (list.the_geom))
FROM tableName list // the_geom空间字段
// 返回'POLYGON(())'
st_buffer:对空间数据进行缓冲区分析,st_buffer(geom,distance)
select st_adtext(st_buffer(list.the_geom,100)) from tableName list
// list.the_geom 空间数据 'POINT(132.5346,32.456)'