Доброго дня розробникам.
Є в мене до вас прохання, щодо функції
@Map.Object[N].Centroid - "Повертає координати центроїда полігона".
В лісовому господарстві зараз прийняли необхідність оприлюднювати "координати центра лісосіки". Вказана функція щонайліпше підходить для вирішення задачі скриптом, однак варто зазначити: координати, скоріш за все, мають бути географічними (градуси мінути секунди).
Скриптове вирішення може бути таким:
- визначення координат центроїда полігона в карті з пласкою системою координат;
- створення точкового об'єкта з координатами в центроїді полігона;
- зміна системи координат карти на "Широта/довгота";
- отримання географічних координат точкового об'єкта в десяткових градусах з точністю до 13-ти знаків функцією
@Map.Object[N].Point[N];
- перерахунок географічних координат з десяткових градусів у градуси мінути секунди;
- відміна зміни системи координат карти
@Map.Undo.Undo- видалення точкового об'єкта з координатами в центроїді полігона.
Так от:
якби функція @Map.Object[N].Centroid повертала б координати центроїда полігону не з точністю 3 знаки, а з максимальною точністю... Тоді не треба було б мати справу з тимчасовими об'єктами в карті.
По-менше би, в ході виконання скрипта, тимчасових змін в карті
Інакше, раптом скрипт не закінчить роботу з помилкою - матимем в карті непотріб.
Як ви порадите, може краще використати
HTTP сервер пересчета координат? Але тут свої нюанси: блокування порта антивірусом, порт використовується іншим застосуванням.... Тоді додавати функцію dll, з усіма перевірками: чи порт відкритий, чи порт не зайнятий - яка поверне в скрипт масив координат
Скільки часу треба юзеру мого рівня, щоб в Delphi її написати? Може є сенс додати скриптову функцію перерахунку координат точки?