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); }
/// <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; } } }
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; }
/// <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; } } }