Exemple #1
0
        private static FdoGeometry Convert(ISimpleGeometry geometry)
        {
            var sg = geometry as FdoGeometry;

            if (sg != null)
            {
                return(sg.Clone());
            }

            var sgb = new FdoGeometryBuilder();

            geometry.Populate(sgb);
            return(sgb.ConstructedGeometry);
        }
Exemple #2
0
        /// <summary>Generates a geometry from its GML representation.</summary>
        /// <param name="reader">The stream from which the geometry is deserialized. </param>
        void IXmlSerializable.ReadXml(XmlReader reader)
        {
            var xdoc = new XmlDocument();

            xdoc.Load(reader);

            Gml._Geometry g = Gml._Geometry.Parse(xdoc.DocumentElement.OuterXml);
            using (var builder = new FdoGeometryBuilder())
            {
                g.Populate(builder);

                if (_Geometry != null)
                {
                    _Geometry.Dispose();
                    _Geometry         = null;
                    _CoordinateSystem = null;
                }
                using (FdoGeometry ng = builder.ConstructedGeometry)
                {
                    _Geometry         = FdoGeometry.ToGeometry(ng);
                    _CoordinateSystem = ng._CoordinateSystem;
                }
            }
        }
Exemple #3
0
        private static FdoGeometry Convert(ISimpleGeometry geometry)
        {
            var sg=geometry as FdoGeometry;
            if (sg!=null)
                return sg.Clone();

            var sgb=new FdoGeometryBuilder();
            geometry.Populate(sgb);
            return sgb.ConstructedGeometry;
        }
Exemple #4
0
        /// <summary>Generates a geometry from its GML representation.</summary>
        /// <param name="reader">The stream from which the geometry is deserialized. </param>
        void IXmlSerializable.ReadXml(XmlReader reader)
        {
            var xdoc=new XmlDocument();
            xdoc.Load(reader);

            Gml._Geometry g=Gml._Geometry.Parse(xdoc.DocumentElement.OuterXml);
            using (var builder=new FdoGeometryBuilder())
            {
                g.Populate(builder);

                if (_Geometry!=null)
                {
                    _Geometry.Dispose();
                    _Geometry=null;
                    _CoordinateSystem=null;
                }
                using (FdoGeometry ng=builder.ConstructedGeometry)
                {
                    _Geometry=FdoGeometry.ToGeometry(ng);
                    _CoordinateSystem=ng._CoordinateSystem;
                }
            }
        }