@tileflow/maps 0.1.0-alpha.16 → 0.1.0-alpha.18
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 +70 -63
- package/THIRD_PARTY_NOTICES.md +7 -0
- package/assets/streets/build-trees.mjs +167 -273
- package/assets/streets/climate/NOTICE.txt +9 -0
- package/assets/streets/climate/build.py +47 -0
- package/assets/streets/climate/koppen-geiger-1991-2020.tif +0 -0
- package/assets/streets/climate/recipe.json +13 -0
- package/assets/streets/icons/streets-tree-columnar-dark.pattern.svg +200 -105
- package/assets/streets/icons/streets-tree-columnar.pattern.svg +200 -105
- package/assets/streets/icons/streets-tree-conifer-dark.pattern.svg +260 -200
- package/assets/streets/icons/streets-tree-conifer.pattern.svg +260 -200
- package/assets/streets/icons/streets-tree-open-dark.pattern.svg +170 -200
- package/assets/streets/icons/streets-tree-open.pattern.svg +170 -200
- package/assets/streets/icons/streets-tree-round-dark.pattern.svg +160 -158
- package/assets/streets/icons/streets-tree-round.pattern.svg +160 -158
- package/assets/streets/icons/streets-tree-tall-dark.pattern.svg +166 -156
- package/assets/streets/icons/streets-tree-tall.pattern.svg +166 -156
- package/assets/streets/icons/unified-day-aerialway.svg +11 -0
- package/assets/streets/icons/unified-day-airport.svg +11 -0
- package/assets/streets/icons/unified-day-bank.svg +11 -0
- package/assets/streets/icons/unified-day-bar.svg +11 -0
- package/assets/streets/icons/unified-day-beach.svg +11 -0
- package/assets/streets/icons/unified-day-beauty.svg +11 -0
- package/assets/streets/icons/unified-day-bookstore.svg +11 -0
- package/assets/streets/icons/unified-day-buddhist.svg +11 -0
- package/assets/streets/icons/unified-day-bus.svg +11 -0
- package/assets/streets/icons/unified-day-campsite.svg +11 -0
- package/assets/streets/icons/unified-day-car-repair.svg +11 -0
- package/assets/streets/icons/unified-day-car.svg +11 -0
- package/assets/streets/icons/unified-day-charging-station.svg +11 -0
- package/assets/streets/icons/unified-day-christian.svg +11 -0
- package/assets/streets/icons/unified-day-clothing.svg +11 -0
- package/assets/streets/icons/unified-day-coffee.svg +11 -0
- package/assets/streets/icons/unified-day-college.svg +11 -0
- package/assets/streets/icons/unified-day-community.svg +11 -0
- package/assets/streets/icons/unified-day-convenience.svg +11 -0
- package/assets/streets/icons/unified-day-dentist.svg +11 -0
- package/assets/streets/icons/unified-day-doctor.svg +11 -0
- package/assets/streets/icons/unified-day-dog-park.svg +11 -0
- package/assets/streets/icons/unified-day-drinking-water.svg +11 -0
- package/assets/streets/icons/unified-day-education.svg +11 -0
- package/assets/streets/icons/unified-day-electronics.svg +11 -0
- package/assets/streets/icons/unified-day-embassy.svg +11 -0
- package/assets/streets/icons/unified-day-fast-food.svg +11 -0
- package/assets/streets/icons/unified-day-ferry.svg +11 -0
- package/assets/streets/icons/unified-day-fire-station.svg +11 -0
- package/assets/streets/icons/unified-day-fitness.svg +11 -0
- package/assets/streets/icons/unified-day-florist.svg +11 -0
- package/assets/streets/icons/unified-day-food.svg +11 -0
- package/assets/streets/icons/unified-day-fuel.svg +11 -0
- package/assets/streets/icons/unified-day-garden.svg +11 -0
- package/assets/streets/icons/unified-day-golf.svg +11 -0
- package/assets/streets/icons/unified-day-grocery.svg +11 -0
- package/assets/streets/icons/unified-day-harbor.svg +11 -0
- package/assets/streets/icons/unified-day-hardware.svg +11 -0
- package/assets/streets/icons/unified-day-health.svg +11 -0
- package/assets/streets/icons/unified-day-jewish.svg +11 -0
- package/assets/streets/icons/unified-day-laundry.svg +11 -0
- package/assets/streets/icons/unified-day-library.svg +11 -0
- package/assets/streets/icons/unified-day-lodging.svg +11 -0
- package/assets/streets/icons/unified-day-major-transit.svg +11 -0
- package/assets/streets/icons/unified-day-mountain.svg +11 -0
- package/assets/streets/icons/unified-day-muslim.svg +11 -0
- package/assets/streets/icons/unified-day-natural.svg +11 -0
- package/assets/streets/icons/unified-day-nature.svg +11 -0
- package/assets/streets/icons/unified-day-parking-garage.svg +11 -0
- package/assets/streets/icons/unified-day-parking.svg +11 -0
- package/assets/streets/icons/unified-day-pharmacy.svg +11 -0
- package/assets/streets/icons/unified-day-playground.svg +11 -0
- package/assets/streets/icons/unified-day-plaza.svg +11 -0
- package/assets/streets/icons/unified-day-police.svg +11 -0
- package/assets/streets/icons/unified-day-post.svg +11 -0
- package/assets/streets/icons/unified-day-prison.svg +11 -0
- package/assets/streets/icons/unified-day-rail-light.svg +11 -0
- package/assets/streets/icons/unified-day-rail.svg +11 -0
- package/assets/streets/icons/unified-day-services.svg +11 -0
- package/assets/streets/icons/unified-day-shopping.svg +11 -0
- package/assets/streets/icons/unified-day-sport.svg +11 -0
- package/assets/streets/icons/unified-day-stadium.svg +11 -0
- package/assets/streets/icons/unified-day-swimming.svg +11 -0
- package/assets/streets/icons/unified-day-toilet.svg +11 -0
- package/assets/streets/icons/unified-day-town-hall.svg +11 -0
- package/assets/streets/icons/unified-day-waterfall.svg +11 -0
- package/assets/streets/icons/unified-day-worship.svg +11 -0
- package/assets/streets/models/streets-tree-columnar.far.glb +0 -0
- package/assets/streets/models/streets-tree-columnar.glb +0 -0
- package/assets/streets/models/streets-tree-conifer.far.glb +0 -0
- package/assets/streets/models/streets-tree-conifer.glb +0 -0
- package/assets/streets/models/streets-tree-open.far.glb +0 -0
- package/assets/streets/models/streets-tree-open.glb +0 -0
- package/assets/streets/models/streets-tree-round.far.glb +0 -0
- package/assets/streets/models/streets-tree-round.glb +0 -0
- package/assets/streets/models/streets-tree-tall.far.glb +0 -0
- package/assets/streets/models/streets-tree-tall.glb +0 -0
- package/dist/index.d.ts +829 -132
- package/dist/index.js +1397 -539
- package/package.json +3 -4
- package/docs/design-and-assets.md +0 -247
- package/docs/map-1777.md +0 -91
package/README.md
CHANGED
|
@@ -65,7 +65,7 @@ The CLI owns the interface; compiler and runtime changes require rebuilding thos
|
|
|
65
65
|
- `baedeker`: warm travel-atlas styling, serif labels, original engraved patterns, and contours.
|
|
66
66
|
- `civica`: illustrated civic-print styling with warm paper, olive parks, blue annotations, and
|
|
67
67
|
vermilion landmarks.
|
|
68
|
-
-
|
|
68
|
+
- `map1777` (1777): 1777 ink and watercolor on current data, with 3D and four times of day.
|
|
69
69
|
- `siegfried`: a terrain atlas with coordinated light/dark ink palettes, contours, and engraved patterns.
|
|
70
70
|
- `soundings`: bathymetric reference cartography with depth bands, continuous relief, and port context.
|
|
71
71
|
- `blueprint`: a dark architectural drawing style, with a default camera centered on San Francisco.
|
|
@@ -76,31 +76,28 @@ to create an application-owned map.
|
|
|
76
76
|
|
|
77
77
|
### Streets appearance
|
|
78
78
|
|
|
79
|
-
Streets
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
`
|
|
83
|
-
|
|
84
|
-
`
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
World's transport mode and POI type: metro, rail, tram, bus, ferry, cable-car, and airport stations
|
|
102
|
-
are distinct, as are bars, cafés, museums, galleries, car dealers, and places of worship by
|
|
103
|
-
religion.
|
|
79
|
+
Streets has twelve theme/time combinations. Inspector offers **Default**, **Faded**, and
|
|
80
|
+
**Monochrome** independently of the Time of day control's `day`, `dawn`, `dusk`, and `night`
|
|
81
|
+
presets. Default retains the configuration key `light`: `theme="light" timeOfDay="night"`
|
|
82
|
+
selects `dark`, while `theme="light" timeOfDay="day"` selects `light`. The other concrete themes
|
|
83
|
+
are `dawn`, `dusk`, `faded`, `monochrome`, `dawn-faded`, `dawn-monochrome`, `dusk-faded`,
|
|
84
|
+
`dusk-monochrome`, `dark-faded`, and `dark-monochrome`. All twelve appearances share roads, label placement, fonts and icon artwork.
|
|
85
|
+
Colors and lighting vary; flat-map colors are authored independently.
|
|
86
|
+
|
|
87
|
+
Scene lighting is calibrated against Mapbox Standard. Streets owns its cartography: slate-blue
|
|
88
|
+
roads with stronger regional outlines, neutral urban surfaces, pale warm rural ground, green
|
|
89
|
+
parks and subtle cream buildings. Its palette is not a fixed copy of the provider's reference
|
|
90
|
+
colors. All appearances use the daylight map's category-colored POI discs and pictograms.
|
|
91
|
+
Maki pictograms distinguish transport modes and POI types. Scene-sun lighting preserves
|
|
92
|
+
unshadowed roof paint while allowing light color to affect walls.
|
|
93
|
+
|
|
94
|
+
The regional climate underlay is temporarily disabled while shared URL delivery is prepared;
|
|
95
|
+
compiled styles omit its image source and raster layer. Themes use their authored land-cover
|
|
96
|
+
palettes. Urban and education areas use neutral surfaces; farmland stays pale, while mapped orchards and nurseries remain
|
|
97
|
+
green. Underground footprints flagged `hide_3d` are omitted from the flat building layers. Streets
|
|
98
|
+
suspends duplicate flat building footprints in 3D so roads remain visible under open landmarks;
|
|
99
|
+
2D mode restores ordinary footprints. Normal 3D buildings keep a small neutral/active tone difference. Authored models use
|
|
100
|
+
the neutral building color and independently configurable window shading.
|
|
104
101
|
|
|
105
102
|
Streets packages DINish Medium for roads, house numbers and POIs, and Bold for shields, approximating
|
|
106
103
|
the reference's DIN Pro lettering. Other roles retain Noto Sans Regular, Bold and Italic. All
|
|
@@ -110,26 +107,25 @@ Maki's 15px artwork is composed into a centered 12px box, leaving room inside th
|
|
|
110
107
|
interior. Their 1x and 2x atlases rasterize these SVG compositions separately; the map displays
|
|
111
108
|
each complete icon at native scale instead of rescaling the bitmap as the zoom changes.
|
|
112
109
|
|
|
113
|
-
The
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
for motorway/trunk/primary; `#BDCCD9` for secondary/local.
|
|
110
|
+
The day road network keeps major routes distinct at regional and city scales. Motorways and
|
|
111
|
+
trunks gain a darker outline from z6 through z14, blending into the detailed treatment at z15.
|
|
112
|
+
Regional connector widths remain readable between towns; their city casing palette holds through z14.
|
|
113
|
+
Primary, secondary, tertiary and local roads widen slightly at intermediate zooms and converge
|
|
114
|
+
with their detailed profiles at z15. Local streets become readable when their geometry arrives
|
|
115
|
+
at z12. Casing passes sit below all receiving road fills, preventing exposed round segment caps
|
|
116
|
+
at junctions. Links remain narrower and draw before receiving roads. Tunnel casings are dashed;
|
|
117
|
+
surface and bridge casings are continuous. Construction fills and marks draw below roads in
|
|
118
|
+
service. Crosswalks and compact blue-gray arrows fade in from z16.5.
|
|
119
|
+
|
|
120
|
+
Surface footpaths and cycleways share geometry across appearances, at 92% of their authored
|
|
121
|
+
width and without casings. Day uses white over mapped green ground and gray-earth elsewhere.
|
|
122
|
+
The shared `roads.pathGround` compiler and browser protocol clip the green portions from the
|
|
123
|
+
same vector tiles; a complete ground-colored path remains visible if context cannot load.
|
|
124
|
+
Road carriageway outlines draw above these paths. This treatment belongs to the Streets
|
|
125
|
+
definition and survives normal artifact regeneration in every palette and time preset.
|
|
126
|
+
Road palettes, width profiles, building outlines and the overview backgrounds are authored here
|
|
127
|
+
in Maps; consumers inherit them without installing a separately edited style snapshot.
|
|
128
|
+
|
|
133
129
|
From z13, pedestrian plazas use an opaque pale surface above commercial zoning and below
|
|
134
130
|
explicit grass, gardens and parks. The `roads.pedestrian.surface` token follows the ground's
|
|
135
131
|
theme and time of day. From z17, mapped sidewalks add a translucent tint and dot pattern through
|
|
@@ -152,16 +148,15 @@ Streets rounds exterior building corners with a 1.5-metre radius and softens the
|
|
|
152
148
|
lighting transition (`threeDimensional.edgeRadius: 1.5`). Courtyards and tile cuts retain their shape.
|
|
153
149
|
Shields use 9 px DINish Bold and closer spacing at z11–13. Street names yield to destinations
|
|
154
150
|
and draw above flat footprints but below 3D buildings, with viewport-aligned letters.
|
|
155
|
-
3D lights use
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
[3D buildings](https://github.com/tileflow/tileflow-sdk/blob/main/packages/core/docs/buildings-3d.md).
|
|
151
|
+
3D lights use a southern sun by day, southeast at dawn, southwest at dusk and western moonlight
|
|
152
|
+
at night. At each moment, palettes share light direction, strength and shadow geometry;
|
|
153
|
+
only light colors change. `controller.setSun({date, location})` uses the real sun instead.
|
|
154
|
+
Streets enables `camera.adaptivePerspective`. See camera, landmark and lighting settings in
|
|
155
|
+
[3D buildings](https://github.com/tileflow/tileflow-sdk/blob/main/packages/core/README.md).
|
|
161
156
|
The buildings' `threeDimensional.lighting` and `shadows` options control the effect, and each
|
|
162
157
|
theme's `lighting.sun.shadowIntensity` and `lighting.ambient` control its strength.
|
|
163
158
|
Street lights are opt-in: set `roads.streetLights.enabled: true`.
|
|
164
|
-
|
|
159
|
+
Streets uses `groundOcclusion: 0.07` and `groundOcclusionRadius: 1.5` for subtle ground contact.
|
|
165
160
|
`buildings.threeDimensional.occlusion: false` disables contact and model occlusion.
|
|
166
161
|
`buildings.contactShadow` styles the flat fallback.
|
|
167
162
|
Streets selects Core's `labels.roadPlacement: 'ground'`: street names follow the road plane below
|
|
@@ -170,9 +165,10 @@ Road names retain class zoom/size curves, favor major roads and add padding thro
|
|
|
170
165
|
Pedestrian paths group separately. Compact types preserve language;
|
|
171
166
|
`labels.roadNameFormat: 'full'` keeps source names.
|
|
172
167
|
Disabling roads omits their names.
|
|
173
|
-
Road rings, ramp and surface ordering use [Core's replaceable defaults](
|
|
174
|
-
|
|
175
|
-
|
|
168
|
+
Road rings, ramp and surface ordering use [Core's replaceable defaults](https://github.com/tileflow/tileflow-sdk/blob/main/packages/core/README.md).
|
|
169
|
+
All non-day themes grade day's ground, water, roads, trees and 2D/3D materials across zooms:
|
|
170
|
+
yellow warmth at dawn, dimmer stone at dusk, cool night. Day palettes stay unchanged.
|
|
171
|
+
Each theme paints a [street sky](https://github.com/tileflow/tileflow-sdk/blob/main/packages/core/README.md) with night stars; `atmosphere: true`
|
|
176
172
|
on a globe map adds space around it. Mercator and native targets remain supported.
|
|
177
173
|
|
|
178
174
|
Streets enables model trees by default (`mode: '3d'`, `fallback: 'none'`). They stay three-dimensional
|
|
@@ -189,7 +185,7 @@ changing source heights. All presets style bark and crowns independently.
|
|
|
189
185
|
The models have 222–386 triangles nearby and 44–78 at distance, using Core's instanced tree
|
|
190
186
|
renderer; flat crowns use the existing sprite atlas. Tree locations and attributes still come
|
|
191
187
|
from the source tiles. The artwork does not add trees to parks whose data has none. See
|
|
192
|
-
[3D trees](https://github.com/tileflow/tileflow-sdk/blob/main/packages/core/
|
|
188
|
+
[3D trees](https://github.com/tileflow/tileflow-sdk/blob/main/packages/core/README.md) for
|
|
193
189
|
browser rendering and platform support. To remove both representations, extend the map:
|
|
194
190
|
|
|
195
191
|
<!-- docs:check -->
|
|
@@ -207,9 +203,12 @@ export default defineMap({
|
|
|
207
203
|
```
|
|
208
204
|
|
|
209
205
|
POIs follow World ranks and category density, with extra detail for parks and transport.
|
|
206
|
+
Generic airport POIs are limited to rank 0 to reduce misplaced business listings; the dedicated
|
|
207
|
+
aerodrome layer continues to label mapped airports. This display policy does not repair source data.
|
|
208
|
+
Road-reference repetition is reduced at z11–13 and retains its detail interval from z14.
|
|
210
209
|
Gardens stay at ranks 0–1 at every zoom, keeping principal destinations while omitting botanical
|
|
211
210
|
collections and some small independent gardens. Other park and landmark types retain their usual
|
|
212
|
-
eligibility.
|
|
211
|
+
eligibility.
|
|
213
212
|
|
|
214
213
|
Cities and districts hand over at z15, smaller settlements at z13. Co-located cities share one
|
|
215
214
|
anchor. Districts use rank gates below z12, then source availability and collisions. Street names use 0.15 em letter spacing and
|
|
@@ -221,7 +220,6 @@ The map uses Tileflow data and assets, including packaged DINish and Noto Sans f
|
|
|
221
220
|
reference uses DIN Pro Medium, so font shapes and stroke weight
|
|
222
221
|
remain an approximation. Available POIs, abbreviated names,
|
|
223
222
|
proprietary landmark models, transit branding, and building detail can differ from the reference.
|
|
224
|
-
See [map design and asset provenance](https://github.com/tileflow/tileflow-sdk/blob/main/packages/maps/docs/design-and-assets.md).
|
|
225
223
|
|
|
226
224
|
### Blueprint naming
|
|
227
225
|
|
|
@@ -318,10 +316,7 @@ for inheritance and styling, or the
|
|
|
318
316
|
[public exports](https://github.com/tileflow/tileflow-sdk/blob/main/packages/maps/src/index.ts)
|
|
319
317
|
for exact names. The installed package's definitions and README take precedence over a newer `main`.
|
|
320
318
|
|
|
321
|
-
##
|
|
322
|
-
|
|
323
|
-
The [design and asset notes](https://github.com/tileflow/tileflow-sdk/blob/main/packages/maps/docs/design-and-assets.md) describe each map's visual grammar, source references, and third-party asset boundaries. They are also included under
|
|
324
|
-
`docs/` in the installed package.
|
|
319
|
+
## Streets themes
|
|
325
320
|
|
|
326
321
|
Streets offers three time-of-day families: `light` (displayed as Default), `faded`, and `monochrome`, each with
|
|
327
322
|
`day`, `dawn`, `dusk`, and `night`. For example, `theme="faded" timeOfDay="night"` resolves to
|
|
@@ -329,3 +324,15 @@ Streets offers three time-of-day families: `light` (displayed as Default), `fade
|
|
|
329
324
|
concrete theme names remain available for existing applications and captures. This catalog
|
|
330
325
|
is inherited when extending Streets without overriding it.
|
|
331
326
|
See the [time-of-day contract](https://github.com/tileflow/tileflow-sdk/blob/main/packages/core/README.md#style-with-themes-and-semantic-modules).
|
|
327
|
+
|
|
328
|
+
Streets packages contrasted routes and compact trees. Climate artwork and its attribution are
|
|
329
|
+
retained for future URL delivery, but the underlay is not included in compiled styles.
|
|
330
|
+
When the 3D view is active, available buildings and models appear at full height from zoom 14.25
|
|
331
|
+
without zoom entrance animations.
|
|
332
|
+
Pitch is capped at 38° through zoom 15; closer views use the application's maximum.
|
|
333
|
+
Daylight combines warm limestone buildings, ivory model surfaces, smoked-blue glazing and warm
|
|
334
|
+
roof tones under warm sunlight and cool skylight. Models share ordinary-building shading, with
|
|
335
|
+
soft contact shadows and ambient occlusion in recesses. Monochrome materials stay neutral.
|
|
336
|
+
Glass parts can be recoloured independently through `modelColors.glass`; window roles retain
|
|
337
|
+
that glass tint even on a shared stone part, with `modelLighting.window.colorScale: 0.96`.
|
|
338
|
+
Other maps can override their colour and material without regenerating the model.
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -205,3 +205,10 @@ Cívica includes five unmodified upstream font files under `assets/civica/fonts/
|
|
|
205
205
|
component filenames and source revisions for Tileflow's generic font preparation pipeline.
|
|
206
206
|
`assets/civica/fonts/README.md` records individual pinned source links and verified OpenType full
|
|
207
207
|
names. No font file has been subsetted, renamed internally, or modified.
|
|
208
|
+
|
|
209
|
+
## Historical climate context
|
|
210
|
+
|
|
211
|
+
Streets uses a smoothed colour proxy derived from Beck et al. (2023),
|
|
212
|
+
https://doi.org/10.1038/s41597-023-02549-6, under CC BY 4.0.
|
|
213
|
+
Source, attribution and adaptation details: assets/streets/climate/NOTICE.txt.
|
|
214
|
+
The image is historical context, not live vegetation.
|