百度地图API公交检索示例 - 标绘结果路线、返回结果集

150 篇文章 1 订阅

百度地图API具有公交检索功能;使用它的在线SDK示例来修改代码,快速演示一下;

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
	<style type="text/css">
		body, html {width: 100%;height: 100%; margin:0;font-family:"微软雅黑";}
		#l-map{height:500px;width:100%;}
	</style>
	<script type="text/javascript" src="//api.map.baidu.com/api?v=2.0&ak=您的密钥"></script>
	<script src="//libs.baidu.com/jquery/1.9.0/jquery.js"></script>
	<title>根据起终点名称查询公交换乘</title>
</head>
<body>
	<div id="l-map"></div>
	<div id="driving_way">
		<select>
			<option value="0">最少时间</option>
			<option value="1">最少换乘</option>
			<option value="2">最少步行</option>
			<option value="3">不乘地铁</option>
		</select>
		<input type="button" id="result" value="查询"/>
	</div>
</body>
</html>
<script type="text/javascript">
	// 百度地图API功能
	var map = new BMap.Map("l-map");         
	map.centerAndZoom(new BMap.Point(106.5507137149,29.5647048135), 14);

	var start = "李家坪立交";
	var end = "洪崖洞";
	var routePolicy = [BMAP_TRANSIT_POLICY_LEAST_TIME,BMAP_TRANSIT_POLICY_LEAST_TRANSFER,BMAP_TRANSIT_POLICY_LEAST_WALKING,BMAP_TRANSIT_POLICY_AVOID_SUBWAYS];
	var transit = new BMap.TransitRoute(map, {
			renderOptions: {map: map},
			policy: 0
		});
	$("#result").click(function(){
		map.clearOverlays(); 
		var i=$("#driving_way select").val();
		search(start,end,routePolicy[i]); 
		function search(start,end,route){ 
			transit.setPolicy(route);
			transit.search(start,end);
		}
	});
</script>

假定定位到城市 重庆 来检索;

首先要申请自己的key才能调用;
先new一个BMap.Map对象;
centerAndZoom,定位地图中心点到自己需要的城市(使用经纬度),后一个参数是缩放级别;
公交检索是使用 BMap.TransitRoute 类来实现;
设置检索策略,并调用类的search方法来实现检索;
查询按钮的id是"result",点击时调用$("#result").click(function() 函数;

它的公交检索接口可以标绘检索路线;

也会返回检索的结果集;可以自定义返回结果的面板颜色之类;

大中城市都可以;小县城大概也可以的;可以自己试;

这是GIS功能的一种;

我以前也碰到过,你的百度API调用代码是放到其他前端代码文件里的,如果前端代码里面CSS文件继承比较多,可能影响不会标绘出检索路线,要自己去CSS文件里找;

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值