Exemplo n.º 1
0
        public void CanPolygonBoundaryPreserveCurves()
        {
            var polygon = GeometryFactory.CreateBezierCircle();

            Assert.True(polygon.HasCurves, "Oops, original polygon has no curves");
            var boundary = GeometryUtils.Boundary(polygon);

            Assert.NotNull(boundary);
            Assert.AreEqual(GeometryType.Polyline, boundary.GeometryType);
            Assert.True(boundary.HasCurves, "did not preserve curves");
            Assert.AreEqual(polygon.PointCount, boundary.PointCount);
        }
Exemplo n.º 2
0
        public static Geometry CreateMarkerGeometry(MarkerStyle style)
        {
            switch (style)
            {
            case MarkerStyle.Circle:
                return(GeometryFactory.CreateBezierCircle(5));

            case MarkerStyle.Square:
                var envelope = GeometryFactory.CreateEnvelope(-5, -5, 5, 5);
                return(GeometryFactory.CreatePolygon(envelope));

            default:
                throw new NotImplementedException(
                          "Sorry, this MarkerStyle is not yet implemented");
            }
        }
Exemplo n.º 3
0
        public void CanCreateBezierCircle()
        {
            const double radius = 5.0;
            var          center = MapPointBuilder.CreateMapPoint(1, 2);
            const double delta  = 0.000001;

            var circle = GeometryFactory.CreateBezierCircle(radius, center);

            Assert.AreEqual(1, circle.PartCount);
            Assert.AreEqual(5, circle.PointCount);
            Assert.AreEqual(GeometryType.Polygon, circle.GeometryType);
            Assert.AreEqual(10.0, circle.Extent.Width, delta);
            Assert.AreEqual(10.0, circle.Extent.Height, delta);
            Assert.AreEqual(center.X, circle.Extent.Center.X, delta);
            Assert.AreEqual(center.Y, circle.Extent.Center.Y, delta);

            const double circumference = 2.0 * radius * Math.PI;

            Assert.AreEqual(circumference, circle.Length, 0.01);
        }