v6.7.0
Added 4
- Support the style specification's font-faces property with map.setFontFaces and map.getFontFaces methods
- Throw GPUInitializationError from the Map constructor when the WebGL2 context cannot be created instead of firing an error event
- Allow adding an image source without a URL, starting empty and making no network request until updateImage is called
- Add Style#triggerSymbolPlacement method to re-place symbols when they have moved outside the map's visibility
Changed 3
- Wrap Thai, Khmer, Burmese, Lao, Tibetan, Javanese and Balinese labels at word boundaries instead of running them on in one line
- Skip symbol re-placement when its inputs are unchanged to improve performance of repaints from animated style images or custom layers
- Make validate: false skip the style snapshot to avoid serializing the whole style when adding layers one at a time
Fixed 6
- Disable the navigation control's zoom-out button when viewport constraints prevent zooming out further
- Keep a vector tile's etag when the tile is reloaded after a style change so the next expiry refresh can skip unchanged tiles
- Fix project() and queryTerrainElevation disagreeing with the rendered terrain surface when the elevation lookup sampled a different DEM zoom than the drawn mesh
- Draw numbers and short uppercase codes upright in vertical line labels instead of rotating them along the line
- Fix the camera jumping at the end of a pan or zoom gesture on terrain by sampling the center elevation from the rendered terrain surface
- Ensure style state defaults are serialized
From MapLibre GL JS
✨ Features and improvements
- Support the style specification's
font-facesproperty, withmap.setFontFacesandmap.getFontFacesand improve complex script languages such as Devanagari, Khmer, Burmese and Hebrew (#8237) (by @HarelM) - Wrap Thai, Khmer, Burmese, Lao, Tibetan, Javanese and Balinese labels at word boundaries instead of running them on in one line, which applies to every style whether or not it declares
font-faces(#8237) (by @HarelM) - Throw
GPUInitializationErrorfrom theMapconstructor when the WebGL2 context cannot be created, instead of firing anerrorevent no listener can catch and returning a partially constructed map (#8066) (by @johncarmack1984) - Allow adding an image source without a
url. The source starts empty and makes no network request; callupdateImage({image})orupdateImage({url})later to show an image (#8167) (by @mondsichtung) - Skip symbol re-placement when its inputs are unchanged, so repaints from animated style images or custom layers cost a single frame (#8208) (by @lucaswoj)
- Add
Style#triggerSymbolPlacement, which re-places symbols when something the map cannot see for itself has moved them (#8208) (by @lucaswoj) - Make
{validate: false}skip the style snapshot the style setters only build as error context, so adding layers one at a time no longer serializes the whole style on every call (#8259) (by @lazerg)
🐞 Bug fixes
- Disable the navigation control's zoom-out button when viewport constraints prevent zooming out further (#5316) (by @miakh)
- Keep a vector tile's etag when the tile is reloaded after a style change, so the next expiry refresh can still skip unchanged tiles (#3309) (by @johncarmack1984)
- Fix
project()andqueryTerrainElevationdisagreeing with the rendered terrain surface when the elevation lookup sampled a different DEM zoom than the drawn mesh (#8212) (by @johncarmack1984) - Draw numbers (e.g. “21” in “반포대로21길”) and short uppercase codes (e.g. “A1”) upright in vertical line labels instead of rotating them along the line (#5404) (by @NEKOYASAN)
- Fix the camera jumping at the end of a pan or zoom gesture on terrain by sampling the center elevation from the rendered terrain surface (#7989, #3982) (by @johncarmack1984)
- Ensure style state defaults are serialized (#8263) (by @hiddewie)