О файлах GeoTIFF

Рендеринг 4 сложенных друг на друга растров.

Конечная точка dataLayers возвращает данные, закодированные в виде файлов GeoTIFF, которые можно использовать в любом приложении географической информационной системы (ГИС) для проектирования солнечных систем.

Каждая строка в ответе dataLayers содержит URL-адрес, который можно использовать для получения соответствующего файла GeoTIFF. URL-адреса действительны в течение часа после того, как они созданы на основе исходного запроса слоев данных. Файлы GeoTIFF можно хранить до 30 дней.

За исключением слоя RGB, файлы GeoTIFF не отображаются правильно в программе просмотра изображений, поскольку содержимое представляет собой закодированные данные, а не изображения RGB. Файлы GeoTIFF также нельзя использовать напрямую в качестве наложенного изображения с помощью Maps Javascript API.

В следующей таблице подробно описан каждый уровень.

Слой Глубина пикселей Разрешение Описание
Цифровая модель поверхности (DSM) 32-битное число с плавающей запятой 0,1 м/пиксель Данные о высоте, которые представляют топографию поверхности Земли, включая природные и искусственные объекты. Значения указаны в метрах над уровнем моря. Недопустимые местоположения или области, о которых у нас нет данных, сохраняются как -9999.
RGB 8-битный 0,1 м/пиксель
0,25 м/пиксель
0,5 м/пиксель
1 м/пиксель
Аэрофотоснимок региона. Файл изображения GeoTIFF содержит три полосы, соответствующие значениям красного, зеленого и синего, для формирования 24-битного значения RGB для каждого пикселя.

По умолчанию разрешение пикселей составляет 0,1 м/пиксель.
Строительная маска 1 бит 0,1 м/пиксель Один бит на пиксель указывает, считается ли этот пиксель частью крыши.
Годовой поток 32-битное число с плавающей запятой 0,1 м/пиксель Карта годового потока, или годового солнечного света на крышах региона. Значения указаны в кВтч/кВт/год.

Поток рассчитывается для каждого места, а не только для крыш зданий. Недопустимые местоположения или области, где мы не смогли рассчитать поток, сохраняются как -9999. Местоположение за пределами зоны покрытия недействительно.

Примечание. Это немаскированный флюс.
Ежемесячный поток 32-битное число с плавающей запятой 0,5 м/пиксель Карта месячных потоков (солнечный свет на крышах с разбивкой по месяцам) региона. Значения указаны в кВтч/кВт/год. Файл изображения GeoTIFF содержит 12 каналов, соответствующих январю — декабрю, по порядку.
Почасовая тень 32-битное целое число 1 м/пиксель 12 URL-адресов почасовых карт теней, соответствующих январю — декабрю, по порядку.

Каждый файл GeoTIFF содержит 24 полосы, соответствующие 24 часам суток. Каждый пиксель представляет собой 32-битное целое число, соответствующее (до) 31 дня этого месяца. 1 бит означает, что в соответствующем месте можно увидеть солнце в этот день, в этот час, в этом месяце.

Недопустимые местоположения сохраняются как -9999 и имеют установленный бит 31, поскольку он соответствует 32-му дню месяца и, следовательно, недействителен.

Декодирование почасовых растровых оттенков

Почасовые данные о тени кодируются в многоканальных растрах. Чтобы узнать больше об основах растра, см. Концепции Solar API .

Когда вы делаете запрос на почасовые данные о тени, вы можете получить до 12 растров, по одному на каждый месяц календарного года (с января по декабрь). Каждый растр состоит из 24 слоев или полос , соответствующих 24 часам суток.

Каждая полоса представлена ​​матрицей ячеек или пикселей . Каждый пиксель имеет глубину 32 бита, что соответствует (максимум) 31 дню месяца. Поэтому декодирование дня, времени и месяца данных о цвете требует понимания бита, канала и растра, которые вы анализируете.

Например, чтобы определить, видело ли данное место с координатами (x, y) солнце в 16:00 22 июня, выполните следующие действия:

  1. Сделайте запрос слоев данных для всех слоев на предмет местоположения (x, y).
  2. Поскольку июнь — шестой месяц в году, извлеките шестой URL-адрес в hourlyShadeUrls .
  3. Часовые диапазоны даны в 24-часовом формате. Чтобы получить данные за 16:00 (16:00), найдите 17-й канал.
  4. Индекс битов (дней) от 0. Чтобы получить данные за 22 июня, прочитайте бит 21.
  5. Биты предоставляют двоичные данные, указывающие, видело ли это место солнце в данную дату и время. Если бит равен 1, то это место видело солнце. Если бит равен 0, местоположение видело затенение.

Следующий код суммирует описанные выше шаги:

(hourly_shade[month - 1])(x, y)[hour] & (1 << (day - 1))