void DoSaveAs() { FileAccessRequest far = new FileAccessRequest() { IsForReading = false, IsMultiSelect = false, ExtensionFilter = "KML Documents (*.kml)|*.kml|All files (*.*)|*.*", ExtensionFilterIndex = 1, SuggestedFileName = cnDefaultKmlTitle + ".kml" }; string fileNm = null; if (AppContext.Current.GetServiceViaLocator <IUIHelper>().TrySelectFiles(far, f => fileNm = f)) { string fnTitle = Path.GetFileNameWithoutExtension(fileNm); if (!cnDefaultKmlTitle.Equals(fnTitle, StringComparison.InvariantCultureIgnoreCase) && cnDefaultKmlTitle.Equals(this.KmlTitle)) { this.KmlTitle = fnTitle.Trim(); } KmlConverter kcnv = new KmlConverter(); var xkml = kcnv.ToKml(this.Placemarks, this.KmlTitle); XDocument xdoc = new XDocument(new XDeclaration("1.0", "UTF-8", null), xkml); this.KmlText = xdoc.ToString(); xdoc.Save(fileNm); } }
private void MI_Kml_Click(object sender, RoutedEventArgs e) { if (_selectProjection == null) { return; } if (_workData == null) { return; } var ph = GetSaveFilePath(); if (ph == null) { return; } foreach (var l in _workData) { if (!l.HasGeometry()) { continue; } //var doc = l.GetKmlDocument(SelectProjection); var kmlConverter = new KmlConverter(l, _selectProjection); var kml = KmlFile.Create(kmlConverter.GetKmlDocument(), false); using (var stream = File.OpenWrite(ph + "_" + l.Name + ".kml")) { kml.Save(stream); } } }
public void ConvertKmzFile() { using (var stream = File.OpenRead(@"KmlDocs\I&W KML.kmz")) { KmlConverter.KmzToCesiumLanguage(stream, m_stringWriter); } string czml = m_stringWriter.ToString(); Assert.IsNotEmpty(czml); }
public void ConvertKmlFile() { using (var textReader = File.OpenText(@"KmlDocs\STS-122-STS-122Ascent.kml")) { KmlConverter.KmlToCesiumLanguage(textReader, m_stringWriter); } string czml = m_stringWriter.ToString(); Assert.IsNotEmpty(czml); }
private static void ConvertKml(ConversionOptions options) { using (var outputWriter = new StreamWriter(options.OutputFileName)) { string extension = Path.GetExtension(options.InputFileName); if (".kml".Equals(extension, StringComparison.OrdinalIgnoreCase)) { using (var inputReader = new StreamReader(options.InputFileName)) KmlConverter.KmlToCesiumLanguage(inputReader, outputWriter, options.PrettyPrint); } else if (".kmz".Equals(extension, StringComparison.OrdinalIgnoreCase)) { using (var inputStream = new FileStream(options.InputFileName, FileMode.Open, FileAccess.Read)) KmlConverter.KmzToCesiumLanguage(inputStream, outputWriter, options.PrettyPrint); } } }
void DoParseText() { try { KmlConverter kcnv = new KmlConverter(); kcnv.ApplyXml(this.XmlSettings); kcnv.SwapLonLatWhenParsing = this.SwitchLonLat; var items = kcnv.ParsePlacemarks(this.Text); this.Placemarks.Clear(); foreach (var r in items) { this.Placemarks.Add(r); } } catch (Exception x) { this.ReportError(x); } }