public void LatLongToSvy21Test() { Svy21Coordinate expected, actual; LatLongCoordinate test; // SVY21 Reference Point. expected = new Svy21Coordinate(38744.572, 28001.642); test = new LatLongCoordinate(1.366666, 103.833333); actual = Svy21.ComputeSvy21(test); Assert.AreEqual(expected.Northing, actual.Northing, ToleranceSvy21); Assert.AreEqual(expected.Easting, actual.Easting, ToleranceSvy21); // Corner of Ang Mo Kio 66kV Substation. expected = new Svy21Coordinate(39105.269, 30629.967); test = new LatLongCoordinate(1.3699278977737488, 103.85695034976466); actual = Svy21.ComputeSvy21(test); Assert.AreEqual(expected.Northing, actual.Northing, ToleranceSvy21); Assert.AreEqual(expected.Easting, actual.Easting, ToleranceSvy21); // Corner of Jurong Lake Canal 400kV Cable Bridge. expected = new Svy21Coordinate(36307.704, 16272.970); test = new LatLongCoordinate(1.3446255443241177, 103.72794378041792); actual = Svy21.ComputeSvy21(test); Assert.AreEqual(expected.Northing, actual.Northing, ToleranceSvy21); Assert.AreEqual(expected.Easting, actual.Easting, ToleranceSvy21); // Corner of Sembawang 66kV Substation. expected = new Svy21Coordinate(48187.789, 27720.130); test = new LatLongCoordinate(1.4520670518379692, 103.83080332777138); actual = Svy21.ComputeSvy21(test); Assert.AreEqual(expected.Northing, actual.Northing, ToleranceSvy21); Assert.AreEqual(expected.Easting, actual.Easting, ToleranceSvy21); }
public static List <Carpark> fixURACarparkData() { FetchPublicAPI publicAPI = new FetchPublicAPI(); var carparks = new List <Carpark>(); // URA Carpark Info var task = Task.Run(async() => await publicAPI.GetURAParkingInfoAsync()); var URACarparkInfo = task.Result; var carparkNo = ""; foreach (var r in URACarparkInfo) { if (carparkNo != r.ppCode) { double xcoord = 0.00, ycoord = 0.00; if (r.geometries != null) { var uncooord = r.geometries[0].coordinates.Split(","); var x = uncooord[0]; var y = uncooord[1]; Svy21Coordinate svy21 = new Svy21Coordinate(double.Parse(x), double.Parse(y)); LatLongCoordinate latLong = svy21.ToLatLongCoordinate(); xcoord = latLong.Latitude; ycoord = latLong.Longitude; } Carpark carpark = new Carpark() { Id = Guid.NewGuid(), CarparkId = r.ppCode, CarparkName = r.ppName, Address = r.ppName, AgencyType = "URA", IsCentral = false, XCoord = xcoord.ToString(), YCoord = ycoord.ToString(), ParkingSystem = "", LotType = "" }; carparks.Add(carpark); } carparkNo = r.ppCode; } return(carparks); }
public void Test4() { double easting = 27720.130; double northing = 48187.789; CoordinateConverter cc = new CoordinateConverter(); Coordinate input = new Coordinate(); input.X = easting; input.Y = northing; Coordinate actualonemap = cc.Fr3414To4326Async(input).Result; Svy21Coordinate test = new Svy21Coordinate(northing, easting); LatLongCoordinate actualnus = Svy21.ComputeLatitudeLongitude(test); Assert.AreEqual(actualonemap.longitude, actualnus.Longitude, ToleranceLatLong); Assert.AreEqual(actualonemap.latitude, actualnus.Latitude, ToleranceLatLong); }
public void Test4() { double longitude = 103.83080332777138; double latitude = 1.4520670518379692; CoordinateConverter cc = new CoordinateConverter(); Coordinate input = new Coordinate(); input.longitude = longitude; input.latitude = latitude; Coordinate actualonemap = cc.Fr4326To3414Async(input).Result; LatLongCoordinate test = new LatLongCoordinate(latitude, longitude); Svy21Coordinate actualnus = Svy21.ComputeSvy21(test); Assert.AreEqual(actualonemap.Y, actualnus.Northing, ToleranceSvy21); Assert.AreEqual(actualonemap.X, actualnus.Easting, ToleranceSvy21); }
public void Test3() { double longitude = 103.72794378041792; double latitude = 1.3446255443241177; CoordinateConverter cc = new CoordinateConverter(); Coordinate input = new Coordinate(); input.longitude = longitude; input.latitude = latitude; Coordinate actualonemap = cc.Fr4326To3414Async(input).Result; LatLongCoordinate test = new LatLongCoordinate(latitude, longitude); Svy21Coordinate actualnus = Svy21.ComputeSvy21(test); Assert.AreEqual(actualonemap.Y, actualnus.Northing, ToleranceSvy21); Assert.AreEqual(actualonemap.X, actualnus.Easting, ToleranceSvy21); }
public void Test2() { double longitude = 103.856950349764668; double latitude = 1.3699278977737488; CoordinateConverter cc = new CoordinateConverter(); Coordinate input = new Coordinate(); input.longitude = longitude; input.latitude = latitude; Coordinate actualonemap = cc.Fr4326To3414Async(input).Result; LatLongCoordinate test = new LatLongCoordinate(latitude, longitude); Svy21Coordinate actualnus = Svy21.ComputeSvy21(test); Assert.AreEqual(actualonemap.Y, actualnus.Northing, ToleranceSvy21); Assert.AreEqual(actualonemap.X, actualnus.Easting, ToleranceSvy21); }
protected bool Equals(Svy21Coordinate other) { return(Easting.Equals(other.Easting) && Northing.Equals(other.Northing)); }
protected bool Equals(Svy21Coordinate other) { return Easting.Equals(other.Easting) && Northing.Equals(other.Northing); }