Change preview tile, add to dev_config

This commit is contained in:
stopflock
2025-09-29 22:18:33 -05:00
parent 2d29c93145
commit e71adab87e
3 changed files with 12 additions and 8 deletions

View File

@@ -6,6 +6,11 @@ import 'package:flutter/material.dart';
// Fallback tile storage estimate (KB per tile), used when no preview tile data is available
const double kFallbackTileEstimateKb = 25.0;
// Preview tile coordinates for tile provider previews and size estimates
const int kPreviewTileZoom = 18;
const int kPreviewTileY = 101300;
const int kPreviewTileX = 41904;
// Direction cone for map view
const double kDirectionConeHalfAngle = 30.0; // degrees
const double kDirectionConeBaseLength = 0.001; // multiplier

View File

@@ -7,6 +7,7 @@ import 'package:collection/collection.dart';
import '../app_state.dart';
import '../models/tile_provider.dart';
import '../services/localization_service.dart';
import '../dev_config.dart';
class TileProviderEditorScreen extends StatefulWidget {
final TileProvider? provider; // null for adding new provider
@@ -378,11 +379,11 @@ class _TileTypeDialogState extends State<_TileTypeDialog> {
});
try {
// Use a sample tile (zoom 10, somewhere in the world)
// Use a sample tile from configured preview location
final url = _urlController.text
.replaceAll('{z}', '10')
.replaceAll('{x}', '512')
.replaceAll('{y}', '384');
.replaceAll('{z}', kPreviewTileZoom.toString())
.replaceAll('{x}', kPreviewTileX.toString())
.replaceAll('{y}', kPreviewTileY.toString());
final response = await http.get(Uri.parse(url));

View File

@@ -4,12 +4,10 @@ import 'package:http/http.dart' as http;
import '../models/tile_provider.dart';
import '../state/settings_state.dart';
import '../dev_config.dart';
/// Service for fetching missing tile preview images
class TilePreviewService {
static const int _previewZoom = 10;
static const int _previewX = 512;
static const int _previewY = 384;
static const Duration _timeout = Duration(seconds: 10);
/// Attempt to fetch missing preview tiles for tile types that don't already have preview data
@@ -63,7 +61,7 @@ class TilePreviewService {
static Future<Uint8List?> _fetchPreviewForTileType(TileType tileType, String? apiKey) async {
try {
final url = tileType.getTileUrl(_previewZoom, _previewX, _previewY, apiKey: apiKey);
final url = tileType.getTileUrl(kPreviewTileZoom, kPreviewTileX, kPreviewTileY, apiKey: apiKey);
final response = await http.get(Uri.parse(url)).timeout(_timeout);