| Anonymous | Login | Signup for a new account | 25-10-25 23:49 UTC | ![]() |
| All Projects | SAS.Планета | Домен, сайт, форум, багтрекер | Доработка карты (ZMP) | Переводы и локализации | Прочее |
| My View | View Issues | Change Log | Roadmap | Search |
| View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||||||
| ID | Project | Category | View Status | Date Submitted | Last Update | ||||||||
| 0003116 | SAS.Планета | [All Projects] Хотелка / Feature request | public | 23-07-2016 20:06 | 25-07-2016 07:48 | ||||||||
| Reporter | DJ VK | ||||||||||||
| Assigned To | |||||||||||||
| Priority | normal | Severity | feature | Reproducibility | have not tried | ||||||||
| Status | confirmed | Resolution | open | ||||||||||
| Platform | Windows | OS | 7 | OS Version | Ultimate | ||||||||
| Product Version | 160707 | ||||||||||||
| Target Version | 27xxxx | Fixed in Version | |||||||||||
| Summary | 0003116: Разворачивание петли полигона | ||||||||||||
| Description | Еще одна полезная функция при создании полигонов. Пользователь внезапно обнаруживает, что модифицированный участок полигона нарисован в обратном порядке и полигон ошибочно пересекает сам себя. Он включает режим разворота петли (новой кнопкой), указывает мышью две точки, ограничивающие неверный участок и указывает какой участок надо развернуть (по часовой стрелке или против от первой точки).Жмем ок. Все точки на указанном участке между двумя выбранными меняют свой порядок. | ||||||||||||
| Tags | метки, полигон | ||||||||||||
| Attached Files | |||||||||||||
Relationships |
|||||||||||
|
|||||||||||
Notes |
|
|
(0017556) DJ VK (manager) 23-07-2016 20:32 edited on: 23-07-2016 20:37 |
Как задать петлю. 1)Например(!) пользователь включает режим разворота и тащит первую точку перед петлей (пересечением) на следующую после петли. При этом не перемещается первая точка, а от нее рисуется вспомогательная линия до мыши. Если мышь была отпущена убеждаемся что она на другой точке. Если между первой (M) и последней (N) точкой участка не меньше 2х точек (N > M+2) проверяем отрезки (M, M+1) и (N, N-1) - если они пересекаются разворачиваем точки M+1 .... N-1. В случае отсутствия пересечения смотрим отрезки (M, M-1) и (N, N + 1) - Если они пересекаются разворачиваем все точки на отрезке (N+1,..,последняя, первая, .., M-1) Esc и отжатие кнопки отключает режим разворота. 2)Можно сделать более сложное управление. Например пользователь указывает не 2 точки, а точку пересечения двух отрезков утапливая мышку(OnMouseDown) и направление перемещая и отпуская (Сравниваем координаты в OnMouseUp) 3)Любые Ваши предложения... ) Для режима разворота также можно поменять курсор на стрелку и петлю рядом с ней. |
Users who viewed this issue |
|
| User List | Anonymous (2921x), zed (4x), vdemidov (6x), Papazol (1x), DJ VK (5x) |
| Total Views | 2937 |
| Last View | 25-10-2025 23:49 |
Issue History |
|||
| Date Modified | Username | Field | Change |
| 23-07-2016 20:06 | DJ VK | New Issue | |
| 23-07-2016 20:10 | DJ VK | Tag Attached: полигон | |
| 23-07-2016 20:32 | DJ VK | Note Added: 0017556 | |
| 23-07-2016 20:37 | DJ VK | Note Edited: 0017556 | View Revisions |
| 24-07-2016 20:17 | vdemidov | Status | new => confirmed |
| 24-07-2016 20:17 | vdemidov | Product Version | .Nightly => 160707 |
| 24-07-2016 20:17 | vdemidov | Target Version | .Nightly => 27xxxx |
| 24-07-2016 20:17 | vdemidov | Tag Attached: метки | |
| 24-07-2016 20:17 | vdemidov | Relationship added | related to 0001735 |
| 24-07-2016 20:18 | vdemidov | Relationship added | related to 0003115 |
| 25-07-2016 07:48 | zed | Summary | Разворачивание петли полигона. => Разворачивание петли полигона |
| 08-08-2025 13:24 | zed | Category | Хотелка => Хотелка / Feature request |
| My View | View Issues | Change Log | Roadmap | Search |
| Copyright © 2007 - 2025 SAS.Planet Team |