Beispiel #1
0
        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);
        }
Beispiel #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(Request.QueryString["q"]))
            {
                return;
            }
            List <SearchResults> locations = FacilityManagementSystem.getAPIData(Uri.EscapeDataString(Request.QueryString["q"]));

            if (locations == null || locations.Count == 0)
            {
                return;
            }

            SearchResults   location   = locations[0];
            List <Facility> facilities = FacilityManagementSystem.SearchNearby(Decimal.Parse(location.x), Decimal.Parse(location.y));

            location_list = facilities.Select(f => Svy21.ComputeLatitudeLongitude((double)f.x, (double)f.y)).ToList();
            this.location = Svy21.ComputeLatitudeLongitude(Double.Parse(location.x), Double.Parse(location.y));
            var points = location_list.Concat(new[] { this.location });

            this.upperbound        = Tuple.Create(points.Select(p => p.Item1).Max(), points.Select(p => p.Item2).Max());
            this.lowerbound        = Tuple.Create(points.Select(p => p.Item1).Min(), points.Select(p => p.Item2).Min());
            listResults.DataSource = facilities;
            listResults.DataBind();
        }
Beispiel #3
0
        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);
        }
Beispiel #4
0
        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);
        }
Beispiel #5
0
        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);
        }
Beispiel #6
0
        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);
        }
Beispiel #7
0
 public Svy21Coordinate ToSvy21Coordinate()
 {
     return(Svy21.ComputeSvy21(this));
 }
Beispiel #8
0
 public LatLongCoordinate ToLatLongCoordinate()
 {
     return(Svy21.ComputeLatitudeLongitude(this));
 }