goodmap 0.2.0
goodmap: ^0.2.0 copied to clipboard
Beautiful, theme-aware Flutter map components — a native MapLibre flat map and a 3D globe with points, labels and animated great-circle arcs. Inspired by mapcn.
Changelog #
0.2.0 #
Shared overlay vocabulary unifying flat map and globe marker/popup types.
Overlays #
- Shared overlay vocabulary: Unified
MarkerOptionsandPopupOptionsacrossGoodMap,GoodGlobe, andGoodMapGlobeto enable seamless transition and reuse of overlays. - Deprecated
GlobePointin favor ofMarkerOptionswhile keeping a backwards-compatibleGlobePointsubclass. - Added support for declarative
markersandpopupslist parameters directly toGoodMapandGoodMapGlobeconstructors, which synchronize dynamically with the underlyingGoodMapController. - Project and render interactive custom widget and image asset markers on the 3D globe stack.
- Retained custom high-performance canvas path for simple dot markers on the globe.
0.1.0 #
Initial release. Two map surfaces, inspired by mapcn.
Flat map — GoodMap #
- Theme-aware CARTO basemaps (positron / dark-matter) by
Themebrightness. GoodMapController: camera (flyTo/animateTo/fitBounds/moveTo), overlay-widget and asset GL-symbol markers, overlay popups, and polylines / great-circle routes.- Zoom + compass controls;
GoodMapThemetokens derived from theColorScheme.
Globe — GoodGlobe #
- Native 3D globe rendered with a single
ui.FragmentProgramorthographic sphere shader (noflutter_gpu); works on iOS, Android, web and desktop. - Theme-aware CARTO raster basemap reprojected Mercator→equirectangular in a background isolate.
- Inertial drag-rotate, pinch-zoom, and
onTap→ lat/lng. GlobePoint(dot + label) andGlobeArc(great-circle, bowed, animated marching dashes) with back-of-globe occlusion; tap a point for a popup.- Opt-in atmosphere glow (
atmosphere: true).
Hybrid — GoodMapGlobe #
- A globe that becomes a street map: shows
GoodGlobeat world/regional zoom, then cross-fades to the nativeGoodMap(full vector streets/cities) past a zoom threshold, and back. The centre coordinate carries across.
