Клуб API Карт

Найдено на тему «геометрия»:
Левелы в АПИ 2
killmanda
11 июня 2015, 10:40

Здрасти, 

Подскажите, пожалуйста, в API 2 яндекс есть уровни, которые были в API 1

var polygon = YMaps.Polygon.fromEncodedPoints(

    "hPD6AgItMQGAaWf_QEtMAAAAAAA8S0wAgGln", <--координаты

    "BCCBCCBCCBCC"<--уровни

);

Спасибо.

6 комментариев
API 2.1,API 2.0,геометрия,полигон
программное смещение объекта
Удалённый пользователь
15 марта 2015, 00:21

Здравствуйте. Отображаю на Яндекс карте маршруты по заранее известным геокоординатам. Эти маршруты (полилинии) мне нужно сместить (каждый маршрут на определенную величину в пикселах). Подскажите, каким образом это можно осуществить ?

Заранее спасибо.

 

2 комментария
API 2.1,координаты,геометрия,ломаная
Как получить данные о точках после загрузки YmapsML файла?
Удалённый пользователь
7 октября 2014, 14:44

После подгрузки YmapsML файла я могу его вывести на карту так:

ymaps.geoXml.load( url ).then(function (res) {
    //Добавляем коллекцию геообъектов на карту
this.map.geoObjects.add(res.geoObjects);
}.bind(this));

 Все выводится. Как мне получить данные о точках? Адрес, координаты, описание и т.п.?

Пробовал выводить так: 

console.log(res.geoObjects);

Выводит всякую ерунду, в которой черт ногу сломит:

a {geometry: null, properties: o, state: o, options: Object, events: s…}_$w: s_Hb: Object_Yb: null_jK: a_oK: Array[2]_qK: Array[2]_sK: Object_tK: Object__proto__: s_Iw: s_Hb: Object_Py: o_Vf: o_Wf: m_fK: i_kb: a_nx: s_rf: Object_ve: null__proto__: Object_ax: i_Ef: a_Hb: Object_Ow: t_Tb: t_vI: undefined_xI: i__proto__: ievents: sgeometry: nulloptions: Objectproperties: ostate: o__proto__: a

Как мне получить какой-нибудь массив или коллекцию с параметрами точек?

Например:

{
  address: "Москва, ул. Ленинградская"
  coordinates: [12.345, 67.890]
  description: "Улица" 
}

Как этого добиться?

 

 

3 комментария
метка,API 2.1,геометрия,YMapsML
Яндекс.Карты пересечение полигонов
Удалённый пользователь
25 февраля 2014, 17:41

Добрый день!
Есть следующий код jsbin.com/feqal/1/edit
Вкратце суть: есть 2 полигона, сами по себе они черного цвета, если же они пересекаются, то они должны становится красного цвета(или хотя бы один из них).
Пользуюсь ymaps.geoQuery searchIntersect вопрос в чем: если ребра полигона лежат друг на друге(т.е. одинаковые вершины) АПИ считает что полигоны пересекаются, можно ли как-то такой случай считать не пересечением?

Спасибо большое!

2 комментария
geoQuery,API 2.0,геометрия,полигон
Невидимый полигон на карте
AntiMandron
17 июля 2013, 12:04

Здравствуйте!

На карте есть несколько районов. При перемещении балуна хочу определять принадлежность к этому району. Принадлежность можно определять, только если район добавлен на карту. Как сделать чтобы все это работало так же хорошо, но только на карте районы были невидимые?

Первое, что приходит, заливать невидимой заливкой, но все равно районы остаются одноцветными... Как быть?

 

