d3-tile
Макет для работы с плитами карты на основе изображений. Его можно использовать для создания простой слайдовой карты или для отрисовки стандартных плиток карты (например, Mapbox, Mapzen, CloudMade, Bing) в качестве базового слоя под векторным слоем.
| | | |
| | | |
| | | |
Установка
Если вы используете NPM, npm install d3-tile. В противном случае, скачайте последнюю версию. Вы также можете загрузить его напрямую с unpkg.com как самостоятельную библиотеку. Поддерживаются среды AMD, CommonJS и vanilla. В vanilla-среде экспортируется глобальная переменная d3.
<script src="https://unpkg.com/d3-array@1.0"></script> <script src="https://unpkg.com/d3-tile@0.0"></script> <script> var tile = d3.tile(); </script>
Попробуйте d3-tile в вашем браузере.
Справочник API
d3.tile()
Создает макет для определения плиток квадродерева, которые нужно отобразить в прямоугольном представлении.
var tile = d3.tile();
tile()
Вычисляет набор плиток квадродерева для отображения, учитывая текущий макет область, масштаб, сдвиг и размер плитки. Возвращает массив объектов со следующими свойствами:
-
xЦелочисленная координата X адреса плитки. Периодическая, если wrap установлено в true. -
yЦелочисленная координата Y адреса плитки. -
zЦелочисленная координата Z адреса плитки (уровень масштабирования). -
txСдвиг по оси X, который необходимо применить к плитке. Это значениеx, умноженное на размер плитки, но без учета логики обхода. -
tyСдвиг по оси Y, который необходимо применить к плитке. Это значениеy, умноженное на размер плитки.
Возвращаемый массив также имеет свойства scale и translate, которые могут быть использованы для применения правильного преобразования к группе изображений плиток. Пример использования см. в Raster & Vector III.
tile.extent([extent])
Если extent указано, устанавливает область данного макета плиток на указанный массив точек [[x0, y0], [x1, y1]], где [x0, y0] — верхний левый угол, а [x1, y1] — нижний правый угол, и возвращает этот макет плиток. Если extent не указано, возвращает текущую область макета.
tile.size([size])
Если size указано, устанавливает размер данного макета плиток на указанный двумерный массив чисел [ширина, высота] и возвращает этот макет плиток. Если size не указано, возвращает текущий размер макета. Это удобный метод, эквивалентный установке области на [[0, 0], [ширина, высота]].
tile.scale([scale])
Если scale указано, устанавливает масштаб данного макета плиток на указанное число scale и возвращает этот макет плиток. Если scale не указано, возвращает текущий масштаб макета.
tile.translate([translate])
Если translate указано, устанавливает сдвиг данного макета плиток на указанный двумерный массив чисел [x, y] и возвращает этот макет плиток. Если translate не указано, возвращает текущий сдвиг макета.
tile.wrap([wrap])
Если wrap указано, устанавливает опцию обхода для данного макета плиток на указанное булево значение и возвращает этот макет плиток. Если wrap не указано, возвращает текущую опцию обхода, которая по умолчанию равна true.
wrap(true)
Если wrap равно true, логика обхода будет применена к значениям адреса плитки x при оценке макета. Это приведет к периодическому отображению плиток карты, выходящих за пределы значений долготы между -180 и 180.
wrap(false)
Если wrap равно false, логика обхода будет отключена, ограничивая плитки значениями долготы между -180 и 180.
tile.tileSize([tileSize])
Если tileSize указано, устанавливает ширину и высоту каждой плитки для данного макета плиток на указанное число tileSize и возвращает этот макет плиток. Если tileSize не указано, возвращает текущий размер плитки макета, который по умолчанию равен 256, наиболее распространённый размер плитки среди поставщиков сервисов плиток.
© 2010–2018 Michael Bostock
Licensed under the BSD License.
https://github.com/d3/d3-tile