SASGIS - SAS.Планета
View Issue Details
0002669SAS.ПланетаРефакторингpublic30-03-2015 08:1016-09-2015 20:13
vdemidov 
vdemidov 
normalminorN/A
resolvedfixed 
141212 
151010151010 
0002669: Переделать ICoordConverter
В интерфейсе ICoordConverter слишком много методов - нужно их перенести в другие интерфейсы и в частности максимально избавиться от использования параметра Zoom. В таком виде как он есть сейчас зум имеет очень ограниченное применение - по хорошему, он должен использоваться только в пределах одного конкретного ICoordConverter.

Нужно ввести интерфейс IProjectionType, который будет задавать параметры проекции: датум + метод проектирования (меркатор на сфере, меркатор на эллипсоиде, широта-долгота). И предоставлять методы для преобразования географических координат и относительных (методы LonLat*2Relative*, Relative*2LonLat*, CheckLonLat*, CheckRelative*, ValidateLonLat*, ValidateRelative*)
Почти все остальные методы из ICoordConverter нужно будет перенести в IProjectionInfo попутно убрав из них указание зума, так как зум уже есть в IProjectionInfo.
После полного перехода на использование методов IProjectionInfo из этого интерфейса можно будет убрать GeoConverter: ICoordConverter и переименовать сам интерфейс в IProjection
В конечном итоге ICoordConverter должен превратиться в контейнер хранящий упорядоченный набор проекций с названием IProjectionSet
Все это упростит использующий код и позволит добавить некоторые оптимизации. А также будет проще добавить таки поддержку нестандартных размеров тайлов.
No tags attached.
parent of 0002799resolved vdemidov Создать IProjectionType и его реализации 
parent of 0002800resolved vdemidov Расширить IProjectionInfo 
parent of 0002801resolved vdemidov Переименовать IProjectionInfo в IProjection 
parent of 0002802resolved vdemidov Создать IProjectionSet 
parent of 0002803resolved vdemidov Заменить использование ICoordConverter на IProjectionInfo там где это возможно 
parent of 0002804resolved vdemidov Заменить использование ICoordConverter на IProjectionSet 
parent of 0002805resolved vdemidov Убрать свойстов GeoConverter из IProjectionInfo 
child of 0000367confirmed  Поддержка размеров тайлов отличных от 256x256 
Issue History
30-03-2015 08:10vdemidovNew Issue
30-03-2015 08:11vdemidovStatusnew => confirmed
03-04-2015 09:57vdemidovRelationship addedchild of 0000367
31-08-2015 19:43vdemidovIssue cloned: 0002799
31-08-2015 19:43vdemidovRelationship addedparent of 0002799
31-08-2015 19:44vdemidovIssue cloned: 0002800
31-08-2015 19:44vdemidovRelationship addedparent of 0002800
31-08-2015 19:45vdemidovTarget Version151010 => 150915
31-08-2015 19:49vdemidovIssue cloned: 0002801
31-08-2015 19:49vdemidovRelationship addedparent of 0002801
31-08-2015 19:55vdemidovIssue cloned: 0002802
31-08-2015 19:55vdemidovRelationship addedparent of 0002802
01-09-2015 05:47vdemidovDescription Updatedbug_revision_view_page.php?rev_id=6690#r6690
01-09-2015 05:56vdemidovIssue cloned: 0002803
01-09-2015 05:56vdemidovRelationship addedparent of 0002803
01-09-2015 07:55vdemidovIssue cloned: 0002804
01-09-2015 07:55vdemidovRelationship addedparent of 0002804
01-09-2015 07:57vdemidovReproducibilityhave not tried => N/A
01-09-2015 08:02vdemidovIssue cloned: 0002805
01-09-2015 08:02vdemidovRelationship addedparent of 0002805
16-09-2015 14:52vdemidovTarget Version150915 => 151010
16-09-2015 20:13vdemidovStatusconfirmed => resolved
16-09-2015 20:13vdemidovFixed in Version => 151010
16-09-2015 20:13vdemidovResolutionopen => fixed
16-09-2015 20:13vdemidovAssigned To => vdemidov

There are no notes attached to this issue.