1234567891011121314151617 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="com.onemap.analyse.mapper.raster.SlopMapper">
- <select id="getAveSlop" resultType="Double">
- -- 创建一个多边形
- WITH poly AS (SELECT public.st_geomfromtext(#{geomWkt}, 4326) AS geom)
- -- 裁剪坡度图层并计算平均坡度
- SELECT AVG((gv).val) AS avg_slope
- FROM (SELECT public.st_clip(rast, 1, geom, false) AS clipped_rast
- FROM sy_slop,
- poly
- WHERE public.st_intersects(rast, geom)) AS clipped,
- LATERAL public.st_pixelaspoints(clipped_rast) AS gv
- WHERE (gv).val IS NOT NULL;
- </select>
- </mapper>
|