Esempio n. 1
0
        public List <MgrsGridElement> SubGrids()
        {
            List <MgrsGridElement> result = new List <MgrsGridElement>();
            String start   = Name.Substring(0, 5);
            String numbers = Name.Remove(0, 5);

            for (Int32 subEasting = 0; subEasting < 10; subEasting++)
            {
                for (Int32 subNorthing = 0; subNorthing < 10; subNorthing++)
                {
                    String          eastingString  = numbers.Substring(0, _Digits - 2) + subEasting.ToString();
                    String          northingString = numbers.Substring(_Digits - 2, _Digits - 2) + subNorthing.ToString();
                    String          name           = start + eastingString + northingString;
                    MgrsGridElement subElement     = new MgrsGridElement(name);
                    subElement.Datum = this.Datum;
                    if (subElement.IsValid())
                    {
                        result.Add(subElement);
                    }
                }
            }
            return(result);
        }
Esempio n. 2
0
 public List<MgrsGridElement> SubGrids()
 {
     List<MgrsGridElement> result = new List<MgrsGridElement>();
     String start = Name.Substring(0, 5);
     String numbers = Name.Remove(0, 5);
     for ( Int32 subEasting = 0 ; subEasting < 10 ; subEasting++ )
     {
         for ( Int32 subNorthing = 0 ; subNorthing < 10 ; subNorthing++ )
         {
             String eastingString = numbers.Substring(0, _Digits - 2) + subEasting.ToString();
             String northingString = numbers.Substring(_Digits - 2, _Digits - 2) + subNorthing.ToString();
             String name = start + eastingString + northingString;
             MgrsGridElement subElement = new MgrsGridElement(name);
             subElement.Datum = this.Datum;
             if ( subElement.IsValid() )
             {
                 result.Add(subElement);
             }
         }
     }
     return result;
 }
Esempio n. 3
0
        private void btnMgrsGrid_Click(object sender, EventArgs e)
        {
            List<String> aachenHectards = new List<String>() {
                "31UGS05", "31UGS15", "31UGS06", "31UGS16",
                "32UKB86", "32UKB85", "32UKB95", "32UKB94", "32ULB04",
                "32ULB03"
            };
            List<String> thailandMyriads = new List<string>() {
                "47PLK", "47PLL",
                "47PMK", "47PML", "47PMM",                            "47PMR", "47PMS", "47PMT",
                "47PNK", "47PNL", "47PNM", "47PNN", "47PNP", "47PNQ", "47PNR", "47PNS", "47PNT",
                "47PPK", "47PPL",                   "47PPP", "47PPQ", "47PPR", "47PPS", "47PPT",
                                                    "47PQP", "47PQQ", "47PQR", "47PQS", "47PQT",
                                                    "47PRP", "47PRQ", "47PRR", "47PRS", "47PRT",

                                  "47NMJ",
                         "47NNH", "47NNJ",
                         "47NPH", "47NPJ",
                "47NQG", "47NQH",
                "47NRG", "47NRH",
                                  "47QLV", "47QLA", "47QLB",
                "47QMU", "47QMV", "47QMA", "47QMB",
                "47QNU", "47QNV", "47QNA", "47QNB", "47QNC",
                "47QPU", "47QPV", "47QPA", "47QPB", "47QPC",
                "47QQU", "47QQV", "47QQA", "47QQB",
                "47QRU", "47QRV", "47QRA",

                "48NSM",
                         "48PSU", "48PSV", "48PSA", "48PSB", "48PSC", "48QSD", "48QSE", "48QSF",
                "48PTT", "48PTU", "48PTV", "48PTA", "48PTB", "48PTC", "48QTD", "48QTE", "48QTF",
                                           "48PUA", "48PUB", "48PUC", "48QUD", "48QUE", "48QUF",
                                           "48PVA", "48PVB", "48PVC", "48QVD", "48QVE", "48QVF",
                                           "48PWA", "48PWB", "48PWC"
            };

            String outFilename = Path.Combine(GlobalSettings.XMLOutputDir, "mgrs.kml");
            KmlHelper kmlWriter = MgrsGridElement.StartKmlWriting();
            // foreach ( String lEntry in thailandMyriads )
            foreach ( String mgrsGridElement in aachenHectards )
            {
                MgrsGridElement mainGrid = new MgrsGridElement(mgrsGridElement);
                // lGrid.Datum = GeoDatum.DatumIndian1975();
                XmlNode kmlNode = kmlWriter.AddFolder(kmlWriter.DocumentNode, mainGrid.Name, false);
                //lGrid.WriteToKml(lKmlWriter, lNode);
                foreach ( var subGrid in mainGrid.SubGrids() )
                {
                    subGrid.WriteToKml(kmlWriter, kmlNode, subGrid.Name);
                }
            }

            //MgrsGridElement lElement = new MgrsGridElement("47PNL31");
            //lElement.Datum = GeoDatum.DatumIndian1975();
            //List<MgrsGridElement> lList = lElement.SubGrids();
            //foreach (MgrsGridElement lEntry in lList)
            //{
            //    XmlNode lNode = lKmlWriter.AddFolder(lKmlWriter.DocumentNode, lEntry.Name, false);
            //    lEntry.WriteToKml(lKmlWriter, lNode);
            //}
            kmlWriter.SaveToFile(outFilename);
        }