记录自己用ArcGIS JavaScript 4.x实现以点(Point)为中心生成任意长宽的矩形缓冲区的效果。关键是通过中心点坐标,长,宽作为条件计算出各顶点坐标来绘制出一个类型为矩形多边形(polygon)的图形。下图是演示效果:

绘制矩形缓冲相关代码:
/**
* 绘制长方形缓冲的方法
* 中心点-[lon,lat]
* 长-width
* 宽-height
*/
function getRectangleBuffer (centerPt, width, height) {
var xieLineDis = Math.sqrt(width * width + height * height);
var Tdegs = deg(Math.atan(width / height)); //弧度转换为度数
var coordTopLeft = distanceAngle({ lon: centerPt[0], lat: centerPt[1] }, -Tdegs, xieLineDis / 2); //左上角坐标
var coordTopRight = distanceAngle({ lon: centerPt[0], lat: centerPt[1] }, Tdegs, xieLineDis / 2); //右上角
var coordBottomLeft = distanceAngle({ lon: centerPt[0], lat: centerPt[1] }, -(180 - Tdegs), xieLineDis / 2); //左下角
var coordBootomRight = distanceAngle({ lon: centerPt[0], lat: centerPt[1] }, 180 - Tdegs, xi

本文介绍如何使用ArcGIS JavaScript API 4.x,以指定的中心点、宽度和高度生成并绘制一个矩形缓冲区。关键在于计算矩形各顶点坐标,通过这些坐标构建一个多边形(polygon)图形。
最低0.47元/天 解锁文章
1700

被折叠的 条评论
为什么被折叠?



