Remove old parking code, improve red routes

load-bicycle-parking
Jake Coppinger 2023-01-28 13:58:29 +11:00
rodzic a7110eef7f
commit e484e23299
4 zmienionych plików z 13 dodań i 22 usunięć

Wyświetl plik

@ -1,10 +1,9 @@
import debounce from "debounce";
import { LoadingStatusType, OverpassResponse, RawOverpassNode } from "./interfaces";
import { LoadingStatusType, OverpassResponse} from "./interfaces";
import * as http from "https";
import { addStreetLayers, drawMarkersAndCards, removeMarkers, removeStreetLayers } from "./drawing";
import { wayToNode } from "./geo-utils";
import { bicycleParking, safeCycleways } from "./overpass-requests";
import { addStreetLayers, removeStreetLayers } from "./drawing";
import { safeCycleways } from "./overpass-requests";
import osmtogeojson from 'osmtogeojson';
@ -66,17 +65,14 @@ async function fetchAndDrawMarkers(
const northLat = bounds.getNorth();
const eastLong = bounds.getEast();
let ads: OverpassResponse;
let safeRoutes: OverpassResponse;
const overpassBounds = [southernLat, westLong, northLat, eastLong];
const boundsStr = overpassBounds.join(",");
const parkingOverpassQuery = bicycleParking(boundsStr);;
const safeRoutesOverpassQuery = safeCycleways(boundsStr);;
console.log("Started POST request...");
try {
ads = (await getOSMData(parkingOverpassQuery));
safeRoutes = await getOSMData(safeRoutesOverpassQuery);
} catch (e) {
console.log("Error:", e);
@ -91,16 +87,5 @@ async function fetchAndDrawMarkers(
removeStreetLayers(map);
addStreetLayers(map, geoJson);
setLoadingStatus("success");
return;
// removeMarkers(markers.current);
// const nodesAndWayCenters: RawOverpassNode[] = ads.elements
// .map((item) => (item.type === "way" ? wayToNode(item, ads.elements) : item))
// .filter((item) => item !== null)
// .map((item) => item as RawOverpassNode)
// .filter((item) => item.tags !== undefined);
// markers.current = await drawMarkersAndCards(map, nodesAndWayCenters);
}

Wyświetl plik

@ -78,6 +78,8 @@ export function removeStreetLayers(map: mapboxgl.Map): void {
}
export function addStreetLayers(map: mapboxgl.Map, geoJson: FeatureCollection<Geometry, GeoJsonProperties>) {
/** Add below first vector layer */
const layerToAddBefore = 'SharedUse';
map.addSource('redRoads', {
type: 'geojson',
data: {
@ -116,7 +118,7 @@ export function addStreetLayers(map: mapboxgl.Map, geoJson: FeatureCollection<Ge
"line-width": 3,
'line-opacity': 0.3
},
});
}, layerToAddBefore);
map.addLayer({
'id': 'orangeRoadsId',
@ -128,7 +130,7 @@ export function addStreetLayers(map: mapboxgl.Map, geoJson: FeatureCollection<Ge
"line-width": 3,
'line-opacity': 0.5
},
});
}, layerToAddBefore);
// Add a new layer to visualize the polygon.
@ -142,7 +144,7 @@ export function addStreetLayers(map: mapboxgl.Map, geoJson: FeatureCollection<Ge
"line-width": 7,
'line-opacity': 0.8
},
});
},layerToAddBefore);
}

Wyświetl plik

@ -1,5 +1,6 @@
// TODO: Find the layer of the road labels for the maptiler background
const layerToAddAfter = undefined;
// const layerToAddAfter = 'greenRoadsId'; //undefined;
function addLayer(
map: mapboxgl.Map,

Wyświetl plik

@ -12,6 +12,9 @@ export function isRedRoad(feature: Feature<Geometry, GeoJsonProperties>): boolea
if (p === null) {
return false;
}
if(p.highway === 'primary' && p.maxspeed === undefined) {
return true;
}
if (p.maxspeed > 40) {
return true;
}
@ -68,7 +71,7 @@ export function isGreenRoad(feature: Feature<Geometry, GeoJsonProperties>): bool
if (p.highway === 'shared_lane') {
return true;
}
if (p.bicycle === 'designated') {
if (p.bicycle === 'designated' && p.highway === 'cycleway') {
return true;
}
if (p.highway === 'living_street') {