mirror of
https://github.com/zjs81/meshcore-open.git
synced 2026-08-04 06:52:59 +10:00
try OpenStreetMap Dark
This commit is contained in:
@@ -561,6 +561,7 @@ class _ChannelMessagePathMapScreenState
|
|||||||
TileLayer(
|
TileLayer(
|
||||||
urlTemplate: tileCache.urlTemplate,
|
urlTemplate: tileCache.urlTemplate,
|
||||||
tileProvider: tileCache.tileProvider,
|
tileProvider: tileCache.tileProvider,
|
||||||
|
tileBuilder: tileCache.tileBuilder,
|
||||||
userAgentPackageName:
|
userAgentPackageName:
|
||||||
MapTileCacheService.userAgentPackageName,
|
MapTileCacheService.userAgentPackageName,
|
||||||
maxZoom: 19,
|
maxZoom: 19,
|
||||||
|
|||||||
@@ -472,6 +472,7 @@ class _LineOfSightMapScreenState extends State<LineOfSightMapScreen> {
|
|||||||
TileLayer(
|
TileLayer(
|
||||||
urlTemplate: tileCache.urlTemplate,
|
urlTemplate: tileCache.urlTemplate,
|
||||||
tileProvider: tileCache.tileProvider,
|
tileProvider: tileCache.tileProvider,
|
||||||
|
tileBuilder: tileCache.tileBuilder,
|
||||||
userAgentPackageName: MapTileCacheService.userAgentPackageName,
|
userAgentPackageName: MapTileCacheService.userAgentPackageName,
|
||||||
maxZoom: 19,
|
maxZoom: 19,
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -398,6 +398,7 @@ class _MapCacheScreenState extends State<MapCacheScreen> {
|
|||||||
TileLayer(
|
TileLayer(
|
||||||
urlTemplate: tileCache.urlTemplate,
|
urlTemplate: tileCache.urlTemplate,
|
||||||
tileProvider: tileCache.tileProvider,
|
tileProvider: tileCache.tileProvider,
|
||||||
|
tileBuilder: tileCache.tileBuilder,
|
||||||
userAgentPackageName:
|
userAgentPackageName:
|
||||||
MapTileCacheService.userAgentPackageName,
|
MapTileCacheService.userAgentPackageName,
|
||||||
maxZoom: 19,
|
maxZoom: 19,
|
||||||
|
|||||||
@@ -565,6 +565,7 @@ class _MapScreenState extends State<MapScreen> {
|
|||||||
TileLayer(
|
TileLayer(
|
||||||
urlTemplate: tileCache.urlTemplate,
|
urlTemplate: tileCache.urlTemplate,
|
||||||
tileProvider: tileCache.tileProvider,
|
tileProvider: tileCache.tileProvider,
|
||||||
|
tileBuilder: tileCache.tileBuilder,
|
||||||
userAgentPackageName:
|
userAgentPackageName:
|
||||||
MapTileCacheService.userAgentPackageName,
|
MapTileCacheService.userAgentPackageName,
|
||||||
maxZoom: 19,
|
maxZoom: 19,
|
||||||
|
|||||||
@@ -911,6 +911,7 @@ class _PathTraceMapScreenState extends State<PathTraceMapScreen> {
|
|||||||
TileLayer(
|
TileLayer(
|
||||||
urlTemplate: tileCache.urlTemplate,
|
urlTemplate: tileCache.urlTemplate,
|
||||||
tileProvider: tileCache.tileProvider,
|
tileProvider: tileCache.tileProvider,
|
||||||
|
tileBuilder: tileCache.tileBuilder,
|
||||||
userAgentPackageName: MapTileCacheService.userAgentPackageName,
|
userAgentPackageName: MapTileCacheService.userAgentPackageName,
|
||||||
maxZoom: 19,
|
maxZoom: 19,
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import 'app_settings_service.dart';
|
|||||||
|
|
||||||
enum MapRasterSourcePreset {
|
enum MapRasterSourcePreset {
|
||||||
osmStandard('osm_standard'),
|
osmStandard('osm_standard'),
|
||||||
|
osmDark('osm_dark'),
|
||||||
stamenTerrain('stamen_terrain'),
|
stamenTerrain('stamen_terrain'),
|
||||||
alidadeSmoothDark('alidade_smooth_dark'),
|
alidadeSmoothDark('alidade_smooth_dark'),
|
||||||
outdoors('outdoors'),
|
outdoors('outdoors'),
|
||||||
@@ -86,6 +87,11 @@ class MapRasterSourceCatalog {
|
|||||||
label: 'OpenStreetMap Standard',
|
label: 'OpenStreetMap Standard',
|
||||||
description: 'Direct tiles from tile.openstreetmap.org',
|
description: 'Direct tiles from tile.openstreetmap.org',
|
||||||
);
|
);
|
||||||
|
static const MapRasterSourceDefinition osmDark = MapRasterSourceDefinition(
|
||||||
|
id: 'osm_dark',
|
||||||
|
label: 'OpenStreetMap Dark',
|
||||||
|
description: 'Standard OpenStreetMap tiles with an inverted dark filter',
|
||||||
|
);
|
||||||
static const MapRasterSourceDefinition stamenTerrain =
|
static const MapRasterSourceDefinition stamenTerrain =
|
||||||
MapRasterSourceDefinition(
|
MapRasterSourceDefinition(
|
||||||
id: 'stamen_terrain',
|
id: 'stamen_terrain',
|
||||||
@@ -119,6 +125,7 @@ class MapRasterSourceCatalog {
|
|||||||
|
|
||||||
static const List<MapRasterSourceDefinition> presets = [
|
static const List<MapRasterSourceDefinition> presets = [
|
||||||
osmStandard,
|
osmStandard,
|
||||||
|
osmDark,
|
||||||
stamenTerrain,
|
stamenTerrain,
|
||||||
alidadeSmoothDark,
|
alidadeSmoothDark,
|
||||||
outdoors,
|
outdoors,
|
||||||
@@ -130,6 +137,8 @@ class MapRasterSourceCatalog {
|
|||||||
switch (preset) {
|
switch (preset) {
|
||||||
case MapRasterSourcePreset.osmStandard:
|
case MapRasterSourcePreset.osmStandard:
|
||||||
return osmStandard;
|
return osmStandard;
|
||||||
|
case MapRasterSourcePreset.osmDark:
|
||||||
|
return osmDark;
|
||||||
case MapRasterSourcePreset.alidadeSmoothDark:
|
case MapRasterSourcePreset.alidadeSmoothDark:
|
||||||
return alidadeSmoothDark;
|
return alidadeSmoothDark;
|
||||||
case MapRasterSourcePreset.outdoors:
|
case MapRasterSourcePreset.outdoors:
|
||||||
@@ -279,6 +288,13 @@ class MapTileCacheService extends ChangeNotifier {
|
|||||||
|
|
||||||
String get urlTemplate => _buildUrlTemplate(appSettingsService.settings);
|
String get urlTemplate => _buildUrlTemplate(appSettingsService.settings);
|
||||||
|
|
||||||
|
TileBuilder? get tileBuilder => isInvertedOsmDarkSource
|
||||||
|
? _osmDarkTileBuilder
|
||||||
|
: null;
|
||||||
|
|
||||||
|
bool get isInvertedOsmDarkSource =>
|
||||||
|
source.id == MapRasterSourceCatalog.osmDark.id;
|
||||||
|
|
||||||
CacheManager get _concreteCacheManager => cacheManager as CacheManager;
|
CacheManager get _concreteCacheManager => cacheManager as CacheManager;
|
||||||
|
|
||||||
Map<String, String> get defaultHeaders => {
|
Map<String, String> get defaultHeaders => {
|
||||||
@@ -622,6 +638,30 @@ class MapTileCacheService extends ChangeNotifier {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Widget _osmDarkTileBuilder(
|
||||||
|
BuildContext _,
|
||||||
|
Widget tileWidget,
|
||||||
|
TileImage __,
|
||||||
|
) {
|
||||||
|
return ColorFiltered(
|
||||||
|
colorFilter: const ColorFilter.matrix(<double>[
|
||||||
|
1.33, 0, 0, 0, 0,
|
||||||
|
0, 1.33, 0, 0, 0,
|
||||||
|
0, 0, 1.33, 0, 0,
|
||||||
|
0, 0, 0, 1, 0,
|
||||||
|
]),
|
||||||
|
child: ColorFiltered(
|
||||||
|
colorFilter: const ColorFilter.matrix(<double>[
|
||||||
|
0.5740000009536743, -1.4299999475479126, -0.14399999380111694, 0, 255,
|
||||||
|
-0.4259999990463257, -0.429999977350235, -0.14399999380111694, 0, 255,
|
||||||
|
-0.4259999990463257, -1.4299999475479126, 0.8559999465942383, 0, 255,
|
||||||
|
0, 0, 0, 1, 0,
|
||||||
|
]),
|
||||||
|
child: tileWidget,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
class CachedNetworkTileProvider extends TileProvider {
|
class CachedNetworkTileProvider extends TileProvider {
|
||||||
final BaseCacheManager cacheManager;
|
final BaseCacheManager cacheManager;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user