Ejemplo n.º 1
0
 public SRTM3TileDesignator(string fileindex, string filename, double minlat, double maxlat, double minlon, double maxlon, int minelv, int maxelv, int rows, int columns, int version, string url, SRTM3TILESTATUS status, bool local, DateTime lastupdated)
 {
     FileIndex   = fileindex;
     FileName    = filename;
     MinLat      = minlat;
     MaxLat      = maxlat;
     MinLon      = minlon;
     MaxLon      = maxlon;
     MinElv      = minelv;
     MaxElv      = maxelv;
     Rows        = rows;
     Columns     = columns;
     Version     = version;
     URL         = url;
     Status      = status;
     Local       = local;
     LastUpdated = lastupdated;
 }
Ejemplo n.º 2
0
 public void FromTable(DataTable dt)
 {
     if (dt == null)
     {
         return;
     }
     this.Clear();
     foreach (DataRow row in dt.Rows)
     {
         string          index       = row["FileIndex"].ToString();
         string          filename    = row["FileName"].ToString();
         double          minlat      = System.Convert.ToDouble(row["MinLat"]);
         double          maxlat      = System.Convert.ToDouble(row["MaxLat"]);
         double          minlon      = System.Convert.ToDouble(row["MinLon"]);
         double          maxlon      = System.Convert.ToDouble(row["MaxLon"]);
         int             minelv      = System.Convert.ToInt32(row["MinElv"]);
         int             maxelv      = System.Convert.ToInt32(row["MaxElv"]);
         int             rows        = System.Convert.ToInt32(row["Rows"]);
         int             columns     = System.Convert.ToInt32(row["Columns"]);
         int             version     = System.Convert.ToInt32(row["Version"]);
         string          url         = row["URL"].ToString();
         SRTM3TILESTATUS status      = (SRTM3TILESTATUS)Enum.Parse(typeof(SRTM3TILESTATUS), row["Status"].ToString());
         bool            local       = System.Convert.ToBoolean(row["Local"]);
         DateTime        lastupdated = DateTime.UtcNow;
         try
         {
             try
             {
                 lastupdated = DateTime.ParseExact(row["LastUpdated"].ToString(), "yyyy-MM-dd HH:mm:ssZ", CultureInfo.InvariantCulture);
                 lastupdated = lastupdated.ToUniversalTime();
             }
             catch
             {
             }
             SRTM3TileDesignator tile = new SRTM3TileDesignator(index, filename, minlat, maxlat, minlon, maxlon, minelv, maxelv, rows, columns, version, url, status, local, lastupdated);
             this.Tiles.Add(tile.FileIndex, tile);
         }
         catch
         {
         }
     }
 }
Ejemplo n.º 3
0
 public DataTable FromJSONArray(string filename)
 {
     if (!File.Exists(filename))
     {
         return(new DataTableSRTM3());
     }
     try
     {
         using (StreamReader sr = new StreamReader(File.OpenRead(filename)))
         {
             string         json = sr.ReadToEnd();
             JSONArraySRTM3 a    = JsonConvert.DeserializeObject <JSONArraySRTM3>(json);
             // check version
             if (String.Compare(Version, a.version) != 0)
             {
                 // do upgrade/downgrade stuff here
             }
             else
             {
                 foreach (List <string> l in a.tiles)
                 {
                     string          fileindex = l[0];
                     string          FileName  = l[1];
                     double          minlat    = System.Convert.ToDouble(l[2], CultureInfo.InvariantCulture);
                     double          maxlat    = System.Convert.ToDouble(l[3], CultureInfo.InvariantCulture);
                     double          minlon    = System.Convert.ToDouble(l[4], CultureInfo.InvariantCulture);
                     double          maxlon    = System.Convert.ToDouble(l[5], CultureInfo.InvariantCulture);
                     int             minelv    = System.Convert.ToInt32(l[6]);
                     int             maxelv    = System.Convert.ToInt32(l[7]);
                     int             rows      = System.Convert.ToInt32(l[8]);
                     int             columns   = System.Convert.ToInt32(l[9]);
                     int             version   = System.Convert.ToInt32(l[10]);
                     string          url       = l[11];
                     SRTM3TILESTATUS status    = SRTM3TILESTATUS.UNDEFINED;
                     try
                     {
                         status = (SRTM3TILESTATUS)Enum.Parse(typeof(SRTM3TILESTATUS), l[12]);
                     }
                     catch
                     {
                     }
                     bool     local       = System.Convert.ToBoolean(l[13]);
                     DateTime lastupdated = DateTime.UtcNow;
                     try
                     {
                         lastupdated = System.Convert.ToDateTime(l[4]);
                     }
                     catch
                     {
                     }
                     Update(new SRTM3TileDesignator(fileindex, filename, minlat, maxlat, minlon, maxlon, minelv, maxelv, rows, columns, version, url, status, local, lastupdated));
                 }
             }
         }
         return(ToTable());
     }
     catch (Exception ex)
     {
     }
     return(new DataTableSRTM3());
 }
Ejemplo n.º 4
0
 public SRTM3TileDesignator(string fileindex, string filename, double minlat, double maxlat, double minlon, double maxlon, int minelv, int maxelv, int rows, int columns, int version, string url, SRTM3TILESTATUS status, bool local)
     : this(fileindex, filename, minlat, maxlat, minlon, maxlon, minelv, maxelv, rows, columns, version, url, status, local, DateTime.UtcNow)
 {
 }