Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2010-07-10

Один WKID, много SRID

Временами просто оторопь берет, от ощущения, насколько на соплях все держится. Все, в данном случае, это АркГИС-ный инструментарий.
Вот, последнее откровение :)

Веб-карта умеет передать на сервер сведения о своей координатной системе, в формате WKID (Well Known ID, я, кстати, так и не нашел общего реестра этих «хорошо известных ID). Сервер умеет преобразовать координаты в другую коорд.систему используя SRID (Spatial Reference ID, это просто ID в служебной таблице на сервере). Задача сводится к тому, чтобы по известному WKID найти в таблице нужный SRID, после чего вызвать функцию преобразования координат. Изи.
Думаете вы. Я тоже так думал, пока не убедился в том, что для одного WKID в табличке есть аж десяток SRID-ов. И только один из них нужный, обладающий необходимым мне датумом. Вопрос, как его найти? Ответ — никак, только перебором. Ибо в веб-карте нет информации про датум. Такая информация есть в реестре проекций, оттуда можно взять описание датума. Хорошо, попытка не пытка.
Только без результата, ибо дурная таблица со SRID-ами отличает один срид от другого только дополнительными параметрами, которые более нигде не участвуют, а описание датумов у них одинаковое! В итоге, грамотно выбрать один из 10 как-бэ-подходящих сридов невозможно. Выбираем наощупь — сработает/не сработает. Ибо трансформация координат работает только «для одинаковых датумов», которые, плять, записаны как одинаковые, но не работают.

Ну вот как жить? Так и напишу заказчику, мол «проведите ручную чистку системных таблиц, с непредсказуемым постэффектом», да?

Вот еще пример неадекватности. Поведение антиалиасинга зависит не от галочки «включить антиалиасинг» а от формата графического файла.

Комментариев нет:

Отправить комментарий

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) Java (22) humor (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Manager (15) web-browser (15) Никонов (15) Klaipeda (14) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) serialization (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)