一、智慧导览系统介绍
手绘电子地图,就是把手绘地图覆盖到地图上,游客或者普通用户,可以在手机上通过地图的链接(或者现在流行的小程序)打开使用。是一种使用非常方便,集“视、听、路径规划、实时导航”等诸多功能于一体的智慧导览系统。也是现在很多景区为游客提供的增加便捷性和游玩体验的一项功能。
重要的两点,我认为是:
1.手绘图本身
手绘图的美观度、清晰度、完整度、准确度,决定了图的档次格调的高低,也是手绘设计师的技术水平、设计能力、规划能力、沟通能力等综合性体现。
2.实时导航功能
如果说手绘图本身是面子,让人对地图有印象和直观感受,那么实时导航功能则是地图的灵魂和里子。没有实时定位和动态路径规划导航功能的地图,只是一个可观而不可用的花瓶,没有使用价值。没有准确的而高效的实时导航算法,就不能把地图价值在游客手里发挥到大。
因为多年的从业经验,我从一个纯技术的角度来分享一下如何实现这样的“智慧导览系统”。
二、智慧导览系统功能
先看一个参考示例图(根据实际情况,只添加了必要的功能):
参考示例图
编辑
1.基础功能
地图功能的设计,包括需要哪些功能,需要怎么展示,地图点位的图标等细节,不一而足。每个需求方可能要的也不一样。但总体来说,可能包含如下:
景点介绍:这是智慧导览系统基础的功能之一。在系统后台可以在地图上添加景点标注,并完善相应的介绍信息,包括图片、文字、图文、语音、视频等内容。服务设施:在地图上添加区域内的服务设施,如厕所、游客中心、停车场等内容。商家信息:在地图上添加区域内的商家,如酒店、餐饮、特产等商家。用户可查看商家介绍、商家产品,并可支付下单购买。景区公告:在后台添加景区新公告,如闭园通知、开园通知、新活动等信息。线路推荐:在后台设置推荐的线路及景点,游客在地图上可点击查看,并在地图上直观的规划出推荐的路径,模拟导览游览。非常直观明了。咨询电话:可在后台设置景区的咨询、客服的联系方式,如电话、微信、微博等。景区720:可拍摄制作景区的720全景,并在地图上标注展示,更直观的向游客展示景点的实景。
2.增强功能
智慧导览系统还应该具备如下增强功能,才能更好的增强客户的服务能力、满足用户的使用需求。这也是当前电子手绘地图系统的重点和难点。
实时定位:基于客户端的位置获取接口(如上文,可能大部分是微信环境里,或者浏览器环境),实时获取用户当前的位置信息。当然,位置的精度可能会受到诸多方面因素的影响,如天气、建筑物遮挡、设备本身的性能或GPS模块的精度、网络状况等。在理想的情况下,精度甚至可达到10到20米左右的偏差。这种精度,在民用已经算是了。为什么不给出更jingque的精度,可能一方面是设备、技术等因素限制,另一方面,从安全角度来看,可能这也超出民用的范畴。当然,话说回来,从我们的实际使用场景来看,这样的精度其实已经远远的满足我们的需求了。这里说个题外话,为什么我们在手机上使用地图APP导航的时候,不管是驾车还是步行,看上去都能做到无误呢?(如驾车,在路口转向时,基本上达到米级的精度)关于这一点,我是这样思考的:地图APP是基于设备的定位,然后再结合当前使用者的导航方式、路径规划、设备朝向、速度等多方面综合的因素,用强大的后台算法为用户的当前位置做了智能的“纠偏”。那为什么我们智慧导览系统不做这样的纠偏呢。从实际出发,这一方面是我们的数据量远远不够丰富完善,另一方面是“性价比”不高。在园区内的导航,不需要这样的“纠偏”已经可以满足需求,而要做这样的“锦上添花”的功能,则需要付出指数级甚至更高的成本和代价。动态路线规划:基于前端设备“实时定位”的能力,智慧导览系统实时计算用户当前位置和指定目的地的路径。指定的目的地,可以是地图上标注的任意一个点位,如景点、服务设施、商家等。这一点,和地图APP的导航功能非常类似。园区内很多情况下,没有地图APP平台采集路线,所以需要我们人工在智慧导览系统后台标注和实际情况一致的路线,或者通过智慧导览系统提供的路线采集工具,安排人员现场采集。其实,地图平台的路线采集也是这样做的。各大地图平台,都有国家发放的牌照,然后通过路线采集人员驾车或步行,采集、更新每个城市的道路(仔细想想,这是一个多大的工作量和成本,我们每个人都可以免费的使用这些服务,感谢他们的付出成本和辛苦)。自动触发:基于“实时定位”和“动态路线规划”能力,用户达到系统设置的点位附近时,可以自动触发后台配置的各种功能,如自动播放景点的语音讲解、展示图文内容,或推送商家的优惠券等。为用户提供便利、人性化的智慧服务。多语言:多语言是智慧导览系统满足国际化需求的一个增强功能。系统具备基本的汉语、英语选择,还具备很便捷的扩展其他语种的设计和功能。
3.地图个性化
智慧导览系统不应该是一个单纯的功能性的系统,还应该有更多丰富的、多元化的功能,为用户提供更多个性化、趣味化的服务。
个人中心:系统具备用户个人中心的功能。用户可以对地图上的景点进行点赞、评论等操作,然后可在个人中心查看。营销、广告:后台可在地图上添加固定的营销、广告等信息,增强能力和满足运营需求。优惠券:后台可设置地图上的商家发送优惠券,吸引、导流游客进店,带动消费。寻宝游戏等活动:后台可在地图上添加寻宝指引点位,引导游客到指定地点扫码积星对话奖品。标注图标动效:所有标注点的图标,可设置一些动效,增加地图的趣味性和个性化。
三、技术栈的选择
从这里开始后面的内容,有一定的行业背景或经验的人,能更好的理解。我尽量说得通俗易懂一些。如果你觉得一些名词不明白是什么意思,可以直接跳过。
现在绝大部分业务系统的开发,都是基于一个成熟的技术栈来实现。这样可以极大的节约基础设施的成本,而且效率得到极大的提高。甚至某些系统或行业的应用及系统,不基于一些成熟的技术栈,想要完全自主开发,几乎是不可实现的。
智慧导览系统,建议基于这样的一个技术栈:
1.服务器
使用成熟的云平台,国内成熟好用的几家,业内人都知道。
2.前端平台
如今大的前端平台是微信小程序,还有就是浏览器直接通过链接打开。不过就智慧导览系统来说,大部分情况下,微信小程序也是基于Webview控件来调用,本质上和浏览器的直接打开没什么区别,就是HTML5+Javascript+CSS3来实现。但是微信的生态内,会有一些微信开放的额外的一些接口和功能,比如说:可以使用微信提供的位置获取接口,来为游客获取更的定位。
3.地图平台
智慧导览系统只能基于地图的开放平台来实现。目前国内几家大而成熟的地图平台:高德地图、百度地图、腾讯地图。建议高德地图,次选百度地图。为什么呢?
地图有个“层级(Zoom)”的概念,就是用户打开地图,放大缩小,就是显示的不同的层级。现在地图平台开放的层级,高德地图大为19级,百度地图为18级,而同级别的情况下,高德地图也更大一些。因此,建议选择高德地图,可以做更精细化的地图。腾讯地图多不做介绍。另外,如果涉及国外的景区或地点,那谷歌地图是的选择。国内的地图在国外没有完整的内容,而且访问速度也很随缘。
四、开发介绍
具体开发内容,这里主要介绍涉及地图核心的部分。其他比如数据库设计、后台管理系统等不做过多介绍。
1.开发语言选择
后端开发:目前流行的开发语言如Java、PHP、Python等都是不错的选择,每个语言都有自己的特色。就个人而言,我比较喜欢Java和PHP,Java纯面向对象,适合大型项目,运行速度较快;PHP灵活简单,开发效率很高,现在利用有Swoole这样的扩展,也可以做到运行速度很快。前端开发:前端开发老生常谈,Javascript+HTML5+CSS3,千年不变的三板斧。但是可选择的框架或者库现在比较多,Javascript有之前非常流行的JQuery库,也有现在很火的Vue等框架。做为开发者,你擅长的可能就是适合的选择。当然,你也可以选择学习新的知识和技术代替曾经擅长的。
2.地图基础知识
这一点,是核心,基础中的基础,原理也比较复杂。因为地球是一个球体,是立体的,并不是天圆地方的一个平面,所以,首先,需要引入一个叫“坐标系统”的概念。
当前常见的坐标系主要有三种:
地球坐标系:WGS84,常见于GPS设备现在的旅游越来越倾向于年轻化,而当代年轻人的需求是复杂,他们更加向往自由自在、无拘无束的生活,所以他们也不愿意墨守成规,以报旅游的方式来消磨自己的时间。对于他们而言参加了旅游团,就等于折断了自己的翅膀,不仅无法更好地感受当地的美食美景,更无法延长自己的停留时间。
所以年轻人喜欢说走就走的旅行,而这样的趋势也愈来愈强烈,对于旅游行业来说想要抓住这个市场,仅仅是依靠传统手段固然是行不通的,对于长远发展的企业来说还是要将目光转移至移动互联网,开发一款旅游小程序才是明智之举。
那么智慧旅游小程序开发需要具备哪些功能?
旅游景点导航:对于人们来说,自然要去当地的旅游景点几次。因为是自驾游,用户可以直接在手机上玩小程序搜索当地旅游景点,确定后,小程序它将为用户提供智能导航,帮助用户节省部分查询旅游路线的时间。通过手机导航功能,用户还可以查看旅游景点附近的住宿和餐厅,让人们提前安排住宿地点。
搭建票务系统:提供在线购票和线下核销入园服务,方便游客进行门票购买和入园管理。
分时预约机制:通过预约系统,游客可以提前选择游览时间,避免拥堵,提高游览效率。
景区语音讲解:用户可开启手机定位功能,APP定位到相应的旅游景点后,将在线解释旅游景点的起源和文化遗产,让人们体验智能旅游的乐趣。对人们来说,这种旅游方式也有一种独特的味道。
智能停车功能:对于自驾游用户来说,在景区停车是他们的烦恼,而且APP可提供用户停车空间查询功能,提前预约景区停车位,使用户到达景区后及时找到停车场,给人们的生活带来一定的便利。
提供个性化推荐:根据游客的兴趣和需求,通过算法分析,向游客推荐适合的景点、活动和服务。
构建丰富的二次消费场景:通过小程序提供景区内部和周边的商家信息,推荐特色商品、美食、周边服务等,增加游客的二次消费。
数据分析功能:通过全链路数据分析,收集游客的行为数据,帮助景区制定的营销策略,提升经营效果和收入。
人们在参观旅游景点的时候通过综合性的智慧旅游小程序的介绍来的更加方便。
我国的旅游景点众多,人们到一个旅游景区的时候,直接通过关注一个小程序就可以实现对于这个景区中的所有的服务的消费需求,门票购买,景点导航,以及是商品购买等众多服务,为人们的购买消费提供很大的便利。小程序具有即关注即使用的特点,用户直接到旅游景区再去直接关注小程序使用都是十分便利的,无需下载,也较为契合现在人们不同的旅游景点的服务需求,不同的旅游景点有不同的小程序,做到更加清楚,全面了解每一个景点。
现在的旅游景点小程序开发,不仅能够提升现在的不同的旅游景点的服务水平,还能提升现在的人们的旅游体验。,Gooogle地图(非中国区域)等的坐标体系。火星坐标系:GCJ-02,中国国内使用的被强制加密后的坐标系,如高德地图、腾讯地图、谷歌地图(中国区域)的坐标就属于此类坐标系。百度坐标系:BD-09,百度地图所特有的坐标体系,它在火星坐标系的基础上又进行了一次加密处理。
但是我们使用地图的时候,却又只能看到平面的地图,因此,又有了另外一个概念:墨卡托投影。
墨卡托投影的主要功能,就是让三维立体的地图坐标能在二维平面上显示。有点类似于《三体》里的二向箔的功能,把三维系统二维化。
二维化之后的平面,会被分割为一片一片的小图,或者换句话说,由一片一片的小图拼成了二维的地图。而这个小图,叫“瓦片图”。这又是一个重要的概念。后文会继续细说。
而瓦片图的开始点(左上角,或左下角)在地球的什么地方呢,因为坐标系的不同,每个地图可能也不一样。所以,同一个经纬度,在不同的地图平台上,对应的瓦片图的序号可能都是不一样的。其中详细的原理和规则算法,这篇文章说得比较详细:
国内主要地图瓦片坐标系定义及计算原理