ymaps.ready(init);
function init() {
    coords = [56.477670000000, 84.952930000000],
    myMap = new ymaps.Map('map', {
        center: coords,
        zoom: 12
    }),
    myBalloon = new ymaps.Placemark(coords, {
        balloonContentHeader: "объект"
    }, {
        draggable: "true",
        preset: "twirl#greenStretchyIcon"
    });
    myPolygon = new ymaps.Polygon([
        [
            [56.50052, 84.9856],
            [56.5021, 84.983],
            [56.50061, 84.97991],
            [56.49763, 84.98059],
            [56.49487, 84.98051],
            [56.49444, 84.99321],
            [56.49249, 85.00302],
            [56.49641, 85.00862],
            [56.49958, 85.00121],
            [56.50074, 84.99956],
            [56.50251, 84.99877],
            [56.50372, 84.99411],
            [56.50052, 84.9856]
        ]
    ], {
        fillColor: 'FFFFFF00',
        strokeColor: '#ff0000',
        strokeWidth: 1
    });
    myMap.geoObjects.add(myPolygon);
    myBalloon.events.add(['dragend'], function () {
        var coords = myBalloon.geometry.getCoordinates();
        alert(myPolygon.geometry.contains(coords) ? 'Ранил!' : 'Мимо!');
        $('#coordinates').val(coords);
    });
    myMap.geoObjects.add(myBalloon);
    Еслирайоннакартунедобавить, апростосвязать, товозникаютошибки, т.е.
    ymaps.ready(init);
    function init() {
        coords = [56.477670000000, 84.952930000000],
        myMap = new ymaps.Map('map', {
            center: coords,
            zoom: 12
        }),
        myBalloon = new ymaps.Placemark(coords, {
            balloonContentHeader: "объект"
        }, {
            draggable: "true",
            preset: "twirl#greenStretchyIcon"
        });
        myPolygon = new ymaps.Polygon([
            [
                [56.50052, 84.9856],
                [56.5021, 84.983],
                [56.50061, 84.97991],
                [56.49763, 84.98059],
                [56.49487, 84.98051],
                [56.49444, 84.99321],
                [56.49249, 85.00302],
                [56.49641, 85.00862],
                [56.49958, 85.00121],
                [56.50074, 84.99956],
                [56.50251, 84.99877],
                [56.50372, 84.99411],
                [56.50052, 84.9856]
            ]
        ], {
            fillColor: 'FFFFFF00',
            strokeColor: '#ff0000',
            strokeWidth: 1
        });
        //myMap.geoObjects.add(myPolygon);
        myPolygon.options.setParent(myMap.options);
        // вот эта строка не нравится скрипту
        myPolygon.setMap(myMap);
        myBalloon.events.add(['dragend'], function () {
            var coords = myBalloon.geometry.getCoordinates();
            alert(myPolygon.geometry.contains(coords) ? 'Ранил!' : 'Мимо!');
            $('#coordinates').val(coords);
        });
        myMap.geoObjects.add(myBalloon);

  

2 комментария
метка,API 2.0,геометрия,полигон
Как создать полигон с внутренними границами?
Дмитрий Юрьевич
15 июля 2013, 12:31

Добрый день!

Не нашел нигде в документации как создавать полигоны с дырками, т.е. мне нужна у полигона еще и внутренняя граница. Сервис "Мои карты" так умеет?

И можно ли на полигоны влиять средствами CSS?

 

Буду благодарен за ответ!

Спасибо!

4 комментария
API 2.0,геометрия,полигон
расчет координат перпендикуляра
isocorp
25 февраля 2013, 14:34

 Дано: две точки A и B.

var prev = [55.575358,37.600963];
var next = [55.596356,37.508095];

 

Надо: найти координаты точки C такой, что треугольник ABC - прямоугольный c прямым углом B, а AB=BC.

 

В обычной системе координат это сделать просто:

Берем вектор между A и B. "Поворачиваем его" на 90 градусов, меняя у одной из кооржинат знак.

Прибавляем к этому вектору координаты B и результат. В данной системе угол получается "непрямой".

Каким же всетаки образом найти точку C?

3 комментария
координаты,API 2.0,геометрия