예제 #1
0
 /// <summary>
 /// フォルダを指定して、走査されたDEMファイルの一覧をKMLのポリゴンとしてファイルへ出力する
 /// <para>ReaderクラスとManagerクラスの動作テストです。</para>
 /// <para>ファイル名はDEMmaps.kmlです。</para>
 /// <para>異種類のDEMは先読みされた方が優先して処理され、後読みされた異種のDEMはファイル出力されませんのでご注意ください。</para>
 /// <example>
 /// <code>
 /// GIS.GisTest.SaveDemFileInfoAsKml(Color.MediumBlue);
 /// </code>
 /// </example>
 /// </summary>
 /// <param name="color">色情報(ポリゴンの色)</param>
 public static void SaveDemFileInfoAsKml(System.Drawing.Color color)
 {
     Reader reader = new Reader();
     var hoge = reader.ScanDirWithDialog(ReadMode.HeaderOnly);
     Manager man = new Manager();
     man.Add(hoge.Item1);
     using (System.IO.StreamWriter fwriter = new System.IO.StreamWriter("DEMmaps.kml", false, Encoding.UTF8))
     {
         try
         {
             fwriter.Write(man.ToStringAsKml(color));            // 文字列化したデータを保存する。
         }
         catch
         {
             // エラー処理があれば記述
         }
     }
     return;
 }
예제 #2
0
 /// <summary>
 /// 渡されたDEM情報をマネージャへ追加する
 /// </summary>
 /// <param name="dems">追加したいDEM情報</param>
 private void Add(List<DemSet> dems)
 {
     if (dems != null)
     {
         try
         {
             // まずは既にあるマネージャに可能であれば格納させる
             foreach (Manager man in this.manager)
             {
                 man.Add(dems);
             }
             // まだ残っていれば、新規にマネージャを追加する
             while (dems.Count != 0)                 // 全て格納するまでループする
             {
                 Manager man = new Manager();
                 man.Add(dems);                      // 格納されると自動的にdemsは要素が削除される
                 this.manager.Add(man);              // 新メンバー追加
             }
         }
         catch (SystemException e)
         {
             Console.WriteLine(e.Message);
         }
     }
     return;
 }