View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0003339 | SAS.Планета | Хотелка / Feature request | public | 30-05-2018 17:03 | 15-06-2018 17:22 |
| Reporter | cycler | Assigned To | zed | ||
| Priority | normal | Severity | feature | Reproducibility | N/A |
| Status | resolved | Resolution | fixed | ||
| Product Version | .Nightly | ||||
| Target Version | 181221 | Fixed in Version | 181221 | ||
| Summary | 0003339: Определённым образом форматировать KML-файл при экспорте меток | ||||
| Description | Определённым образом форматировать экспортируемый KML-файл, а именно: - оставлять только 6 знаков после десятичной точки для координат (сейчас 12 знаков, например 56.137743160286. Это даст точность +/- 10см) - отсортировать xml-ноды по алфавиту по значению тега <name> | ||||
| Steps To Reproduce | При выгрузке меток в KML отрезать от значения координат каждой метки лишние знаки, чтобы оставалось только 6 знаков после десятичной точки. Прогонять все ноды <Placemark> через функцию сортировки по значению ноды <Placemark> -> <name> | ||||
| Additional Information | Зачем - работаем группой над большими треками, выгружаем на гитхаб. Если формат файла будет структурированным, то легче сможем отслеживать правки отдельных участников. Сокращение десятичных знаков нужно для уменьшения и так большого размера файла. В случае если сообщество посчитает внедрение озвученной хотелки излишеством, были бы благодарны за указание на способ самостоятельно внести коррективы в код SAS. Спасибо! | ||||
| Tags | kml, VIP, XML, трек, форматирование, экспорт | ||||
|
|
Я бы не сказал, что это излишество, но очевидно, что делать это надо через конфиг. Чтобы тот кому нужно особое поведение, мог поднастроить экспорт под себя. Способ сделать это самостоятельно: - установить Delphi 2007 - Tokyo (какая больше нравится) - клонировать репо с сорцами SAS и установить зависимости - внести правки и сделать pull-реквест Или можете написать отдельную утилиту которая будет проходиться по готовому kml и обрезать знаки после запятой, делать сортировку, и всё ,что вы там ещё можете придумать для оптимизации своих внутренних процессов. Не обязательно же весь функционал интегрировать именно в SAS. |
|
|
Могли бы ткнуть пожалуйста в сорцах, где именно происходит выгрузка метки в Kml? |
|
|
Ну, экспорт в kml живет в u_ExportMarks2KML.pas, как ни странно. Форматирование координат в текст - функция PointToKml Сортировку папок и меток добавлять нужно в AddTree и AddMarks соответственно. |
|
|
Мне хватит мозгов вот тут добавить round и 6 знаков после запятой (\sas_team-sas.planet.src-be7c71bcf893\Src\Vector\u_ExportMarks2KML.pas) function PointToKml(const APoint: TDoublePoint): AnsiString; inline; begin Result := R2AnsiStrPoint(APoint.X) + ',' + R2AnsiStrPoint(APoint.Y) + ',0 '; end; Но не хватит мозгов добавить round с Х знаками после запятой, которое будет браться из конфига с подстановкой дефолтного значения если в конфиге об этом ничего нет, и с проверкой, чтобы это было именно число в разумных пределах (5-12) Мог бы пожалуйста кто-то это вместо меня сделать? |
|
|
Если готовы заплатить за свою хотелку, то я могу ей заняться. Пишите мне на [email protected]. |
|
|
От cycler получено 2000 руб, так что берусь за реализацию. Помимо форматирования координат и сортировки, буду делать опцию для возможности задать абсолютный путь (или url) к иконке. Всеми этими настройками можно будет управлять из гуя. |
|
|
Уже можно тестировать через редактирование SASPlanet.ini:
По-умолчанию, думаю можно включить прямую сортировку и лимит числа знаков после запятой - 6. |
|
|
Сделал гуи. Вызывается из "Управления метками" (иконка с синей шестерёнкой на панели). |
|
|
Работает отлично! Спасибо Большое!!! По мотивам этого тикета всплыла проблема с некорректным подсчетом масштаба текста иконки, оформил её в тикет http://www.sasgis.org/mantis/view.php?id=3343 Дополнительная связь с тикетом http://www.sasgis.org/mantis/view.php?id=3237 (определение масштабов иконок) |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 30-05-2018 17:03 | cycler | New Issue | |
| 30-05-2018 17:05 | cycler | Tag Attached: kml | |
| 30-05-2018 17:05 | cycler | Tag Attached: XML | |
| 30-05-2018 17:05 | cycler | Tag Attached: трек | |
| 30-05-2018 17:05 | cycler | Tag Attached: экспорт | |
| 30-05-2018 17:05 | cycler | Tag Attached: форматирование | |
| 30-05-2018 18:25 | zed | Note Added: 0018304 | |
| 01-06-2018 05:30 | cycler | Note Added: 0018308 | |
| 01-06-2018 05:57 | vdemidov | Note Added: 0018309 | |
| 02-06-2018 14:43 | cycler | Note Added: 0018310 | |
| 02-06-2018 14:46 | cycler | Note Edited: 0018310 | |
| 02-06-2018 15:49 | zed | Note Added: 0018311 | |
| 07-06-2018 19:50 | zed | Assigned To | => zed |
| 07-06-2018 19:50 | zed | Status | new => assigned |
| 07-06-2018 19:50 | zed | Target Version | => 181221 |
| 07-06-2018 19:51 | zed | Tag Attached: VIP | |
| 07-06-2018 19:58 | zed | Note Added: 0018315 | |
| 09-06-2018 21:01 | zed | Note Added: 0018316 | |
| 13-06-2018 11:44 | zed | Note Added: 0018321 | |
| 13-06-2018 11:44 | zed | Status | assigned => feedback |
| 15-06-2018 17:18 | cycler | Note Added: 0018333 | |
| 15-06-2018 17:18 | cycler | Status | feedback => assigned |
| 15-06-2018 17:21 | zed | Relationship added | related to 0003237 |
| 15-06-2018 17:21 | zed | Relationship added | related to 0003343 |
| 15-06-2018 17:22 | zed | Status | assigned => resolved |
| 15-06-2018 17:22 | zed | Fixed in Version | => 181221 |
| 15-06-2018 17:22 | zed | Resolution | open => fixed |
| 08-08-2025 13:24 | zed | Category | Хотелка => Хотелка / Feature request |