Имя: Пароль:
1C
 
Как получить координаты полигона на яндекс карте?
,
0 KIraA
 
10.09.19
09:24
Добрый... Подскажите как допилить функцию получение координат полигона?

function GetGEO(){
polygon.editor.stopEditing();
printGeometry(polygon.geometry.getCoordinates());
}
// Выводит массив координат геообъекта в <div id="geometry">
function printGeometry (coords) {
$('#geometry').html('Координаты: ' + stringify(coords));


function stringify (coords) {
    var res = '';
    if ($.isArray(coords)) {
        res = '[ ';
        for (var i = 0, l = coords.length; i < l; i++) {
            if (i > 0) {
                res += ', ';
            }
            res += stringify(coords[i]);
        }
        res += ' ]';
    } else if (typeof coords == 'number') {
        res = coords.toPrecision(6);
    } else if (coords.toString) {
        res = coords.toString();
    }


    return res;
}
}           
    </script>
</head>


<body>
<div id="geometry"/></div>


Из 1С вызываем
Элементы.Карта.Документ.getElementById("WebClientOperation").value = "GetGEO()";
Элементы.Карта.Документ.getElementById("WebClient").click();

ТекКоординаты = Элементы.Карта.Документ.getElementById("geometry").innerText;
Сообщить(""+ТекКоординаты);

Получаем: Координаты: [ [ ] ];

Что делать?
1 KIraA
 
10.09.19
09:33
Формы управляемые :-)
2 Кир Пластелинин
 
10.09.19
10:01
в макете.

function GetCoords(){

    var coordsArray;

                
        coordsArray = myPolygon.geometry.getCoordinates();
        
        if (coordsArray.length == 1) {
        
            document.getElementById('PolygonCoordinates_outer').value = coordsArray;
            document.getElementById('PolygonCoordinates_inner').value = '';
         }
        else {
        
            document.getElementById('PolygonCoordinates_outer').value = coordsArray[0];
            document.getElementById('PolygonCoordinates_inner').value = coordsArray[1];
        
         };
        

}

в 1с (но оф. уж простите)

ЭлементыФормы.ПолеHTMLДокумента.document.getElementById("WebClientOperation").value = "GetCoords();";
ЭлементыФормы.ПолеHTMLДокумента.document.getElementById("WebClient").click();
    
GPS_КоординатыПолигона_Строка_outer = ЭлементыФормы.ПолеHTMLДокумента.document.getElementById("PolygonCoordinates_outer").value;
GPS_КоординатыПолигона_Строка_inner = ЭлементыФормы.ПолеHTMLДокумента.document.getElementById("PolygonCoordinates_inner").value;

далее преобразование
3 KIraA
 
10.09.19
10:47
(2) Подпилила под себя, все заработало....Спасибо Вам!!!