百度地图可视化大屏:基于Canvas的路口交通信号看板实现解析 - 技术应用 - 智慧交通网 ITS114.COM|中国智能交通领先的门户网站
  • 百度地图可视化大屏:基于Canvas的路口交通信号看板实现解析

    2019-06-17 12:03:56 来源:百度地图智慧交通 评论:
    分享到:

    读图时代,大数据可视化已经越来越成为B端和G端业务信息化转型和智能化升级的标配。一块酷炫的可视化大屏背后,不仅需要有能力强大的GIS引擎和丰富的GIS数据,还需要有过硬的可视化技术和UE设计,而这背后,其实是优秀的GIS工程师、FE前端工程师和UE设计师的功劳。为应对交通、规划、统计、电力等产业界对基于地图的业务数据可视化大屏的强需求,百度地图继MapV地理信息可视化开源库之后(https://mapv.baidu.com/),又推出地图可视化大屏解决方案。百度地图可视化大屏解决方案,基于百度智慧专网地图,可以满足用户在专网环境下,对地理强相关的业务数据进行渲染并全景多维度展示。

    本期百度地图可视化大屏解决方案技术解析为您呈现了基于Canvas的路口交通信号看板绘制技术。

    01业务及技术痛点

    • 路口智能交通信号灯控制系统是数字化运行的,为了帮助工程师及交通管理者更直观地监控信号灯控制系统运行,需要把数字化的信号灯控状态用视觉化效果加以呈现;

    • 随着BS架构的城市级信号灯管理平台的普及,如何综合利用GIS和Web技术,灵活、高效、自动化地呈现城市范围内数量众多的路口交通信号灯实时状态,满足多种应用场景适配,成为一个新挑战。

    02技术解决方案

    为了在Web端尽可能准确还原真实世界中的路口及交通信号灯状态,需要基于百度地图强大的道路基础数据库数据(包括路口点位、路口道路方向、车道数以及左、直、右等转向信息),然后借助计算机图形绘制技术,将路口及交通信号灯状态进行可视化呈现,最终效果图如下:

    blob.png

    (备注:本示例选用四方向、左转直行右转三车道,数据非真实数据)

    为了实现以上效果,实现步骤如下:

    1. 素材准备

    将路口各元素进行抽象,化繁为简:

    • 文字:包括数字、汉字

    展示倒计时、道路名称,支持文字旋转、颜色变换。

    blob.png

    • 图标:车道转向标识

    通过控制图标颜色展示方向、通行红绿灯状态;

    通过拾取图片颜色然后改变了图片的RGBA值进行颜色变换。

    blob.png

    • 线:虚线、直线

    展示道路中心分割线、车道分割线。

    blob.png

    • 图形:圆

    使用圆、多边形代表道路中心区域。

    blob.png

    2. 确定路口中心点并计算每个方向的道路方向角

    • 通过交叉路口各连接道路的经纬度(link信息),计算得到各连接道路的角度方向;

    • 规定正北为0°,所有角度均为相对于正北的相对角度。

    3. 确定车道宽度、车道数量

    • 车道宽度:为简化起见,示例车道宽度取值为固定值,实际项目中,可根据道路设计信息补充调整;

    • 车道数量:为简化起见,示例车道数量选用三车道,实际项目中可根据地图基础数据库中的车道数调整。

    4. 画出路口图

    根据步骤2和步骤3,画出路口图:

    blob.png

    5. 计算车道方向标识位置并添加

    根据上一步计算得到的车道位置,匹配相应的左、直、右车道标识位置:

    blob.png

    6. 计算倒计时数字位置并添加

    相对车道方向标识进行定位,并根据道路方向设置文字旋转角度。因为每个方向都是分别画好之后,旋转得到的,所以,这里文字需要旋转相应角度才能正常显示,如下是四个方向预先绘制好的图像:

    blob.png

    7. 计算道路名位置并添加

    需要把道路名称显示在每个方向的末端,此处根据中心点、绘制区域边界、道路旋转角度计算得到文字位置:

    blob.png

    03成效

    基于Canvas的路口交通信号看板实现技术,使得BS架构的交通信号控制管理平台可以灵活、高效、自动化地对城市范围内的所有联网信号控制路口进行快速建模并完成视觉化展现,并且具有良好的扩展性,例如可以根据基础地理数据库数据呈现如三岔或五岔路口等稍微复杂的路口展示。

    blob.png

  • 关键字: 可视化大屏 Canvas 交通信号
  •    责任编辑:刘艳
  • 每周新闻精选

  • 关于我们
  • 联系我们
  • 广告赞助