SASGIS - SAS.Планета |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0000670 | SAS.Планета | [All Projects] Хотелка | public | 22-04-2011 12:24 | 14-06-2024 17:58 |
|
Reporter | gpsMax | |
Assigned To | | |
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | confirmed | Resolution | open | |
Platform | | OS | | OS Version | |
Product Version | 110418 | |
Target Version | 29xxxx | Fixed in Version | | |
|
Summary | 0000670: Функция смены направления полигонов |
Description | Полигон можно обводить как по часовой стрелке, так и против.
Хотелось бы иметь возможность изменять направление полигонов при редактировании. Кнопку этой функции логичее всего добавить в мини-панельку редактирования.
Тупо меняются местами точки: вторая меняется с последней, третья с предпоследней, и т.д. Первая остаётся на месте, средняя, если есть, остаётся на месте. |
Steps To Reproduce | |
Additional Information | |
Tags | полигон, полигоны, пути, треки |
Relationships | related to | 0001735 | resolved | zed | Смена направления трека |
|
Attached Files | |
|
Issue History |
Date Modified | Username | Field | Change |
22-04-2011 12:24 | gpsMax | New Issue | |
22-04-2011 12:25 | gpsMax | Description Updated | bug_revision_view_page.php?rev_id=979#r979 |
22-04-2011 12:26 | gpsMax | Tag Attached: полигоны | |
22-04-2011 12:26 | gpsMax | Tag Attached: пути | |
22-04-2011 12:27 | gpsMax | Tag Attached: полигон | |
22-04-2011 12:27 | gpsMax | Tag Attached: треки | |
22-04-2011 12:27 | gpsMax | Status | new => acknowledged |
31-05-2011 14:36 | vdemidov | Note Added: 0002795 | |
31-05-2011 14:36 | vdemidov | Status | acknowledged => confirmed |
31-05-2011 14:36 | vdemidov | Target Version | => 29xxxx |
31-05-2011 16:01 | gpsMax | Note Added: 0002796 | |
31-05-2011 16:01 | gpsMax | Note Edited: 0002796 | bug_revision_view_page.php?bugnote_id=2796#r1367 |
31-05-2011 18:31 | vdemidov | Note Added: 0002797 | |
29-01-2013 12:28 | vasketsov | Note Added: 0010465 | |
29-01-2013 13:11 | vdemidov | Summary | Функция смены направления полигонов и путей => Функция смены направления полигонов |
29-01-2013 13:11 | vdemidov | Description Updated | bug_revision_view_page.php?rev_id=5117#r5117 |
29-01-2013 13:17 | vdemidov | Note Added: 0010467 | |
29-01-2013 14:54 | vasketsov | Note Added: 0010468 | |
31-01-2013 06:22 | vdemidov | Note Added: 0010476 | |
14-06-2024 17:58 | zed | Relationship added | related to 0001735 |
Notes |
|
|
Да. Нужно будет добавить всяких операций над метками. Плюс желательно этот список операций сделать расширяемым с помощью плагинов. |
|
|
(0002796)
|
gpsMax
|
31-05-2011 16:01
|
|
Можно и операций. Чтобы не забыть, потом сделать хотелки и плагины:
- Прореживание (большая тема, много способов, куча настроек)
- Сглаживание (большая тема, коррелирует с прореживанием)
- Превращение полигона в окружность (глянуть в исходниках в JOSM)
- Удаление клубков в местах стоянок
- Удаление пешеходных кусков по скорости
- Удаление непешеходных кусков
Это всё плагинами, конечно. А вот менять направление можно и в самой программе, поскольку там несложно и без вариантов.
|
|
|
|
Ну для примера реализации плагина как раз реверс линии и подойдет. |
|
|
|
>Тупо меняются местами точки
Или ещё более тупо - признак направления для массива координат. Меняется один байт. Ибо направление обхода (покуда на него не завязано ничего, типа направление дырок обратно направлению внешних кусков в шейпах) ничего общего с самими данными (координатами) не имеет. |
|
|
|
>Или ещё более тупо - признак направления для массива координат.
Плохая идея. Этот признак придется учитывать везде. В том числе при экспорте. Поменять порядок точек проще. |
|
|
|
>Плохая идея
Не хуже, чем ворочать лишний раз туда-сюда трек из кучи кусков недельной поездки с gps-логгера.
Впрочем я ещё для себя не решил как лучше сделать.
>Этот признак придется учитывать везде
Хм. Вообще-то как сейчас сделано - только при редактировании и надо учитывать, при экспорте - фигня. Если даже BoundRect по треку или полигону определяется заново - один фиг всё проходится, ничего не просядет ни на йоту. При показе на карте - пофигу (даже если показывать стрелочку - она замечательно инвертируется простым BOOL-ом, по логике всё то же самое, что просто при изменении настройки показа направления трека). При чтении и сохранении в БД отдельный признак забацать труда не представляет. На порядок проще, чем отломанный BoundRect.
А вот при экспорте покуда это не шейпы, на полигоны вообще пофигу. А треки экспортируются поточечно. И один фиг for или while там запускать, вот и весь учёт.
>Поменять порядок точек проще
Если имеется ввиду собственно процедура перемены порядка - то нет, байт инвертируется проще.
Если имеется ввиду вцелом реализация - то по сравнению с необходимостью переписывания внутренностей координат векторов (BoundRect отломаны, дырки не сделаны, автоопределялка полигон/полилиния очевидно не работает для многокусковых полигонов,...) это такая мелочь, что право слово заикаться об этом в контексте "проще" несерьёзно. |
|
|
|
Вот именно из-за того что ты хочешь съэкономить десяток милисекунд на очень редкую операцию редактирования, а взамен в куче мест учитывать дополнительный признак, я и забрал у тебя права на запись в репозиторий. |
|