Exemplo n.º 1
0
        public static List <ISOLineString> ReadXML(XmlNodeList nodes)
        {
            List <ISOLineString> items = new List <ISOLineString>();

            foreach (XmlNode node in nodes)
            {
                items.Add(ISOLineString.ReadXML(node));
            }
            return(items);
        }
Exemplo n.º 2
0
        public static ISOPartfield ReadXML(XmlNode node)
        {
            ISOPartfield field = new ISOPartfield();

            field.PartfieldID         = node.GetXmlNodeValue("@A");
            field.PartfieldCode       = node.GetXmlNodeValue("@B");
            field.PartfieldDesignator = node.GetXmlNodeValue("@C");
            field.PartfieldArea       = node.GetXmlNodeValueAsUInt("@D");
            field.CustomerIdRef       = node.GetXmlNodeValue("@E");
            field.FarmIdRef           = node.GetXmlNodeValue("@F");
            field.CropTypeIdRef       = node.GetXmlNodeValue("@G");
            field.CropVarietyIdRef    = node.GetXmlNodeValue("@H");
            field.FieldIdRef          = node.GetXmlNodeValue("@I");

            XmlNodeList plnNodes = node.SelectNodes("PLN");

            if (plnNodes != null)
            {
                field.Polygons.AddRange(ISOPolygon.ReadXML(plnNodes));
            }

            XmlNodeList lsgNodes = node.SelectNodes("LSG");

            if (lsgNodes != null)
            {
                field.LineStrings.AddRange(ISOLineString.ReadXML(lsgNodes));
            }

            XmlNodeList pntNodes = node.SelectNodes("PNT");

            if (pntNodes != null)
            {
                field.Points.AddRange(ISOPoint.ReadXML(pntNodes));
            }

            XmlNodeList ggpNodes = node.SelectNodes("GGP");

            if (ggpNodes != null)
            {
                field.GuidanceGroups.AddRange(ISOGuidanceGroup.ReadXML(ggpNodes));
            }

            return(field);
        }
        public static ISOPolygon ReadXML(XmlNode node)
        {
            ISOPolygon pln = new ISOPolygon();

            pln.PolygonTypeInt    = node.GetXmlNodeValueAsInt("@A");
            pln.PolygonDesignator = node.GetXmlNodeValue("@B");
            pln.PolygonArea       = node.GetXmlNodeValueAsNullableUInt("@C");
            pln.PolygonColour     = node.GetXmlNodeValueAsNullableByte("@D");
            pln.PolygonId         = node.GetXmlNodeValue("@E");

            XmlNodeList lsgNodes = node.SelectNodes("LSG");

            if (lsgNodes != null)
            {
                pln.LineStrings.AddRange(ISOLineString.ReadXML(lsgNodes));
            }

            return(pln);
        }
Exemplo n.º 4
0
        public static ISOLineString ReadXML(XmlNode node)
        {
            ISOLineString lsg = new ISOLineString();

            lsg.LineStringTypeInt    = node.GetXmlNodeValueAsInt("@A");
            lsg.LineStringDesignator = node.GetXmlNodeValue("@B");
            lsg.LineStringWidth      = node.GetXmlNodeValueAsNullableUInt("@C");
            lsg.LineStringLength     = node.GetXmlNodeValueAsNullableUInt("@D");
            lsg.LineStringColour     = node.GetXmlNodeValueAsNullableByte("@E");
            lsg.LineStringId         = node.GetXmlNodeValue("@F");

            XmlNodeList pntNodes = node.SelectNodes("PNT");

            if (pntNodes != null)
            {
                lsg.Points.AddRange(ISOPoint.ReadXML(pntNodes));
            }

            return(lsg);
        }
Exemplo n.º 5
0
        public static ISOGuidancePattern ReadXML(XmlNode node)
        {
            ISOGuidancePattern item = new ISOGuidancePattern();

            item.GuidancePatternId         = node.GetXmlNodeValue("@A");
            item.GuidancePatternDesignator = node.GetXmlNodeValue("@B");
            item.GuidancePatternTypeInt    = node.GetXmlNodeValueAsInt("@C");
            item.GuidancePatternOptionsInt = node.GetXmlNodeValueAsNullableInt("@D");
            item.PropagationDirectionInt   = node.GetXmlNodeValueAsNullableInt("@E");
            item.ExtensionInt        = node.GetXmlNodeValueAsNullableInt("@F");
            item.Heading             = node.GetXmlNodeValueAsNullableDecimal("@G");
            item.Radius              = node.GetXmlNodeValueAsNullableUInt("@H");
            item.GNSSMethodInt       = node.GetXmlNodeValueAsNullableInt("@I");
            item.HorizontalAccuracy  = node.GetXmlNodeValueAsNullableDecimal("@J");
            item.VerticalAccuracy    = node.GetXmlNodeValueAsNullableDecimal("@K");
            item.BaseStationRef      = node.GetXmlNodeValue("@L");
            item.OriginalSRID        = node.GetXmlNodeValue("@M");
            item.NumberOfSwathsLeft  = node.GetXmlNodeValueAsNullableUInt("@N");
            item.NumberOfSwathsRight = node.GetXmlNodeValueAsNullableUInt("@O");

            XmlNode lsgNode = node.SelectSingleNode("LSG");

            if (lsgNode != null)
            {
                item.LineString = ISOLineString.ReadXML(lsgNode);
            }

            XmlNodeList plnNodes = node.SelectNodes("PLN");

            if (plnNodes != null)
            {
                item.BoundaryPolygons.AddRange(ISOPolygon.ReadXML(plnNodes));
            }

            return(item);
        }