From 8ab08801f02a36bd387caa92306f7d56a77e1184 Mon Sep 17 00:00:00 2001 From: Maxim Novak Date: Wed, 9 Oct 2024 23:13:47 +0300 Subject: [PATCH] Elevation API - Added Resolution (#165) --- GoogleMapsApi.Test/IntegrationTests/ElevationTests.cs | 2 ++ GoogleMapsApi/Entities/Elevation/Response/Result.cs | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/GoogleMapsApi.Test/IntegrationTests/ElevationTests.cs b/GoogleMapsApi.Test/IntegrationTests/ElevationTests.cs index 6b5e6ee..d797c94 100644 --- a/GoogleMapsApi.Test/IntegrationTests/ElevationTests.cs +++ b/GoogleMapsApi.Test/IntegrationTests/ElevationTests.cs @@ -24,6 +24,7 @@ public async Task Elevation_ReturnsCorrectElevation() AssertInconclusive.NotExceedQuota(result); Assert.That(result.Status, Is.EqualTo(Entities.Elevation.Response.Status.OK)); Assert.That(result.Results.First().Elevation, Is.EqualTo(16.92).Within(1.0)); + Assert.That(result.Results.First().Resolution, Is.EqualTo(75.0).Within(10.0)); } [Test] @@ -40,6 +41,7 @@ public void ElevationAsync_ReturnsCorrectElevation() AssertInconclusive.NotExceedQuota(result); Assert.That(result.Status, Is.EqualTo(Entities.Elevation.Response.Status.OK)); Assert.That(result.Results.First().Elevation, Is.EqualTo(16.92).Within(1.0)); + Assert.That(result.Results.First().Resolution, Is.EqualTo(75.0).Within(10.0)); } } } diff --git a/GoogleMapsApi/Entities/Elevation/Response/Result.cs b/GoogleMapsApi/Entities/Elevation/Response/Result.cs index b3479ce..df0fd2e 100644 --- a/GoogleMapsApi/Entities/Elevation/Response/Result.cs +++ b/GoogleMapsApi/Entities/Elevation/Response/Result.cs @@ -17,5 +17,14 @@ public class Result /// [DataMember(Name = "elevation")] public double Elevation { get; set; } + + /// + /// The value indicating the maximum distance between data points from which the elevation was interpolated, in meters. + /// This property will be missing if the resolution is not known. + /// Note that elevation data becomes more coarse (larger resolution values) when multiple points are passed. + /// To obtain the most accurate elevation value for a point, it should be queried independently. + /// + [DataMember(Name = "resolution")] + public double Resolution { get; set; } } }