public void AreEqual()
 {
     var rect1 = new GeoRect(44, 41, -69, -72);
     var rect2 = new GeoRect(44, 41, -69, -72);
     var rect3 = new GeoRect(41, 44, -60, -70);
     Assert.IsTrue(rect1.Equals(rect2));
     Assert.IsFalse(rect1.Equals(rect3));
 }
        public void ConstructionTest()
        {
            var rect1 = new GeoRect(44, 41, -69, -72);
            var rect2 = new GeoRect(44, 41, -69, -72);
            Assert.IsTrue(rect1.Equals(rect2));

            var rect3 = new GeoRect(rect1);
            Assert.IsTrue(rect1.Equals(rect3));

            var rect4 = new GeoRect(new List<Geo>
                                        {
                                            new Geo(44, -69),
                                            new Geo(41, -72),
                                        });
            Assert.IsTrue(rect1.Equals(rect4));
        }
        public void Inflations()
       {
           var rect = new GeoRect(44, 41, -69, -72);
           var nw = new Geo(rect.North, rect.West,true);
           var se = new Geo(rect.South, rect.East,true);

           var kmToInflate = 10.0f;

           nw = nw.Offset(Geo.KilometersToRadians(Math.Sqrt(2) * kmToInflate), Geo.DegreesToRadians(315));
           se = se.Offset(Geo.KilometersToRadians(Math.Sqrt(2) * kmToInflate), Geo.DegreesToRadians(135));

           var rect1 = new GeoRect(nw.Latitude,se.Latitude,se.Longitude,nw.Longitude);

           var inflatedRect = GeoRect.Inflate(rect, kmToInflate);
           Assert.IsTrue(rect1.Equals(inflatedRect));
       }