@tileflow/maps 0.1.0-alpha.12 → 0.1.0-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/THIRD_PARTY_NOTICES.md +7 -7
- package/assets/README.md +14 -9
- package/assets/soundings/icons/soundings-boat-hoist.svg +10 -0
- package/assets/soundings/icons/soundings-boatyard.svg +6 -0
- package/assets/soundings/icons/soundings-distance-mark.svg +9 -0
- package/assets/soundings/icons/soundings-facility.svg +6 -0
- package/assets/soundings/icons/soundings-fuel-station.svg +7 -0
- package/assets/soundings/icons/soundings-marina.svg +9 -0
- package/assets/soundings/icons/soundings-notice-information.svg +10 -0
- package/assets/soundings/icons/soundings-notice-prohibition.svg +9 -0
- package/assets/soundings/icons/soundings-notice-recommendation.svg +9 -0
- package/assets/soundings/icons/soundings-notice-regulation.svg +9 -0
- package/assets/soundings/icons/soundings-notice-restriction.svg +10 -0
- package/assets/soundings/icons/soundings-notice.svg +11 -0
- package/assets/soundings/icons/soundings-pump-out.svg +8 -0
- package/assets/soundings/icons/soundings-slipway.svg +6 -0
- package/assets/soundings/icons/soundings-visitor-berth.svg +10 -0
- package/assets/soundings/icons/soundings-water-tap.svg +10 -0
- package/assets/soundings/icons/tileflow.icons.json +64 -0
- package/dist/index.d.ts +7 -3
- package/dist/index.js +76 -11
- package/docs/design-and-assets.md +8 -5
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -168,8 +168,8 @@ Streets selects Core's `labels.roadPlacement: 'ground'`: street names follow the
|
|
|
168
168
|
buildings; POIs, transit names and shields remain above. Disabling roads omits their names.
|
|
169
169
|
Road rings, ramp and surface ordering use [Core's replaceable defaults](../core/docs/cartographic-defaults.md).
|
|
170
170
|
Streets owns its colors, widths, typography and optional time-of-day themes.
|
|
171
|
-
|
|
172
|
-
|
|
171
|
+
Each theme paints a [street sky](../core/docs/street-sky.md) with night stars; `atmosphere: true`
|
|
172
|
+
on a globe map adds space around it. Mercator and native targets remain supported.
|
|
173
173
|
|
|
174
174
|
Streets enables model trees by default (`mode: '3d'`, `fallback: 'none'`). They stay three-dimensional
|
|
175
175
|
in overhead and tilted interactive browser views. Disabling vegetation removes all trees. Renderers
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -84,8 +84,8 @@ contains Tileflow-authored style code and original patterns plus the separately
|
|
|
84
84
|
Garamond files documented below. `baedeker` is an official Tileflow map; it is not affiliated with
|
|
85
85
|
or endorsed by Baedeker or Wagner & Debes.
|
|
86
86
|
|
|
87
|
-
At runtime, Baedeker derives contour vectors in the browser from
|
|
88
|
-
Mapterhorn tile is packaged or redistributed by `@tileflow/maps`. Mapterhorn publishes the full
|
|
87
|
+
At runtime, Baedeker derives contour vectors in the browser from Tileflow Terrain tiles, which
|
|
88
|
+
carry Mapterhorn terrain data. No terrain tile is packaged or redistributed by `@tileflow/maps`. Mapterhorn publishes the full
|
|
89
89
|
catalog of its constituent open terrain sources and their individual attribution and license terms
|
|
90
90
|
at <https://mapterhorn.com/attribution/>. The compiled Style carries that link as source
|
|
91
91
|
attribution.
|
|
@@ -97,15 +97,15 @@ code and artwork. Its architectural-blueprint direction uses general drafting co
|
|
|
97
97
|
package does not include or redistribute an architectural drawing, CAD file, municipal plan,
|
|
98
98
|
survey sheet, font, source image, or third-party symbol artwork.
|
|
99
99
|
|
|
100
|
-
At runtime, Blueprint derives contour vectors in the browser from
|
|
101
|
-
Mapterhorn tile is packaged or redistributed by `@tileflow/maps`. Mapterhorn publishes the full
|
|
100
|
+
At runtime, Blueprint derives contour vectors in the browser from Tileflow Terrain tiles, which
|
|
101
|
+
carry Mapterhorn terrain data. No terrain tile is packaged or redistributed by `@tileflow/maps`. Mapterhorn publishes the full
|
|
102
102
|
catalog of its constituent open terrain sources and their individual attribution and license terms
|
|
103
103
|
at <https://mapterhorn.com/attribution/>. The compiled Style carries that link as source
|
|
104
104
|
attribution.
|
|
105
105
|
|
|
106
106
|
## Nautical-chart references
|
|
107
107
|
|
|
108
|
-
The `soundings` map and its
|
|
108
|
+
The `soundings` map and its twenty-seven SVG symbols and patterns are original Tileflow code and artwork.
|
|
109
109
|
Its visual grammar was informed by NOAA's
|
|
110
110
|
[Historical Map & Chart Collection](https://historicalcharts.noaa.gov/) and the IHO
|
|
111
111
|
[S-4 and INT 1 standards index](https://iho.int/standards-and-specifications) as cartographic
|
|
@@ -130,8 +130,8 @@ not a reproduced or historically documented swisstopo colourway.
|
|
|
130
130
|
- Historical reference: <https://www.swisstopo.admin.ch/en/siegfried-map>
|
|
131
131
|
- 1873 conventional signs: <https://www.swisstopo.admin.ch/dam/en/sd-web/4OmbRYHBFpcd/Zeichenerklaerung-Siegfriedkarte-EN.pdf>
|
|
132
132
|
|
|
133
|
-
At runtime, Siegfried derives contour vectors in the browser from
|
|
134
|
-
Mapterhorn tile is packaged or redistributed by `@tileflow/maps`. Mapterhorn publishes the full
|
|
133
|
+
At runtime, Siegfried derives contour vectors in the browser from Tileflow Terrain tiles, which
|
|
134
|
+
carry Mapterhorn terrain data. No terrain tile is packaged or redistributed by `@tileflow/maps`. Mapterhorn publishes the full
|
|
135
135
|
catalog of its constituent open terrain sources and their individual attribution and license terms
|
|
136
136
|
at <https://mapterhorn.com/attribution/>. The compiled Style carries that link as source
|
|
137
137
|
attribution.
|
package/assets/README.md
CHANGED
|
@@ -66,15 +66,20 @@ wetland. The 18 runtime IDs use `siegfried-<motif>` for the historical light tre
|
|
|
66
66
|
packaged Cormorant Garamond faces selected by both themes. See `siegfried/README.md` and the
|
|
67
67
|
package-level `THIRD_PARTY_NOTICES.md` for provenance and licensing.
|
|
68
68
|
|
|
69
|
-
The Soundings directory contains
|
|
70
|
-
`soundings-harbor`, `soundings-
|
|
71
|
-
`soundings-buoy-
|
|
72
|
-
`soundings-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
69
|
+
The Soundings directory contains twenty-seven original nautical symbols and intrinsic-size patterns:
|
|
70
|
+
`soundings-harbor`, `soundings-marina`, `soundings-lighthouse`, `soundings-light-flare`,
|
|
71
|
+
`soundings-buoy-port`, `soundings-buoy-starboard`, `soundings-buoy-cardinal`,
|
|
72
|
+
`soundings-buoy-pillar`, `soundings-wreck`, `soundings-rock-awash`, six notice boards
|
|
73
|
+
(`soundings-notice` and its `-prohibition`, `-regulation`, `-restriction`, `-recommendation`, and
|
|
74
|
+
`-information` variants), `soundings-distance-mark`, eight small-craft facilities
|
|
75
|
+
(`soundings-facility`, `soundings-fuel-station`, `soundings-water-tap`, `soundings-slipway`,
|
|
76
|
+
`soundings-pump-out`, `soundings-visitor-berth`, `soundings-boat-hoist`, and `soundings-boatyard`),
|
|
77
|
+
`soundings-paper-grain`, and `soundings-water-dots`. They express familiar paper-chart and inland
|
|
78
|
+
waterway concepts without bundling a historical chart, specification artwork, sign artwork, or
|
|
79
|
+
navigation data. Official Soundings draws its paper and water patterns and, through theme
|
|
80
|
+
`nautical.*` image tokens, its point symbols for Nautical marks. `tileflow.icons.json` declares those
|
|
81
|
+
twenty-four point symbols as SDF icons, drawn in the central 12 of 24 pixels, so each mark takes its
|
|
82
|
+
own colour; `soundings-rock-awash` remains
|
|
78
83
|
fixed-colour artwork and is unused because rocks are drawn as chart crosses. A generic World POI is
|
|
79
84
|
deliberately not relabelled as a harbour. Soundings uses GEBCO-derived depth bands only as broad
|
|
80
85
|
cartographic context, and neither it nor its Nautical marks is a navigation product.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Boat hoist</title>
|
|
3
|
+
<desc>Original Tileflow boat crane pictogram.</desc>
|
|
4
|
+
<g fill="#000000">
|
|
5
|
+
<rect x="6.4" y="4" width="2.8" height="23.4"/>
|
|
6
|
+
<rect x="3.6" y="26.2" width="8.4" height="2.6" rx="1.3"/>
|
|
7
|
+
<path d="M13.4 17.6h15.2l-3 5.8H16.4l-3-5.8Z"/>
|
|
8
|
+
</g>
|
|
9
|
+
<path fill="none" stroke="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.2" d="M7.8 5.4h15.6M21 5.4v8.2M15.4 17.6l5.6-4 5.6 4"/>
|
|
10
|
+
</svg>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Boatyard</title>
|
|
3
|
+
<desc>Original Tileflow pictogram of a boat on a cradle ashore.</desc>
|
|
4
|
+
<path d="M3.6 10.8h24.8l-4.6 8.6H8.2l-4.6-8.6Z" fill="#000000"/>
|
|
5
|
+
<path fill="none" stroke="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.2" d="m10.4 19.4-2.4 7.4M21.6 19.4l2.4 7.4M4.6 27.6h22.8"/>
|
|
6
|
+
</svg>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Distance mark</title>
|
|
3
|
+
<desc>Original Tileflow waterway distance post pictogram.</desc>
|
|
4
|
+
<g fill="#000000">
|
|
5
|
+
<rect x="10.6" y="4" width="10.8" height="7.6" rx="1.2"/>
|
|
6
|
+
<rect x="14.8" y="10.8" width="2.4" height="15.4"/>
|
|
7
|
+
<rect x="10.2" y="25.4" width="11.6" height="2.6" rx="1.3"/>
|
|
8
|
+
</g>
|
|
9
|
+
</svg>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Facility</title>
|
|
3
|
+
<desc>Original Tileflow small-craft facility pictogram.</desc>
|
|
4
|
+
<circle cx="16" cy="16" r="10.4" fill="none" stroke="#000000" stroke-width="2.4"/>
|
|
5
|
+
<circle cx="16" cy="16" r="4" fill="#000000"/>
|
|
6
|
+
</svg>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Fuel station</title>
|
|
3
|
+
<desc>Original Tileflow fuel pump pictogram.</desc>
|
|
4
|
+
<path fill="#000000" fill-rule="evenodd" d="M8.2 4.4h10.4a1.2 1.2 0 0 1 1.2 1.2v20.8H7V5.6a1.2 1.2 0 0 1 1.2-1.2Zm1.8 3v6h6.8v-6H10Z"/>
|
|
5
|
+
<path fill="none" stroke="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19.8 11.2h2.4a1.4 1.4 0 0 1 1.4 1.4v9.2a1.9 1.9 0 0 0 3.8 0V10.4l-2.8-3.2"/>
|
|
6
|
+
<rect x="5" y="26" width="16.6" height="2.6" rx="1" fill="#000000"/>
|
|
7
|
+
</svg>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Marina</title>
|
|
3
|
+
<desc>Original Tileflow marina pictogram: a sailing yacht.</desc>
|
|
4
|
+
<g fill="#000000">
|
|
5
|
+
<path d="M14.6 2.6v17.2H5.8L14.6 2.6Z"/>
|
|
6
|
+
<path d="M17 5.8 25.6 19.8H17V5.8Z"/>
|
|
7
|
+
<path d="M3.8 22h24.4l-3.6 5.8H7.4L3.8 22Z"/>
|
|
8
|
+
</g>
|
|
9
|
+
</svg>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Information notice</title>
|
|
3
|
+
<desc>Original Tileflow information board pictogram with a letter i.</desc>
|
|
4
|
+
<rect x="5.2" y="3.2" width="21.6" height="19.6" rx="1.6" fill="none" stroke="#000000" stroke-linejoin="round" stroke-width="2.4"/>
|
|
5
|
+
<g fill="#000000">
|
|
6
|
+
<circle cx="16" cy="7.9" r="1.7"/>
|
|
7
|
+
<rect x="14.7" y="10.8" width="2.6" height="8.2" rx="1.1"/>
|
|
8
|
+
<rect x="14.8" y="22" width="2.4" height="8"/>
|
|
9
|
+
</g>
|
|
10
|
+
</svg>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Prohibition notice</title>
|
|
3
|
+
<desc>Original Tileflow prohibition board pictogram with a diagonal bar.</desc>
|
|
4
|
+
<g fill="none" stroke="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.4">
|
|
5
|
+
<rect x="5.2" y="3.2" width="21.6" height="19.6" rx="1.6"/>
|
|
6
|
+
<path d="m9.4 7 13.2 12"/>
|
|
7
|
+
</g>
|
|
8
|
+
<rect x="14.8" y="22" width="2.4" height="8" fill="#000000"/>
|
|
9
|
+
</svg>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Recommendation notice</title>
|
|
3
|
+
<desc>Original Tileflow recommendation pictogram: a diamond board on a post.</desc>
|
|
4
|
+
<path d="M16 2.4 26.4 12.8 16 23.2 5.6 12.8 16 2.4Z" fill="none" stroke="#000000" stroke-linejoin="round" stroke-width="2.4"/>
|
|
5
|
+
<g fill="#000000">
|
|
6
|
+
<path d="m16 8.6 4.2 4.2-4.2 4.2-4.2-4.2 4.2-4.2Z"/>
|
|
7
|
+
<rect x="14.8" y="22.4" width="2.4" height="7.6"/>
|
|
8
|
+
</g>
|
|
9
|
+
</svg>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Regulation notice</title>
|
|
3
|
+
<desc>Original Tileflow mandatory board pictogram with a central disc.</desc>
|
|
4
|
+
<rect x="5.2" y="3.2" width="21.6" height="19.6" rx="1.6" fill="none" stroke="#000000" stroke-linejoin="round" stroke-width="2.4"/>
|
|
5
|
+
<g fill="#000000">
|
|
6
|
+
<circle cx="16" cy="13" r="4.4"/>
|
|
7
|
+
<rect x="14.8" y="22" width="2.4" height="8"/>
|
|
8
|
+
</g>
|
|
9
|
+
</svg>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Restriction notice</title>
|
|
3
|
+
<desc>Original Tileflow restriction board pictogram with an exclamation mark.</desc>
|
|
4
|
+
<rect x="5.2" y="3.2" width="21.6" height="19.6" rx="1.6" fill="none" stroke="#000000" stroke-linejoin="round" stroke-width="2.4"/>
|
|
5
|
+
<g fill="#000000">
|
|
6
|
+
<rect x="14.7" y="6.8" width="2.6" height="8.4" rx="1.3"/>
|
|
7
|
+
<circle cx="16" cy="18.4" r="1.6"/>
|
|
8
|
+
<rect x="14.8" y="22" width="2.4" height="8"/>
|
|
9
|
+
</g>
|
|
10
|
+
</svg>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Notice board</title>
|
|
3
|
+
<desc>Original Tileflow inland notice board pictogram.</desc>
|
|
4
|
+
<g fill="none" stroke="#000000" stroke-linejoin="round" stroke-width="2.4">
|
|
5
|
+
<rect x="5.2" y="3.2" width="21.6" height="19.6" rx="1.6"/>
|
|
6
|
+
</g>
|
|
7
|
+
<g fill="#000000">
|
|
8
|
+
<rect x="10" y="10.6" width="12" height="2.4" rx="1.2"/>
|
|
9
|
+
<rect x="14.8" y="22" width="2.4" height="8"/>
|
|
10
|
+
</g>
|
|
11
|
+
</svg>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Pump-out</title>
|
|
3
|
+
<desc>Original Tileflow holding-tank pump-out pictogram.</desc>
|
|
4
|
+
<g fill="none" stroke="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.4">
|
|
5
|
+
<path d="M6.8 14.4v10.4a3 3 0 0 0 3 3h12.4a3 3 0 0 0 3-3V14.4"/>
|
|
6
|
+
<path d="M16 23V4.6M10.8 9.6 16 4.4l5.2 5.2"/>
|
|
7
|
+
</g>
|
|
8
|
+
</svg>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Slipway</title>
|
|
3
|
+
<desc>Original Tileflow slipway pictogram: a ramp running into the water.</desc>
|
|
4
|
+
<path d="M3.6 21.6 26.4 7.2v14.4H3.6Z" fill="#000000"/>
|
|
5
|
+
<path fill="none" stroke="#000000" stroke-linecap="round" stroke-width="2" d="M3 26.6c2.2-1.2 4.4-1.2 6.6 0s4.4 1.2 6.6 0 4.4-1.2 6.6 0 4.4 1.2 6.2.1"/>
|
|
6
|
+
</svg>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Visitor berth</title>
|
|
3
|
+
<desc>Original Tileflow mooring bollard pictogram for visitor berths and moorings.</desc>
|
|
4
|
+
<g fill="#000000">
|
|
5
|
+
<rect x="7.6" y="5" width="16.8" height="5" rx="2.5"/>
|
|
6
|
+
<rect x="12.4" y="9.4" width="7.2" height="6"/>
|
|
7
|
+
<path d="M10.2 15h11.6l2 11.4H8.2L10.2 15Z"/>
|
|
8
|
+
<rect x="5" y="25.6" width="22" height="2.6" rx="1.3"/>
|
|
9
|
+
</g>
|
|
10
|
+
</svg>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="-16 -16 64 64">
|
|
2
|
+
<title>Water tap</title>
|
|
3
|
+
<desc>Original Tileflow drinking water tap pictogram.</desc>
|
|
4
|
+
<g fill="#000000">
|
|
5
|
+
<rect x="10.4" y="3.6" width="11.2" height="2.6" rx="1.3"/>
|
|
6
|
+
<rect x="14.8" y="5.6" width="2.4" height="4.4"/>
|
|
7
|
+
<path d="M4.8 9.4h14.6a6.4 6.4 0 0 1 6.4 6.4v2.4h-5v-2.2a1.2 1.2 0 0 0-1.2-1.2H4.8V9.4Z"/>
|
|
8
|
+
<path d="M23.3 20.6c1.7 2.5 2.6 4.1 2.6 5.2a2.6 2.6 0 0 1-5.2 0c0-1.1.9-2.7 2.6-5.2Z"/>
|
|
9
|
+
</g>
|
|
10
|
+
</svg>
|
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"icons": {
|
|
4
|
+
"soundings-boat-hoist": {
|
|
5
|
+
"representation": "sdf",
|
|
6
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
7
|
+
},
|
|
8
|
+
"soundings-boatyard": {
|
|
9
|
+
"representation": "sdf",
|
|
10
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
11
|
+
},
|
|
4
12
|
"soundings-buoy-cardinal": {
|
|
5
13
|
"representation": "sdf",
|
|
6
14
|
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
@@ -17,6 +25,18 @@
|
|
|
17
25
|
"representation": "sdf",
|
|
18
26
|
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
19
27
|
},
|
|
28
|
+
"soundings-distance-mark": {
|
|
29
|
+
"representation": "sdf",
|
|
30
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
31
|
+
},
|
|
32
|
+
"soundings-facility": {
|
|
33
|
+
"representation": "sdf",
|
|
34
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
35
|
+
},
|
|
36
|
+
"soundings-fuel-station": {
|
|
37
|
+
"representation": "sdf",
|
|
38
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
39
|
+
},
|
|
20
40
|
"soundings-harbor": {
|
|
21
41
|
"representation": "sdf",
|
|
22
42
|
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
@@ -29,6 +49,50 @@
|
|
|
29
49
|
"representation": "sdf",
|
|
30
50
|
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
31
51
|
},
|
|
52
|
+
"soundings-marina": {
|
|
53
|
+
"representation": "sdf",
|
|
54
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
55
|
+
},
|
|
56
|
+
"soundings-notice": {
|
|
57
|
+
"representation": "sdf",
|
|
58
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
59
|
+
},
|
|
60
|
+
"soundings-notice-information": {
|
|
61
|
+
"representation": "sdf",
|
|
62
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
63
|
+
},
|
|
64
|
+
"soundings-notice-prohibition": {
|
|
65
|
+
"representation": "sdf",
|
|
66
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
67
|
+
},
|
|
68
|
+
"soundings-notice-recommendation": {
|
|
69
|
+
"representation": "sdf",
|
|
70
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
71
|
+
},
|
|
72
|
+
"soundings-notice-regulation": {
|
|
73
|
+
"representation": "sdf",
|
|
74
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
75
|
+
},
|
|
76
|
+
"soundings-notice-restriction": {
|
|
77
|
+
"representation": "sdf",
|
|
78
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
79
|
+
},
|
|
80
|
+
"soundings-pump-out": {
|
|
81
|
+
"representation": "sdf",
|
|
82
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
83
|
+
},
|
|
84
|
+
"soundings-slipway": {
|
|
85
|
+
"representation": "sdf",
|
|
86
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
87
|
+
},
|
|
88
|
+
"soundings-visitor-berth": {
|
|
89
|
+
"representation": "sdf",
|
|
90
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
91
|
+
},
|
|
92
|
+
"soundings-water-tap": {
|
|
93
|
+
"representation": "sdf",
|
|
94
|
+
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
|
95
|
+
},
|
|
32
96
|
"soundings-wreck": {
|
|
33
97
|
"representation": "sdf",
|
|
34
98
|
"defaults": {"color": "#263D3F", "haloColor": "#F7FBF8", "haloWidth": 1, "haloBlur": 0}
|
package/dist/index.d.ts
CHANGED
|
@@ -126,7 +126,6 @@ declare const baedeker: {
|
|
|
126
126
|
readonly attribution: "Terrain: <a href=\"https://mapterhorn.com/attribution\">© Mapterhorn</a>";
|
|
127
127
|
readonly contours: {
|
|
128
128
|
readonly demMaxZoom: 12;
|
|
129
|
-
readonly demUrl: "https://tiles.mapterhorn.com/{z}/{x}/{y}.webp";
|
|
130
129
|
readonly index: {
|
|
131
130
|
readonly color: "#5C554A";
|
|
132
131
|
readonly opacity: 0.5;
|
|
@@ -320,6 +319,13 @@ declare const streets: {
|
|
|
320
319
|
readonly dark: "dark";
|
|
321
320
|
};
|
|
322
321
|
readonly projection: "globe";
|
|
322
|
+
readonly sky: {
|
|
323
|
+
readonly color: _tileflow_core.TileflowThemeTokenReference<"color">;
|
|
324
|
+
readonly horizonColor: _tileflow_core.TileflowThemeTokenReference<"color">;
|
|
325
|
+
readonly horizonBlend: _tileflow_core.TileflowThemeTokenReference<"number">;
|
|
326
|
+
readonly glowColor: _tileflow_core.TileflowThemeTokenReference<"color">;
|
|
327
|
+
readonly starIntensity: 0.6;
|
|
328
|
+
};
|
|
323
329
|
readonly data: {
|
|
324
330
|
readonly generation: "v1";
|
|
325
331
|
readonly selection: {
|
|
@@ -534,7 +540,6 @@ declare const blueprint: {
|
|
|
534
540
|
readonly attribution: "Terrain: <a href=\"https://mapterhorn.com/attribution\">© Mapterhorn</a>";
|
|
535
541
|
readonly contours: {
|
|
536
542
|
readonly demMaxZoom: 12;
|
|
537
|
-
readonly demUrl: "https://tiles.mapterhorn.com/{z}/{x}/{y}.webp";
|
|
538
543
|
readonly index: {
|
|
539
544
|
readonly color: "#6F9AB2";
|
|
540
545
|
readonly opacity: 0.46;
|
|
@@ -649,7 +654,6 @@ declare const siegfried: {
|
|
|
649
654
|
readonly attribution: "Terrain: <a href=\"https://mapterhorn.com/attribution\">© Mapterhorn</a>";
|
|
650
655
|
readonly contours: {
|
|
651
656
|
readonly demMaxZoom: 12;
|
|
652
|
-
readonly demUrl: "https://tiles.mapterhorn.com/{z}/{x}/{y}.webp";
|
|
653
657
|
readonly index: {
|
|
654
658
|
readonly color: _tileflow_core.TileflowThemeTokenReference<"color">;
|
|
655
659
|
readonly opacity: 0.86;
|
package/dist/index.js
CHANGED
|
@@ -752,7 +752,6 @@ var baedeker = bindOfficialMapTheme(
|
|
|
752
752
|
attribution: 'Terrain: <a href="https://mapterhorn.com/attribution">\xA9 Mapterhorn</a>',
|
|
753
753
|
contours: {
|
|
754
754
|
demMaxZoom: 12,
|
|
755
|
-
demUrl: "https://tiles.mapterhorn.com/{z}/{x}/{y}.webp",
|
|
756
755
|
index: {
|
|
757
756
|
color: baedekerPalette.hachure,
|
|
758
757
|
opacity: 0.5,
|
|
@@ -2055,7 +2054,6 @@ var blueprint = bindOfficialMapTheme(
|
|
|
2055
2054
|
attribution: 'Terrain: <a href="https://mapterhorn.com/attribution">\xA9 Mapterhorn</a>',
|
|
2056
2055
|
contours: {
|
|
2057
2056
|
demMaxZoom: 12,
|
|
2058
|
-
demUrl: "https://tiles.mapterhorn.com/{z}/{x}/{y}.webp",
|
|
2059
2057
|
index: {
|
|
2060
2058
|
color: blueprintPalette.contour,
|
|
2061
2059
|
opacity: 0.46,
|
|
@@ -6647,7 +6645,6 @@ var siegfried = bindOfficialMapTheme(
|
|
|
6647
6645
|
attribution: 'Terrain: <a href="https://mapterhorn.com/attribution">\xA9 Mapterhorn</a>',
|
|
6648
6646
|
contours: {
|
|
6649
6647
|
demMaxZoom: 12,
|
|
6650
|
-
demUrl: "https://tiles.mapterhorn.com/{z}/{x}/{y}.webp",
|
|
6651
6648
|
index: {
|
|
6652
6649
|
color: siegfriedPalette.brown,
|
|
6653
6650
|
opacity: 0.86,
|
|
@@ -7522,15 +7519,31 @@ var soundingsTheme = defineOfficialTheme({
|
|
|
7522
7519
|
}
|
|
7523
7520
|
},
|
|
7524
7521
|
// Nautical marks use the chart symbols of this directory. They are single-colour silhouettes:
|
|
7525
|
-
// buoys
|
|
7522
|
+
// buoys, light flares and notice boards take each mark's own colour, the others print in ink.
|
|
7526
7523
|
images: {
|
|
7527
7524
|
"nautical.buoy": "soundings-buoy-pillar",
|
|
7528
7525
|
"nautical.buoy.cardinal": "soundings-buoy-cardinal",
|
|
7529
7526
|
"nautical.buoy.port": "soundings-buoy-port",
|
|
7530
7527
|
"nautical.buoy.starboard": "soundings-buoy-starboard",
|
|
7528
|
+
"nautical.distance-mark": "soundings-distance-mark",
|
|
7529
|
+
"nautical.facility": "soundings-facility",
|
|
7530
|
+
"nautical.facility.boat-hoist": "soundings-boat-hoist",
|
|
7531
|
+
"nautical.facility.boatyard": "soundings-boatyard",
|
|
7532
|
+
"nautical.facility.fuel-station": "soundings-fuel-station",
|
|
7533
|
+
"nautical.facility.pump-out": "soundings-pump-out",
|
|
7534
|
+
"nautical.facility.slipway": "soundings-slipway",
|
|
7535
|
+
"nautical.facility.visitor-berth": "soundings-visitor-berth",
|
|
7536
|
+
"nautical.facility.water-tap": "soundings-water-tap",
|
|
7531
7537
|
"nautical.harbour": "soundings-harbor",
|
|
7532
7538
|
"nautical.light": "soundings-light-flare",
|
|
7533
7539
|
"nautical.lighthouse": "soundings-lighthouse",
|
|
7540
|
+
"nautical.marina": "soundings-marina",
|
|
7541
|
+
"nautical.notice": "soundings-notice",
|
|
7542
|
+
"nautical.notice.information": "soundings-notice-information",
|
|
7543
|
+
"nautical.notice.prohibition": "soundings-notice-prohibition",
|
|
7544
|
+
"nautical.notice.recommendation": "soundings-notice-recommendation",
|
|
7545
|
+
"nautical.notice.regulation": "soundings-notice-regulation",
|
|
7546
|
+
"nautical.notice.restriction": "soundings-notice-restriction",
|
|
7534
7547
|
"nautical.port": "soundings-harbor",
|
|
7535
7548
|
"nautical.wreck": "soundings-wreck"
|
|
7536
7549
|
},
|
|
@@ -7858,11 +7871,18 @@ var soundings = bindOfficialMapTheme(
|
|
|
7858
7871
|
// printed ink. Technical magenta stays on operational areas, traffic separation and cables.
|
|
7859
7872
|
nautical: nautical({
|
|
7860
7873
|
beacons: { marker: { strokeColor: soundingsPalette.ink } },
|
|
7874
|
+
// Bridges and berths are structures, printed in the chart ink like piers.
|
|
7875
|
+
berths: { outline: { color: soundingsPalette.ink } },
|
|
7876
|
+
bridges: { outline: { color: soundingsPalette.ink } },
|
|
7861
7877
|
buoys: { icon: { haloColor: soundingsPalette.ink }, text: chartInk },
|
|
7878
|
+
distanceMarks: { icon: chartInk, text: { ...chartInk, color: soundingsPalette.inkMuted } },
|
|
7879
|
+
facilities: { icon: chartInk, text: { ...chartInk, color: soundingsPalette.inkMuted } },
|
|
7862
7880
|
harbours: { icon: chartInk, text: { ...chartInk, color: soundingsPalette.inkMuted } },
|
|
7863
7881
|
hazards: { marker: { strokeColor: soundingsPalette.ink }, text: chartInk },
|
|
7882
|
+
labels: { bridges: { text: chartInk } },
|
|
7864
7883
|
lighthouses: { icon: chartInk, text: chartInk },
|
|
7865
7884
|
lights: { text: { ...chartInk, color: soundingsPalette.inkMuted } },
|
|
7885
|
+
notices: { icon: { haloColor: soundingsPalette.water }, text: chartInk },
|
|
7866
7886
|
ports: { icon: chartInk, text: chartInk },
|
|
7867
7887
|
wrecks: { icon: chartInk, text: chartInk }
|
|
7868
7888
|
}),
|
|
@@ -10131,6 +10151,41 @@ var standardRoadCasingProfiles = {
|
|
|
10131
10151
|
};
|
|
10132
10152
|
var streetsRoadCasingProfiles = standardRoadCasingProfiles;
|
|
10133
10153
|
|
|
10154
|
+
// src/official/streets-sky.ts
|
|
10155
|
+
var skies = {
|
|
10156
|
+
day: { color: "#5C9CE6", horizon: "#DCEBF7", blend: 0.6, glow: "#FFE7B8" },
|
|
10157
|
+
dawn: { color: "#7F9FD6", horizon: "#F6D4BC", blend: 0.75, glow: "#FFC77A" },
|
|
10158
|
+
dusk: { color: "#4A4784", horizon: "#E7A3A4", blend: 0.8, glow: "#FFA552" },
|
|
10159
|
+
night: { color: "#0B1630", horizon: "#26365A", blend: 0.6, glow: "#B4645A" }
|
|
10160
|
+
};
|
|
10161
|
+
function channels(hex2) {
|
|
10162
|
+
const value = Number.parseInt(hex2.slice(1), 16);
|
|
10163
|
+
return [value >> 16, value >> 8 & 255, value & 255];
|
|
10164
|
+
}
|
|
10165
|
+
function hex(rgb) {
|
|
10166
|
+
return `#${rgb.map(
|
|
10167
|
+
(channel) => Math.max(0, Math.min(255, Math.round(channel))).toString(16).padStart(2, "0").toUpperCase()
|
|
10168
|
+
).join("")}`;
|
|
10169
|
+
}
|
|
10170
|
+
function inFamily(color, family) {
|
|
10171
|
+
const rgb = channels(color);
|
|
10172
|
+
const gray = rgb[0] * 0.2126 + rgb[1] * 0.7152 + rgb[2] * 0.0722;
|
|
10173
|
+
if (family === "monochrome") return hex([gray, gray, gray]);
|
|
10174
|
+
if (family === "faded") return hex(rgb.map((channel) => channel + (gray - channel) * 0.35));
|
|
10175
|
+
return color;
|
|
10176
|
+
}
|
|
10177
|
+
function streetsSkyTokens(preset, family) {
|
|
10178
|
+
const sky = skies[preset];
|
|
10179
|
+
return {
|
|
10180
|
+
colors: {
|
|
10181
|
+
"sky.color": inFamily(sky.color, family),
|
|
10182
|
+
"sky.horizon": inFamily(sky.horizon, family),
|
|
10183
|
+
"sky.glow": inFamily(sky.glow, family)
|
|
10184
|
+
},
|
|
10185
|
+
numbers: { "sky.horizonBlend": sky.blend }
|
|
10186
|
+
};
|
|
10187
|
+
}
|
|
10188
|
+
|
|
10134
10189
|
// src/official/streets-theme-colors.ts
|
|
10135
10190
|
var streetsSurfaceProfiles = {
|
|
10136
10191
|
"default-dawn": {
|
|
@@ -10602,9 +10657,9 @@ var streetsDarkColors = {
|
|
|
10602
10657
|
"vegetation.tree.conifer.c": "#405348"
|
|
10603
10658
|
};
|
|
10604
10659
|
function parseStreetsColor(value) {
|
|
10605
|
-
const
|
|
10606
|
-
if (
|
|
10607
|
-
const digits =
|
|
10660
|
+
const hex2 = /^#([\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$/i.exec(value);
|
|
10661
|
+
if (hex2) {
|
|
10662
|
+
const digits = hex2[1];
|
|
10608
10663
|
const expanded = digits.length < 5 ? [...digits].map((digit) => digit + digit).join("") : digits;
|
|
10609
10664
|
return {
|
|
10610
10665
|
r: Number.parseInt(expanded.slice(0, 2), 16),
|
|
@@ -10631,8 +10686,8 @@ function formatStreetsColor({ a, b, g, r }, format) {
|
|
|
10631
10686
|
if (format.startsWith("rgba")) {
|
|
10632
10687
|
return `rgba(${channel(r)}, ${channel(g)}, ${channel(b)}, ${Number(a.toFixed(3))})`;
|
|
10633
10688
|
}
|
|
10634
|
-
const
|
|
10635
|
-
return `#${
|
|
10689
|
+
const hex2 = (value) => channel(value).toString(16).padStart(2, "0").toUpperCase();
|
|
10690
|
+
return `#${hex2(r)}${hex2(g)}${hex2(b)}${format.length === 9 ? hex2(a * 255) : ""}`;
|
|
10636
10691
|
}
|
|
10637
10692
|
function adjustStreetsColors(colors, transform) {
|
|
10638
10693
|
return Object.fromEntries(
|
|
@@ -10732,7 +10787,8 @@ function streetsPaletteColors(preset, colorTheme) {
|
|
|
10732
10787
|
...calibratedStreetsColors(preset, colorTheme),
|
|
10733
10788
|
...streetsCartographyColors(colorTheme, preset),
|
|
10734
10789
|
"buildings.floodLight": !isDarkStreetsPreset(preset) ? "#FFFFFF" : colorTheme === "monochrome" ? "#E5E5E5" : colorTheme === "faded" ? "#F8E4C4" : "#F5CFA8",
|
|
10735
|
-
...streetsModelLighting(preset, colorTheme).colors
|
|
10790
|
+
...streetsModelLighting(preset, colorTheme).colors,
|
|
10791
|
+
...streetsSkyTokens(preset, colorTheme).colors
|
|
10736
10792
|
};
|
|
10737
10793
|
}
|
|
10738
10794
|
function streetsLightingNumbers(preset, colorTheme) {
|
|
@@ -10742,7 +10798,8 @@ function streetsLightingNumbers(preset, colorTheme) {
|
|
|
10742
10798
|
// Light colours already include the Faded lookup table; lamp activation uses the
|
|
10743
10799
|
// corresponding untransformed brightness, independently of that appearance change.
|
|
10744
10800
|
"buildings.floodLight.brightnessScale": colorTheme === "faded" ? { day: 1, dawn: 0.9203658119566795, dusk: 0.47333738050439994, night: 0.42688225390661877 }[preset] : 1,
|
|
10745
|
-
...streetsModelLighting(preset, colorTheme).numbers
|
|
10801
|
+
...streetsModelLighting(preset, colorTheme).numbers,
|
|
10802
|
+
...streetsSkyTokens(preset, colorTheme).numbers
|
|
10746
10803
|
};
|
|
10747
10804
|
}
|
|
10748
10805
|
var streetsFonts = {
|
|
@@ -12525,6 +12582,14 @@ var streets = bindOfficialMapTheme(
|
|
|
12525
12582
|
systemThemes: { light: "light", dark: "dark" },
|
|
12526
12583
|
projection: "globe",
|
|
12527
12584
|
// 'globe' | 'mercator'. Globe becomes planar at street zooms.
|
|
12585
|
+
// Each theme paints the sky seen when the camera tilts up the street; night shows stars.
|
|
12586
|
+
sky: {
|
|
12587
|
+
color: token9.color("sky.color"),
|
|
12588
|
+
horizonColor: token9.color("sky.horizon"),
|
|
12589
|
+
horizonBlend: token9.number("sky.horizonBlend"),
|
|
12590
|
+
glowColor: token9.color("sky.glow"),
|
|
12591
|
+
starIntensity: 0.6
|
|
12592
|
+
},
|
|
12528
12593
|
data: {
|
|
12529
12594
|
generation: "v1",
|
|
12530
12595
|
selection: { kind: "current", product: "world-v1" },
|
|
@@ -109,11 +109,14 @@ fallback traced from broad GEBCO band polygons until native contour geometry is
|
|
|
109
109
|
show the absolute `min_depth` value, not an inferred range or vessel-specific safety contour.
|
|
110
110
|
Ferries are ordinary World context. Navigation marks come from `tileflow-nautical`: the theme's
|
|
111
111
|
`nautical.*` image tokens select the Soundings chart symbols for buoys (port can, starboard cone,
|
|
112
|
-
cardinal double cone, and a pillar for other buoys), lights, lighthouses, wrecks, harbours,
|
|
113
|
-
ports
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
112
|
+
cardinal double cone, and a pillar for other buoys), lights, lighthouses, wrecks, harbours, marinas,
|
|
113
|
+
ports, inland notice boards by function, distance marks, and small-craft facilities. Buoys, light
|
|
114
|
+
flares, and notice boards take each mark's own colour from the data; beacons stay small coloured
|
|
115
|
+
dots, rocks are chart crosses and stars, and the other symbols are printed in the chart ink. Light
|
|
116
|
+
flares flash in their rhythm in browser maps. Bridges and berths are drawn as ink structures with
|
|
117
|
+
their clearances, and marinas and harbours as light outlines. Technical magenta remains reserved for
|
|
118
|
+
operational overlays: restricted, military, anchorage, and traffic-separation areas,
|
|
119
|
+
traffic-separation lines, and submarine and overhead cables. Coverage is
|
|
117
120
|
a faint tint before marks appear. The map shows a "Not for navigation" notice wherever it is
|
|
118
121
|
displayed. Soundings is reference cartography and is not a navigation product.
|
|
119
122
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tileflow/maps",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.13",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"description": "Official themed Streets, Baedeker, Cívica, 1777, Siegfried, Soundings, and Blueprint maps for Tileflow.",
|
|
6
6
|
"type": "module",
|
|
@@ -52,12 +52,12 @@
|
|
|
52
52
|
"access": "public"
|
|
53
53
|
},
|
|
54
54
|
"peerDependencies": {
|
|
55
|
-
"@tileflow/core": ">=0.1.0-alpha.
|
|
55
|
+
"@tileflow/core": ">=0.1.0-alpha.39 <0.1.0-beta.0"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"@maplibre/maplibre-gl-style-spec": "24.8.5",
|
|
59
59
|
"@maplibre/maplibre-gl-style-spec-v6": "npm:@maplibre/maplibre-gl-style-spec@26.4.4",
|
|
60
|
-
"@tileflow/core": "0.1.0-alpha.
|
|
60
|
+
"@tileflow/core": "0.1.0-alpha.39"
|
|
61
61
|
},
|
|
62
62
|
"scripts": {
|
|
63
63
|
"build": "tsup src/index.ts --format esm --dts --clean --no-splitting",
|