Gọi API isochrone
contours là các mốc thời gian (phút). Thêm "polygons": true để nhận vùng dạng Polygon, dễ tô màu.
curl 'https://cloud.gmap.vn/api/tsp/route/isochrone' \
--header 'x-api-key: public-gmap-cloud-x-api-key-demo' \
--header 'content-type: application/json' \
--data '{
"locations": [{ "lat": 16.0682606, "lon": 108.224093 }],
"costing": "auto",
"contours": [{ "time": 15 }],
"polygons": true
}'Kết quả là GeoJSON FeatureCollection; mỗi Feature là một vùng, properties.contour cho biết số phút.
Tô vùng lên bản đồ
Thêm vào bản đồ MapLibre đã tạo ở bài “Hiển thị bản đồ Việt Nam bằng MapLibre GL JS”.
map.on('load', async () => {
const response = await fetch(
'https://cloud.gmap.vn/api/tsp/route/isochrone?x-api-key=public-gmap-cloud-x-api-key-demo',
{
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify({
locations: [{ lat: 16.0682606, lon: 108.224093 }],
costing: 'auto',
contours: [{ time: 15 }, { time: 30 }],
polygons: true,
}),
},
);
map.addSource('service-area', { type: 'geojson', data: await response.json() });
map.addLayer({
id: 'service-area',
type: 'fill',
source: 'service-area',
paint: { 'fill-color': '#0754ff', 'fill-opacity': 0.18 },
});
});Dùng vùng vào việc gì
- Tính phí giao hàng theo vùng 15 phút, 30 phút thay vì theo km.
- So sánh vùng phục vụ của các mặt bằng trước khi mở cửa hàng mới.
- Kiểm tra một địa chỉ có nằm trong vùng giao trong ngày hay không.
Thời gian là ước tính theo mô hình định tuyến, chưa gồm giao thông thời gian thực.


