splittintting
This commit is contained in:
parent
b17be0e0d2
commit
d2e7a80e72
11 changed files with 1341 additions and 1349 deletions
12
renderer.js
12
renderer.js
|
|
@ -655,17 +655,19 @@ function drawBridgeOverlay(ctx, map, path, width, mode = "road") {
|
|||
}
|
||||
|
||||
function drawTunnelOverlay(ctx, map, path, width, mode = "road") {
|
||||
if (mode !== "expressway") return;
|
||||
if (mode !== "expressway" && mode !== "national") return;
|
||||
const vectorMode = mode === "expressway" ? "expressway" : "default";
|
||||
const limit = mode === "expressway" ? 10 : 10;
|
||||
const tunnelChunks = specialTransportSubpaths(
|
||||
map,
|
||||
path,
|
||||
(i) => !map.sea?.[i] && (((map.elevation?.[i] || 0) >= 0.74 && (map.ridgeField?.[i] || 0) >= 0.46) || (map.naturalBarrierScore?.[i] || 0) >= 0.82),
|
||||
2,
|
||||
true,
|
||||
10
|
||||
limit
|
||||
);
|
||||
for (const chunk of tunnelChunks) {
|
||||
drawDottedOutlinePath(ctx, chunk, "rgba(42, 42, 42, 0.96)", 1.15, Math.max(1.9, width * 0.82), "expressway");
|
||||
drawDottedOutlinePath(ctx, chunk, "rgba(42, 42, 42, 0.96)", mode === "expressway" ? 1.15 : 1.0, Math.max(1.75, width * 0.82), vectorMode);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1135,8 +1137,8 @@ export function drawMap(canvas, map, options) {
|
|||
}
|
||||
if (showRoads) {
|
||||
for (const path of generalRoadPaths) { drawBridgeOverlay(ctx, map, path, 1.55, "road"); }
|
||||
for (const path of map.nationalRoads) { drawBridgeOverlay(ctx, map, path, 2.0, "road"); }
|
||||
for (const path of map.externalRoads) { drawBridgeOverlay(ctx, map, path, 2.0, "road"); }
|
||||
for (const path of map.nationalRoads) { drawBridgeOverlay(ctx, map, path, 2.0, "road"); drawTunnelOverlay(ctx, map, path, 1.9, "national"); }
|
||||
for (const path of map.externalRoads) { drawBridgeOverlay(ctx, map, path, 2.0, "road"); drawTunnelOverlay(ctx, map, path, 1.9, "national"); }
|
||||
for (const path of map.expressways) { drawBridgeOverlay(ctx, map, path, 2.45, "expressway"); drawTunnelOverlay(ctx, map, path, 2.25, "expressway"); }
|
||||
for (const path of map.externalExpressways) { drawBridgeOverlay(ctx, map, path, 2.45, "expressway"); drawTunnelOverlay(ctx, map, path, 2.25, "expressway"); }
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue