#oracle #gis
#Oracle #гис
Вопрос:
Кто-нибудь знает, как сделать линейную привязку в Oracle?
У меня есть таблица с геометриями моего маршрута, например
id routename geometry
-- --------- ----------
1 Mainstreet SDO_GEOMETRY
2 5th Avenue SDO_GEOMETRY
и у меня есть таблица с моими событиями, например
id routename velocity from to
-- --------- -------- ---- ----
1 Mainstreet 75mph 0.0 52.5
2 Mainstreet 45mph 52.5 102.0
3 5th Avenue 75mph 0.0 78.0
Я хочу получать события в виде стандартных SDO_GEOMETRIES, например:
id routename velocity geometry
-- --------- -------- --------
1 Mainstreet 75mph SDO_GEOMETRY
2 Mainstreet 45mph SDO_GEOMETRY
3 5th Avenue 75mph SDO_GEOMETRY
В ArcGIS или Geomedia добиться этого очень просто … должно быть возможно в Oracle, я полагаю?
Комментарии:
1. Должно быть возможно «на лету», как в инструкции select…
2. Я предполагаю, что
SDO_GEOMETRY
значения в конечном результате отличаются отSDO_GEOMETRY
значений из исходной таблицы. Я предполагаю, чтоfrom
иto
значения в таблице событий имеют некоторое отношение кSDO_GEOMETRY
значениям в таблице геометрий маршрутов, но я не уверен, что это за отношение. Например, вашаroute geometries
просто прямая линия?3. Да, результат SDO_GEOMETRY должен быть подразделом исходной SDO_GEOMETRY. Например, исходная SDO_GEOMETRY представляет собой прямую линию, событие от 0 до 52,5, тогда результирующая SDO_GEOMETRY должна быть частью от 0 до 52,5 исходной SDO_GEOMETRY длиной 52,5.