标题:Qt/C++覆盖物的添加和获取信息/折线多边形矩形圆形/点聚合海量点
作者:liudianwu
日期:2025-01-02 09:17
内容:
## 一、前言说明
覆盖物一般包括标准点marker、折线polyline、多边形polygon、矩形rectangle、圆形circle等,这些功能在所有地图中都是支持的,有些地图对应的矩形使用多边形来实现,因为矩形也是多边形的一种。除了上述5种基础的覆盖物以外,还有两种高级的覆盖物,那就是点聚合和海量点,点聚合是标准点的高级分组版本,是将一定范围区域内的标准点合并到一个点,这个点上面显示总共包含多少个标准点,单击这个点,自动切换缩放级别显示更详细的标准点信息,这样可以大大节约内存,同时绘制也会显示不那么密集,不然全部挤在一块也是显得非常的不友好。
海量点相当于是标准点的低资源占用版本,由于单纯的标注点带的信息比较多,随着数量的增多,占用的资源也很多,如果标注点的数量成千上万,很容易卡主地图,有没有一种方式既可以显示所有的点,而资源占用更低呢,这就是海量点的出现的原因,它采用canvas绘制,除了经纬度信息,其他都不带,每个点都是绘制的圆形或者其他指定的枚举值中的图形,统一定义的大小,一般会设置一个小一点的值。总之,在项目中,可以根据实际需求,选择哪种绘制方式。
## 二、相关代码
```cpp
void MapObjFunOverlay::editOverlay(QStringList &html)
{
//启用禁用编辑所有覆盖物
html