Покажем точки на карте

Задача: Необходимо показать несколько gps точек с базы на карте с возможностью измерения расстояния между ними.

Будем использовать apache, php, mysql для бекенда.

Схема таблицы, где будут храниться точки.

Пишем на PHP серверную часть, которая будет конвертировать все это в GeoJSON для этого мы воспользуемся вот этой библиотекой.

Переходим в папку с проектом и с помощью composer добавляем необходимы библиотеки. Для этого создаем файл composer.json в корне нашего проекта.

Как вы заметили, кроме библиотеки geojson, я добавил еще composer-asset-plugin и leaflet-plugins. Первый — плагин к композеру, позволяющий заменить bower и npm. Второй — дополнительные плагины для leaflet (мы воспользуемся инструментом измерения расстояния)

ну и запускаем composer

Все, необходимы библиотеки установлены. Теперь создадим файл points.php

Теперь пишем клиентскую часть на базе  LeafletJS, для этого создадим index.html

Покажем точки на карте: 2 комментария

  1. Насчет
    // Почему-то lat lon так (lon, lat) нужно писать. Методом тыка получил. Возможно что-то, где-то не так делаю.

    Все дело в параметрах конструктора Point и традициях.
    Класс Point при создании экземпляра требует аргументы в порядке: абсцисса (X), ордината (Y). А в нашем мире Latitude — это широта (ордината), Longitude — долгота (абсцисса), но они традиционно читаются именно в таком порядке.
    Отсюда и инвертирование аргументов в конструкторе.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *