Как найти плитку (tiles) на карте Яндекс по координатам XYZ?
А на выходе мы должны рассчитать координаты X,Y для плитки (tile) в которую входят эти координаты для Яндекс карт.
Т.е условно кликнув на карту, выбрав произвольную точку, берем координаты точки — и по ним ищем X и Y соответствующей плитки в сервисе яндекс.
- Вопрос задан более года назад
- 598 просмотров
2 комментария
Сложный 2 комментария

Не очень ясно что вы хотите делать? «Тырить» плитки из карт? Зачем?
arms1631 @arms1631 Автор вопроса
Такое задание
Мне нужно ввести координаты, и получить плитку
То есть вместо условных 55.750626, 37.597664 мне нужно как-то рассчитать вот такие значения x=316898&y=164368
Решения вопроса 0
Ответы на вопрос 1

Flutter and iOS developer
Вот что пишет Яндекс про это
// Доступные проекции и соответствующие значения эксцентриситетов.
var projections = [ name: ‘wgs84Mercator’,
eccentricity: 0.0818191908426
>, name: ‘sphericalMercator’,
eccentricity: 0
>],
// Для вычисления номера нужного тайла следует задать параметры:
// — уровень масштабирования карты;
// — географические х объекта, попадающего в тайл;
// — проекцию, для которой нужно получить тайл.
params = z: 0,
geoCoords: [55.733776, 37.587936],
projection: projections[0]
>;
// Функция для перевода географических координат объекта
// в глобальные пиксельные координаты.
function fromGeoToPixels (lat, long, projection, z) var x_p, y_p,
pixelCoords,
tilenumber = [],
rho,
pi = Math.PI,
beta,
phi,
theta,
e = projection.eccentricity;
rho = Math.pow(2, z + 8) / 2;
beta = lat * pi / 180;
phi = (1 — e * Math.sin(beta)) / (1 + e * Math.sin(beta));
theta = Math.tan(pi / 4 + beta / 2) * Math.pow(phi, e / 2);
x_p = rho * (1 + long / 180);
y_p = rho * (1 — Math.log(theta) / pi);
// Функция для расчета номера тайла на основе глобальных пиксельных координат.
function fromPixelsToTileNumber (x, y) return [
Math.floor(x / 256),
Math.floor(y / 256)
];
>
// Переведем географические координаты объекта в глобальные пиксельные координаты.
pixelCoords = fromGeoToPixels(
params.geoCoords[0],
params.geoCoords[1],
params.projection,
params.z
);
// Посчитаем номер тайла на основе пиксельных координат.
tileNumber = fromPixelsToTileNumber(pixelCoords[0], pixelCoords[1]);
// Отобразим результат.
document.addEventListener(«DOMContentLoaded», function () document.getElementById(«result»).innerHTML +
«– уровень масштабирования: » + params.z + «
» +
«– географические координаты: [» + params.geoCoords[0] +», » + params.geoCoords[1]+ «]» + «
» +
«– проекция: ‘» + params.projection.name + «‘» +
«Результат вычислений:«+
«Номер тайла: [» + tileNumber[0] + «, » + tileNumber[1] + «]»;
>);
Как получить координаты точки или выделенного объекта на Яндекс Карте?
При разработке проекта необходимо было получать координаты несколькими способами:
- перетаскивая метку по карте мышью;
- кликнув левой кнопкой мыши в любом месте карты;
- с помощью поисковой формы на карте.
А при выделении области получить координаты границ:

Д
Демо примеры решений:
Пример кода для получения координат точки:
Инструмент для определения координат - API Яндекс.Карт 2.1 html, body, #map < margin: 0; padding: 0; height: 100%; >#coord_form
Как создать новую карту и добавить объект на Яндекс.Карту бесплатно
Авторизуйтесь в сервисе «Яндекс» и перейдите в конструктор по адресу:
https://tech.yandex.ru/maps/tools/constructor/
Во всплывающем окне нажмите - «Создать карту».

