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