Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Столкнулся со следующей проблемой в ходе работ с DB2 spatial extender. В базе данных DB2 (с установленным и настроенным spatial extener) создал таблицу с полями id integer 64, name varchar 256, coordinate "DB2GSE"."ST_GEOMETRY". Далее начал заполнять таблицу. Записываю полигоны субъектов РФ. Координаты полигонов получаю с веб-сервиса, в котором они хранятся в Spatial Reference: 102100 (3857). Insertы имеют такой вид: insert into "scm_new1"."geom" values (1, 'Москва', db2gse.ST_Feometry('polygon ((4327711.2089999989 7245397.7449999973, ....................................... ,4327711.2089999989 7245397.7449999973))', 0)) Использую spatial reference system, у которой srs_id = 0. Описание предустановленных spatial reference system в базе приложено картинкой. Запросы выполнялись корректно (проверял отрисовку полигонов на карте), пока я не дошел до Чукотского автономного округа, у которого часть полигонов находится на другом полушарии. Координаты таких полигонов имеют отрицательное значения X координаты: (-20037507.0672 9069882.5203, ................, -20037507.0672 9069882.5203) Соответственно координаты данных полигонов мне записать в базу не удалось. Ошибка: Routine "GSEGEOMFROMTEXT" (specific name "GSEGEOMTEXT1") has returned an error SQLSTATE with diagnostic text "GSE3416N Coordinate out of bounds.".. SQLCODE=-443, SQLSTATE=38SSG, DRIVER=3.63.131 SQL Code: -443, SQL State: 38SSG Пробовал использовать все предустановленные spatial reference system. Подскажите, как быть в данной ситуации? Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2014, 11:37 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Stas_Kom, Поменять srs_id нельзя ? Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2014, 12:58 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
knudsen, менял srs_id на все что есть в базе, ни с одним не проходит insert. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2014, 13:41 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Stas_Kom, А координаты в каких рамках ? только сейчас заметил... мне всегда казалось что координаты в градусах (в крайнем случае в радианах) ... от -180 до 180 и от -90 до 90... кажысь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2014, 14:11 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
knudsenStas_Kom, А координаты в каких рамках ? только сейчас заметил... мне всегда казалось что координаты в градусах (в крайнем случае в радианах) ... от -180 до 180 и от -90 до 90... кажысь... В данном случае, я получаю координаты с сервера в метрах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2014, 14:27 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Stas_Kom, Удалённость по прямой от Марса? Установлена ли в базе Spatial Reference: 102100 (3857) ? Может быть в этом дело? В приложенном списке нет такой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2014, 14:33 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
knudsenStas_Kom, Установлена ли в базе Spatial Reference: 102100 (3857) ? Может быть в этом дело? В приложенном списке нет такой. Добавил в таблицу DB2GSE.GSE_SPATIAL_REFERENCE_SYSTEMS такую строку: INSERT INTO "DB2GSE"."GSE_SPATIAL_REFERENCE_SYSTEMS" (SRS_NAME,SRS_ID,X_OFFSET,X_SCALE,Y_OFFSET,Z_OFFSET,Z_SCALE,M_OFFSET,M_SCALE,COORDSYS_NAME,DESCRIPTION,DEFINITION) VALUES ('WGS84_SRS_1005',1005,-180.0,5965232.0,-90.0,0.0,1.0,0.0,1.0,'WGS_1984_WEB_MERCATOR_AUXILIARY_SPHERE',null,'PROJCS["WGS_1984_Web_Mercator_Auxiliary_Sphere",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",0.0],PARAMETER["Auxiliary_Sphere_Type",0.0],UNIT["Meter",1.0]]'); Соответственно поля COORDSYS_NAME и DEFINITION брал из таблицы DB2GSE.GSE_COORDINATE_SYSTEMS. Но и с использование этой spatial reference system insert не сработал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2014, 15:49 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Stas_Kom, Референсная система WGS84 (российский аналог П3-90) - система координат в которой ось X по большой оси эллипсоида от -6 378 136 до 6 378 136 метров, коэффициент сжатия 1/298 примерно, т.е. вторая ось чуть меньше... и точка (-20037507.0672 9069882.5203 ) где-то ближе к Луне, чем к Чукотке. Может быть я что-то путаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2014, 15:51 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
knudsenStas_Kom, Референсная система WGS84 (российский аналог П3-90) - система координат в которой ось X по большой оси эллипсоида от -6 378 136 до 6 378 136 метров, коэффициент сжатия 1/298 примерно, т.е. вторая ось чуть меньше... и точка (-20037507.0672 9069882.5203 ) где-то ближе к Луне, чем к Чукотке. Может быть я что-то путаю? Я думаю Вы правы, я с системами координат до этого не работал. Просто не пойму тогда, почему insert с положительными координатами по X и Y со значениями, например, 20 078 136, отрабатывали корректно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2014, 10:06 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Stas_Kom, А какая версия DB2 установлена? Есть ли DB2 Geodetic Data Management Feature ? (не путать с DB2 Spatial Extender) http://www-01.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm.db2.luw.wn.doc/doc/i0060143.html?lang=en Покопайте в этом направлении ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2014, 10:50 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Есть сомнение, что насилие над таблицей DB2GSE.GSE_SPATIAL_REFERENCE_SYSTEMS поможет... есть специальная функция DB2GSE.ST_create_srs http://www-01.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm.db2.luw.spatial.topics.doc/doc/rsbp4007.html?lang=en ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2014, 11:39 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Проблема решена, спасибо за полезные советы! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2014, 16:42 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Stas_Kom, вот Вы - красавец! А поделиться? =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2014, 22:37 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
HunterikStas_Kom, вот Вы - красавец! А поделиться? =) Решил Проблему не на уровне db2, а на уровне веб сервера, откуда получал координаты. Удалось вытащить оттуда координаты в сиcтеме wgs 84 (EPSG:4326) в градусах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2014, 09:51 |
|
||
|
DB2 spatial extender
|
|||
|---|---|---|---|
|
#18+
Stas_Kom, А с какого сервера (тоже интересно)? Грешным делом подумал, может декодер использовать типа Код: sql 1. ... как бы продолжить отсчёт положительного значения удаления по экватору за линию смены дат ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2014, 11:15 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=38700387&tid=1601029]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
86ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 186ms |

| 0 / 0 |