Далее, чтобы создать точку и добавить здание на Яндекс.Картах (разместить адрес на карте), в строке поиска введите адрес местоположения вашей организации - и нажмите кнопку «Найти».

Далее, чтобы добавить местоположение в Яндекс.Картах, используйте встроенные инструменты для подготовки изображения:
- измените масштаб
- в форме описания, добавьте название, адрес и контактную информацию компании
- измените цвет и тип маркера при необходимости
После внесения изменений, нажмите кнопку «Готово», чтобы добавить метку вашей организации на Яндекс.Карту.

Установка нескольких точек на карте
После внесения информации в описание, при необходимости вы можете добавить несколько меток на Яндекс.Карте. Для этого, перейдите во вкладку «Метки», и приступайте к установке точек в необходимых местах, путём нажатия левой клавиши мыши. Напомним, что вы можете добавить точку, или несколько, на карту Яндекс бесплатно.
Примечание: для каждой точки можно установить описание, цвет и тип для их различия.

Когда вы завершите нанесение точек на Яндекс.Карту, нажмите «Сохранить и продолжить».
Настройка размера карты
На данном этапе вам необходимо указать размер интерактивной карты, которая будет отображаться в разделе с контактной информацией.
Вы можете указать любую ширину карты в пикселях или процентах, для того, чтобы изображение выводилось в аккуратном виде, по всей ширине содержимого раздела, следует установить галочку «Растянуть по ширине», а высоту при этом рекомендуем указать в пределах 300-350 пикселях.

Примечание: мы приводим лишь пример подготовки карты для размещения на сайте, вы можете самостоятельно указать все настройки по своему усмотрению, при необходимости.
Размещение карты на странице сайта
После окончания создания и редактирования карты, получите её код для дальнейшего размещения на сайте.
Для этого, нажмите на кнопку «JavaScript».

Скопируйте код из всплывающего окна, и разместите его в форме редактирования страницы вашего сайта. Перейдите в редактирование содержимого раздела, где вы хотите разместить интерактивную карту.
Откройте HTML код страницы, кликнув по соответствующей иконке на панели инструментов.

Во всплывающем окне, необходимо разместить полученный код.

Вставьте код в конец содержимого (место размещения указано для примера - вы можете выбрать любое подходящее место в структуре страницы). Нажмите кнопку «Обновить».
После проделанных действий, нажмите кнопку «Сохранить», и проверьте вывод карты на сайте.
Теперь вы знаете, как ставить точки в Яндекс.Картах.
Получить координаты по адресу
Начните вводить запрос для появления поисковой подсказки.
Координаты:
07.11.2019, обновлено 25.02.2021
Комментарии 16
24 марта 2020 в 11:30
56.346846,43.847955 Какое значение является широтой. а какое долготой
26 мая 2020 в 11:10
Первое - широта, второе - долгота
4 апреля 2020 в 23:20
Супер молодцы давно такое искал.
19 июня 2021 в 23:31
куда-то поисковая стока и карта пропали(((
23 августа 2022 в 16:20
Можно ли получить широту и долготу для списка объектов (файлом)?
1 сентября 2022 в 16:40
Как получить географические координаты, если тебе известен лишь километраж от устья реки?
9 августа 2023 в 15:33
На карте наводишь курсор и тебе выдаст координаты
17 ноября 2022 в 11:50
Почему не работает сервер?
25 ноября 2022 в 11:51
55.63716124224591,37.705979398721205 у меня так слишком большой цифры получился. Это правильно?
25 ноября 2022 в 23:11
М кр энергетик са д о в а я 15. 23 в л а д и м и р
10 января 2023 в 21:10
Самый лучший вариант - это обратиться к профи в области пробива.
ТВОЙ - ИНФОРМАТОР . РУ
Пробьют любую информацию быстро, качественно, по низким ценам.
Удачи!