




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MapABC API接口以替换高德位置通为目标,研究了使用MapABC API开发相类似功能的可能性,研究成果如下:一、总体概况位置服务地图查询:测距、测面积、标注、感兴趣区域(POI)查找等功能可以用免费接口实现。实时定位:免费接口可以实现。实时轨迹:免费接口可以实现。历史轨迹:免费接口可以实现。敏感地点地点管理:敏感地点超过预设时间报警功能需要企业版API功能实现。地点展示:免费接口可以实现。绑定车辆:免费接口可以实现。电子围栏围栏管理:围栏管理中的进出区域报警功能需要企业版API功能实现。围栏展示:免费接口可以实现。绑定车辆:免费接口可以实现。路线偏航线路管理:新建线路中的地理编码功能需要企业版API功能实现。线路展示:免费接口可以实现。绑定车辆:免费接口可以实现。二、使用接口:初始化地图:1. var mapoption = new MMapOptions();2. var mapObj = new MMap(map, mapoption);/map为容器ID测距:mapObj.setCurrentMouseTool(MConstants.RULER);测面积:mapObj.setCurrentMouseTool(MConstants.COMPUTE_AREA);标注:3. var labelOptions=new MLabelOptions();/label样式选项4. var label=newMLabel(newMLngLat(param.eventX,param.eventY)5. ,labelOptions); /param.eventX、param.eventY为label位置坐标6. mapObj.addOverlay(label);/添加到图层感兴趣区域查找:7. var MSearch = new MPoiSearch();8. var opt = new MPoiSearchOptions();/Poi搜索选项9. MSearch.setCallbackFunction(keywordSearch_CallBack); /keywordSearch_CallBack-回调函数,解析回传数据10. MSearch.poiSearchByKeywords(keywords,city,opt); /keywords关键字,city-所在城市实时定位:11. if(mapObj.getOverlayById(car)!=null)12. mapObj.removeOverlayById(car);/先删除原来的点13. 14. mapObj.removeAllOverlays();/先移除所有的图层15. mapObj.setCurrentMouseTool(MConstants.PAN_WHEELZOOM);/把鼠标设为平移和滚轮缩放16. var carLat=new MLngLat(118.11234,24.469494,MConstants.C17. OORD_TYPE_OFFSET);/经纬度坐标18. var carOptions=new MMarkerOptions(); /点样式选项19. var labelOption = new MLabelOptions(); /汽车标签20. labelOption.content=闽E95532; 21. var fontStyle=new MFontStyle(); /字体样式22. fontStyle.color=0xFF3300;23. labelOption.fontStyle=fontStyle;24. carOptions.labelOption=labelOption;25. carOptions.imageUrl=/images/car_03.png;26. carOptions.canShowTip=true;27. var car=new MMarker(carLat,carOptions);/创建点28. car.id=car;29. mapObj.addOverlay(car,true);/加入图层实时轨迹:30. mapObj.setGPSFocus(MConstants.FOCUS,arr);/设置以车辆为中心,arr为车辆位置坐标31. mapObj.markerMoveAlong(car,pointMoni,2);/设置移动路线,pointMoni存储点坐标,2为移动速度32. mapObj.startMoveAlong(car,false);/开始移动注意:使用MarkerMoveAlong()方法才能根据上下点控制车头朝向,而MarkerMoveTo()也可以实现移动,但无法动态控制车头朝向历史轨迹:33. Moni();/模拟GPS点数据,以后用实时数据点替换34. var lineStyle1=new MLineStyle();/线样式35. lineStyle1.thickness=3;36. lineStyle1.color=0xFF3300;37. lineStyle1.alpha=0.5;38. lineStyle1.linType=MConstants.LINE_SOLID;39. var tipOptions=new MTipOptions();/提示窗口选项40. tipOptions.tipType=MConstants.HTML_BUBBLE_TIP;41. tipOptions.content=时间:2012-3-19 5:00am ;42. tipOptions.title=轨迹1;43. tipOptions.tipHeight=150;44. tipOptions.tipWidth=120;45. var pLineOptions=new MLineOptions();/描述线选项46. pLineOptions.lineStyle=lineStyle1;47. pLineOptions.tipOption=tipOptions;48. pLineOptions.canShowTip=true;49. var polyLine=new MPolyline(line,pLineOptions);/该类用于构造多义线50. polyLine.id=pLine;51. mapObj.addOverlay(polyLine);/添加到图层52. /设置完成,开始轨迹回放,可设置轨迹回放速度53. mapObj.setGPSFocus(MConstants.FOCUS,arr);54. mapObj.markerMoveAlong(car,polyLine,1); 55. mapObj.startMoveAlong(car,true);敏感地点绘制:1、画圆: 56. var arr=new Array();/圆的中心点 57. arr.push(new MLngLat(118.177185,24.498433); 58. var linestyle=new MLineStyle();/创建线样式对象 59. linestyle.thickness=2;/线的粗细度,默认为2 60. linestyle.color=0x005890;/线的颜色,16进制整数,默认为0x005890(蓝色) 61. linestyle.lineType=MConstants.LINE_SOLID;/线的表现样式,LINE_SOLID,实线(默认),LINE_DASHED,虚线 62. var fillstyle=new MFillStyle();/创建填充样式对象 63. fillstyle.color=0x005891;/面的填充颜色,16进制整数。 64. fillstyle.alpha=0.2;/填充面的透明度,范围01,0为透明,1为不透明(默认) 65. var areastyle=new MAreaStyle();/创建面样式对象 66. areastyle.borderStyle=linestyle;/面的边框风格。 67. areastyle.fillStyle=fillstyle;/面的填充风格。 68. var tipoption=new MTipOptions();/添加信息窗口 69. tipoption.title=信息窗口标题;/信息窗口标题 70. tipoption.content=信息窗口内容;/信息窗口内容 71. var labeloption=new MLabelOptions();/添加标注 72. labeloption.content=电子围栏;/标注的内容 73. labeloption.labelPosition=new MPoint(10,10); 74. var areaopt = new MAreaOptions();/构建一个名为areopt的面选项对象。 75. areaopt.areaStyle=areastyle;/设置面的风格 76. areaopt.tipOption=tipoption;/设置面的信息窗口参数选项 77. areaopt.canShowTip=true;/设置面是否显示信息窗口 78. areaopt.isEditable=false;/设置面是否为可编辑状态,true,可编辑;false,不可编辑(默认) 79. areaopt.labelOption=labeloption;/设置面的标注选项参数 80. areaopt.isDimorphic=true;/设置面是否高亮显示,默认为false即没有高亮显示,true有高亮显示 81. areaopt.dimorphicColor=0x005899;/设置第二种状态的颜色,默认为0xFF0000,即红色 82. circle = new MCircle(arr,5000,areaopt);/利用圆的中心点、圆半径及 option选项来创建圆对象 83. circle.id =circle101;/对象编号,也是对象的唯一标识 84. mapObj.addOverlay(circle,true);/向地图添加覆盖物2、画多边形:85. mapObj.setCurrentMouseTool(MConstants.DRAW_POLYGON);86. var temparr=mapObj.getOverlaysByType(MOverlay.TYPE_POLYGON);/获取该多边形87. var bounds=new Array();88. var bounds1=null;89. for(var i=0;itemparr0.lnglatArr.length;i+)90. 91. bounds.push(new MLngLat(temparr0.lnglatArri.lngX,temparr0.lnglatArri.latY);92. 93. bounds1=new MLngLats(bounds);/获取多边形点信息3、敏感地点所依据的空间分析功能:94. var mss=new MSpatialSearch();/该空间分析功能为企业版才有95. mss.setCallbackFunction(myfunc);/设置返回解析函数96. mss.isPoiInRegion(MOverlay.TYPE_POLYGON,poiXY,regionXY,new MSpatialSearchOptions();注:1、myfunc为回调函数,用来解析空间判断结果的JSON或xml数据2、电子围栏实现和敏感区域相同!路线偏航:1、先解析出路线的点坐标,存在自定义的bounds1数组中:97. var temparr=mapObj.getOverlaysByType(MOverlay.TYPE_POLYLINE); /获得类型为Polyline的图层98. var bounds=new Array();99. if(temparr0=null)100. return;101. 102. for(var i=0;itemparr.length;i+)103. 104. for(var j=0;jtemparri.lnglatArr.length;j+)105. 106. bounds.push(new MLngLat(temparri.lnglatArrj.lngX,temparri.lnglatArrj.latY);107. 108. 109. var bounds1=new MLngLats(bounds);2、根据传入的点进行空间距离判断:110. var mss=new MSpatialSearch();/该空间分析功能为企业版才有111. mss.setCallbackFunction(myfunc0);/设置返回解析函数112. mss.calculaDistance(poiXY,null,bounds1,new MspatialSearch113. Options();/poiXY为终端点坐标信息3、其中,返回解析函数如下:114. function myfunc0(data)115. if(data.error_message!=null)116. document.getElementById(leeway_result).innerHTML=查询异常+data.error_message+ ;117. 118. if(data.length30)/3000米119. 120. document.getElementById(leeway_result).innerHTML=车辆偏离路线+data.length+米 ;121. 122. else123. 124. document.getElementById(leeway_result).innerHTML=p style=color:red车辆在预设路线内;125. 126. 逆地理编码:传入经纬度坐标,通过逆地理编码,转换为地理位置描述(地址)。该功能需要企业版API功能实现。127. var xy=document.getElementById(lnglat).value; 128. if(xy=) 129. return; 130. else 131. var coor=xy.split(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业设计与智能制造技术融合应用
- 工业设计与制造技术的创新融合
- 工作中的心理疲劳与对策研究
- 工作中的数据分析软件使用指南
- 工业设计的美学与实 用性探讨
- 工作中的法律风险防范与应对
- 工作流程标准化与管理提升
- 工作与生活平衡的企业政策实践
- 工程塑料模架设计与优化
- 工作汇报的逻辑框架
- 福建省南平市2023-2024学年八年级下学期期末考试数学试卷(含答案)
- 集控运行岗面试题及答案
- 河道疏浚对渔业发展的影响与对策
- 2024年11月传播学教程试题库(附答案解析)
- 2025年中考数学:初中八年级下册第X单元:代数综合测试试卷
- 白酒酒店合作合同协议书
- T/CIE 209-2024儿童实物编程教育评价指南
- 中国融通农业发展有限集团有限公司招聘笔试题库2025
- 塑料包装制品项目投资计划书
- 慢性活动性EB病毒病诊治专家共识(2025版)解读
- 2025年入团考试常见问题及试题答案
评论
0/150
提交评论