使用html实现实时获取GPS位置并每隔5秒生成完整的轨迹图的全部代码
时间: 2024-03-13 18:42:50 浏览: 117
Android百度地图定位后获取周边位置的实现代码
这里是使用 HTML5 Geolocation API 实现实时获取 GPS 位置并每隔 5 秒生成完整的轨迹图的示例代码:
```html
<!DOCTYPE html>
<html>
<head>
<title>GPS轨迹实时获取示例</title>
<script>
var map, marker, path = [];
// 初始化地图
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: -34.397, lng: 150.644},
zoom: 8
});
marker = new google.maps.Marker({
map: map,
title: 'My Location'
});
}
// 获取当前位置
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition);
} else {
alert("Geolocation is not supported by this browser.");
}
}
// 显示当前位置
function showPosition(position) {
var lat = position.coords.latitude;
var lng = position.coords.longitude;
var pos = {lat: lat, lng: lng};
map.setCenter(pos);
marker.setPosition(pos);
path.push(pos); // 将当前位置添加到轨迹中
}
// 每隔 5 秒生成完整的轨迹图
setInterval(function() {
if (path.length > 0) {
var line = new google.maps.Polyline({
path: path,
geodesic: true,
strokeColor: '#FF0000',
strokeOpacity: 1.0,
strokeWeight: 2
});
line.setMap(map);
path = []; // 清空轨迹
}
}, 5000);
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap" async defer></script>
</head>
<body onload="getLocation()">
<div id="map" style="height: 400px;"></div>
</body>
</html>
```
需要将 `YOUR_API_KEY` 替换为您自己的 Google Maps API Key。该代码会在页面加载完成后自动获取当前位置并在地图上显示,同时每隔 5 秒生成一条完整的轨迹。
阅读全文