首页 / 浏览问题 / 组件GIS / 问题详情
图层标绘选中问题
31EXP 2022年11月07日

思路是创建一个跟随鼠标坐标的ugpoint,然后使用ugspatialqyery的query的查询函数,查询该点是否包含在图层中的标绘对象中,但是该方法好像只能适用于面类型标绘,不能选中线类型标绘。请问有类似的方法,或者其他方法,实现线条标绘和由复杂线条组成的标绘的点击选中方法。

1个回答

您好,空间查询也是可以查询点和线的,但是通常为了做选中逻辑的话,不会直接使用点对象去直接查询,因为点和线相交的概率很小,通常来说做选中逻辑的时候都会先对点对象进行一定的缓冲,使用缓冲后的圆面再去做空间查询,查询选中的点、线、面等数据。

希望可以帮到您。
2,163EXP 2022年11月07日
好嘞,谢谢,还有请问具体缓冲用的是那个类的那个函数
您好,做缓冲的话建议您直接使用UGC::UGGeoCircle,根据UGPoint2D创建圆即可,通过 UGGeoCircle 的 Make 方法。
非常感谢,试了一下可以用

就是如果标绘太密集,可能会不能准确选中,可以让这个圆和标绘的缩放保持一致吗,方便放大地图,来准确选中
您好,想要让圆和标绘的缩放保持一致的话,需要您自行根据当前地图的缩放比例尺计算圆的半径,圆的半径动态变化,只能自行实现具体算法
...