地图组件中标注点在所有覆盖物中,使用场景是最大的,就是在地图上显示个图片图标,然后可以显示提示文字信息,这个标注点还可以轨迹移动,轨迹回放和实时轨迹都要用到这个覆盖物,所以涉及一个尽可能满足现有各种需求场景的类非常重要,最开始的时候做的很简单,就是绘制一个图片,在Qt中直接用qpainter的drawimage即可,这里涉及到一个问题,有些图标是水滴状,有些是圆形的,一般来说,用户希望的是水滴状的显示在坐标的顶部,圆形的图标显示在坐标的中间,甚至还有些其他的图标,这样展示会显示的更合理。于是多了一个参数,需要设置图片在位置的哪个方位,支持左侧、右侧、上侧、下侧、中间、左上角、右上角、左下角、右下角共9个位置,这样涵盖了所有可能的情况。
有了图标还是不够的,一般还需要有提示文本,这个提示文本也需要有9个方位可控,然后就是支持背景颜色和透明度,一般来说是半透明更好看,还支持边框颜色和粗细设置。当然还包括字体名称和大小的参数。后面发现尽管是在对应位置绘制的文本,靠的太近也不大好看,还增加文本位置的偏移值参数,也就是尽量离图标远一点,不要紧挨着。写完所有的参数,专门做了个标注的示例,可以动态调整各个参数。


