Ejemplo n.º 1
0
        /// <summary>
        /// Adds to <see cref="Geometries"/>
        /// </summary>
        /// <param name="geometry"></param>
        protected void Add(NetTopologySuite.Geometries.Geometry geometry)
        {
            if (IsReadOnly)
            {
                return;
            }

            if (geometry is IPolygonal)
            {
                polygonCount += geometry.NumGeometries;
            }
            else if (geometry is ILineal)
            {
                lineStringCount += geometry.NumGeometries;
            }
            else if (geometry is IPuntal)
            {
                pointCount += geometry.NumGeometries;
            }
            if (geometry is ICurvedGeometry)
            {
                curveCount += geometry.NumGeometries;
            }
            if (IsEmpty)
            {
                Geometries = new[] { geometry };
            }
            else
            {
                Geometries = Geometries.Append(geometry).ToArray();
                GeometryChanged();
            }
        }