public void EncodesAsExpected(double lat, double lng, GeoHashPrecision precision) { var expectedOutput = BuckingHamPalaceGeoHash.Substring(0, (int)precision); var encoder = new GeoHashEncoder <string>(); var encoded = encoder.Encode(lat, lng, precision); Assert.Equal(encoded, expectedOutput); }
public void EncodesAsExpected(GeoHashPrecision precision, int expectedMatches) { var encoder = new GeoHashEncoder <Location>(); var matcher = new GeoHashMatcher <Location>(); var geoHashedCities = encoder.Encode(_aussieSuburbs); var actualMatches = matcher.GetMatches(CoogeeGeoHash, geoHashedCities, precision).Count(); Assert.Equal(actualMatches, expectedMatches); }
public static async Task <List <Data> > ObtainValues(string path) { List <Data> result = new List <Data>(); var encoder = new GeoHashEncoder <string>(); double val1; double val2; foreach (var line in await File.ReadAllLinesAsync(path)) { Data dataElement = new Data(); var values = line.Split(","); if (Double.TryParse(values[0], out val1) && Double.TryParse(values[0], out val2)) { dataElement.Latitude = double.Parse(values[0]); dataElement.Longitude = double.Parse(values[1]); dataElement.Geohash = encoder.Encode(double.Parse(values[0]), double.Parse(values[1]), GeoHash.Net.Utilities.Enums.GeoHashPrecision.MaximumPrecision); result.Add(dataElement); } } return(result); }