SASGIS - SAS.Планета
View Issue Details
0001926SAS.Планета[All Projects] Хотелкаpublic11-05-2013 08:5521-10-2014 09:33
DTy 
Garl 
normaltweakN/A
resolvedfixed 
121010 
141111141111 
0001926: В операции с выделенной областью добавить удаление меток
хочется выделить область на карте и удалить все выделенные метки - по одной удалять чуть больше тысячи импортированных меток это как-то... нерационально
выделение, метки
related to 0002512resolved zed В операции с выделенной областью добавить экспорт меток 
jpg del_marks.jpg (39,005) 15-10-2014 12:28
https://bugtracker.sasgis.org/file_download.php?file_id=1772&type=bug
jpg
Issue History
11-05-2013 08:55DTyNew Issue
11-05-2013 09:18vdemidovPriorityhigh => normal
11-05-2013 09:18vdemidovStatusnew => confirmed
11-05-2013 09:18vdemidovTarget Version => 26xxxx
11-05-2013 09:18vdemidovSummaryнедостаточно удобная работа с метками => В операции с выделенной областью добавить работу с метками
11-05-2013 19:10GarlTag Attached: выделение
11-05-2013 19:10GarlTag Attached: метки
15-10-2014 12:28GarlFile Added: del_marks.jpg
15-10-2014 12:28GarlAssigned To => Garl
15-10-2014 12:28GarlStatusconfirmed => assigned
15-10-2014 12:29GarlNote Added: 0014694
15-10-2014 12:52vdemidovNote Added: 0014695
15-10-2014 12:54vdemidovNote Added: 0014696
15-10-2014 14:27zedNote Added: 0014697
15-10-2014 14:33vdemidovNote Added: 0014698
16-10-2014 07:50GarlNote Added: 0014699
16-10-2014 08:13vdemidovNote Added: 0014700
16-10-2014 08:16vdemidovNote Added: 0014701
16-10-2014 08:19vdemidovNote Added: 0014702
16-10-2014 09:53GarlNote Added: 0014703
16-10-2014 10:11vdemidovNote Added: 0014704
17-10-2014 07:57GarlNote Added: 0014709
17-10-2014 08:03vdemidovNote Added: 0014710
20-10-2014 10:51vdemidovIssue cloned: 0002512
20-10-2014 10:51vdemidovRelationship addedrelated to 0002512
20-10-2014 10:53vdemidovReproducibilityalways => N/A
20-10-2014 10:53vdemidovOS7 =>
20-10-2014 10:53vdemidovOS VersionUltimate =>
20-10-2014 10:53vdemidovPlatformx64 =>
20-10-2014 10:53vdemidovTarget Version26xxxx => 141111
20-10-2014 10:53vdemidovSummaryВ операции с выделенной областью добавить работу с метками => В операции с выделенной областью добавить удаление меток
21-10-2014 09:33vdemidovStatusassigned => resolved
21-10-2014 09:33vdemidovFixed in Version => 141111
21-10-2014 09:33vdemidovResolutionopen => fixed

Notes
(0014694)
Garl   
15-10-2014 12:29   
вопрос: нормально ли будет передавать в интерфейс значения всех чек-боксов как Byte?
(0014695)
vdemidov   
15-10-2014 12:52   
Выбранные типы меток одним байтом, а признак удаления только видимых отдельным параметром типа boolean.
(0014696)
vdemidov   
15-10-2014 12:54   
И еще. Не "Удалить файлы карты", а "Удалить тайлы карты" ибо они могут и не в файлах хранится. Или вообще оставить только слово "Карты"
(0014697)
zed   
15-10-2014 14:27   
Если уж вторая закладка называется "Метки", то первая должна называться "Тайлы". Карты там не удаляются ж.
(0014698)
vdemidov   
15-10-2014 14:33   
Согласен. "Тайлы" оптимально.
(0014699)
Garl   
16-10-2014 07:50   
вышесказанное принято, добрался чуток дальше в реализации и вот ещё вопросы:
GetMarkSubsetByCategoryInRect - как я понимаю ищет в квадрате.
а если у нас выделение произвольное?
Игнорировать его удалять только при квадратном выделении
или пытаться реализовавать чтото типа GetMarkSubsetByCategoryInPolygon ?
(0014700)
vdemidov   
16-10-2014 08:13   
Получи из полигона MBR, по нем получи список меток, отбери только те, которые пересекаются с полигоном. Окончательно сформированный список удали.
(0014701)
vdemidov   
16-10-2014 08:16   
Глянул в исходники. Для отбора меток попадающих в полигон, придется проектировать геометрии меток в текущую проекцию и проверять пересечение со спроектированным полигоном. Но первичный отбор все равно по Bounds
(0014702)
vdemidov   
16-10-2014 08:19   
Хотя методов проверки пересечения полигона с путем или другим полигоном у нас все равно нет. Но делать его все равно стоит в спроецированном виде в текущей активной проекции.
(0014703)
Garl   
16-10-2014 09:53   
ну удаляться будут только те пути которые поностью попадают в полигон выделения, так оно логичнее и правильнее
(0014704)
vdemidov   
16-10-2014 10:11   
Ну вперед. Ждем пулл реквеста.
(0014709)
Garl   
17-10-2014 07:57   
я вот тоже глянул:
есть ли смысл делать _AddMarksToListByRect, если он циклом перебирает все метки?
может проще сделать свой цикл и тут же их перероецировать и проверять за 1 проход?
(0014710)
vdemidov   
17-10-2014 08:03   
Проще, но нельзя. Базе меток не положено знать ничего о проекциях, тем более о текущей.