Skip to content

Commit eedc86e

Browse files
committed
Change key to use string instead of coordinate class
1 parent fa62ecf commit eedc86e

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/InMemoryElevationProvider.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public class InMemoryElevationProvider : IElevationProvider
1818
{
1919
private readonly ILogger<InMemoryElevationProvider> _logger;
2020
private readonly IFileProvider _fileProvider;
21-
private readonly ConcurrentDictionary<Coordinate, Task<BytesAndSamples>> _initializationTaskPerLatLng;
21+
private readonly ConcurrentDictionary<string, Task<BytesAndSamples>> _initializationTaskPerLatLng;
2222

2323
/// <summary>
2424
/// Constructor
@@ -50,7 +50,7 @@ public async Task Initialize()
5050
continue;
5151
}
5252
var key = ElevationHelper.FileNameToKey(hgtFile.Name);
53-
_initializationTaskPerLatLng[key] = Task.Run(() =>
53+
_initializationTaskPerLatLng[key.ToString()] = Task.Run(() =>
5454
{
5555
var stream = hgtFile.CreateReadStream();
5656
using var memoryStream = new MemoryStream();
@@ -71,14 +71,14 @@ public async Task<double[]> GetElevation(double[][] latLngs)
7171
foreach (var latLng in latLngs)
7272
{
7373
var key = new Coordinate(Math.Floor(latLng[0]), Math.Floor(latLng[1]));
74-
if (_initializationTaskPerLatLng.ContainsKey(key) == false)
74+
if (_initializationTaskPerLatLng.ContainsKey(key.ToString()) == false)
7575
{
7676
_logger.LogWarning($"Unable to find elevation file key: {key}, there are {_initializationTaskPerLatLng.Keys.Count} in the tasks list.");
7777
elevation.Add(0);
7878
continue;
7979
}
8080

81-
var info = await _initializationTaskPerLatLng[key];
81+
var info = await _initializationTaskPerLatLng[key.ToString()];
8282

8383
var exactLocation = new Coordinate(Math.Abs(latLng[0] - key.X) * (info.Samples - 1),
8484
(1 - Math.Abs(latLng[1] - key.Y)) * (info.Samples - 1));

0 commit comments

Comments
 (0)