Страница 1 из 2
"Вытащить" описание графа дорог из шейп-файла
Добавлено: 15 окт 2012, 17:09
NeoFit
Есть шейп-файл, при загрузке которого в ArcMap показывается граф дорог ( в комплекте также имется атрибутивный файл dbf).
Как извлечь из него описание этого графа (в виде набора вершин, ребер связей между ними)?
Спасибо.
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 15 окт 2012, 19:07
trir
Пример в студию, хотя бы структуру
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 08:56
NeoFit
Структура мне не известна. Файл прилагаю
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 13:35
Александр Мурый
NeoFit писал(а):в комплекте также имется атрибутивный файл dbf
Так вы бы приложили и его, что ли. И *.shx тоже не повредит.
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 14:26
NeoFit
Оригинальный dbf слишком велик. Прилагаю фрагмент.
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 14:31
Максим Дубинин
насколько я понимаю, граф (мат.модель) не хранится в ESRI Shape формате, он может рассчитываться на его основе, но в нем не хранится. Чтобы получить граф, вам нужно знать как это делает Arcmap.
Или вы графом называете просто набор геометрических примитивов?
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 14:56
dime1
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 15:20
Максим Дубинин
а это разве не про графики, которые гистограмма, круговые и т.п. диаграммы?
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 15:26
NeoFit
Максим Дубинин писал(а):насколько я понимаю, граф (мат.модель) не хранится в ESRI Shape формате, он может рассчитываться на его основе, но в нем не хранится. Чтобы получить граф, вам нужно знать как это делает Arcmap.
Или вы графом называете просто набор геометрических примитивов?
Если бы я знал, как это делает АркМап, то, думаю, смог бы повторить. Увы. Но я знаю, что если АркМап это делает, то, значит, в шейп-файле имеется вся необходимая информация для построения графа. Ведь dbf ничего полезного в этом смысле не содержит (ну разве что задает ориентацию ребер).
Графом я называю описание набора "примитивов" и отношений между ними, достаточное для того, чтобы оный граф построить. Конечная цель - расчет маршрутов на графе. Промежуточная - затолкать это описание в Oracle.
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 15:43
NeoFit
Ага, спасибо. Но мне кажется, это про построение графиков

.
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 15:46
dime1
сорри, а как тогда на английском будет "граф"?
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 15:48
NeoFit
dime1 писал(а):сорри, а как тогда на английском будет "граф"?
Так и будет: graph
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 15:52
Александр Мурый
Т.е. вам надо на основе shp-файла построить в БД Oracle граф дорог для расчёта маршрутов, так? Мне кажется, или для этого надо знать требования самой СУБД? И для начала загнать этот shp-файл в базу данных.
Я сам совсем не разбираюсь, но ссылки дам
По запросу "oracle+spatial routing" гугл
находит довольно много.
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 16:14
NeoFit
amuriy писал(а): И для начала загнать этот shp-файл в базу данных.
Так это и есть проблема. Для этого мне нужно либо знать его структуру, либо найти инструмент, позволяющий вытащить из него данные в понятном для меня (структурированном) виде. Дальше я уже буду думать - использовать для трассировки Оракл spatial или написать свою процедурку.
Re: "Вытащить" описание графа дорог из шейп-файла
Добавлено: 16 окт 2012, 16:24
Александр Мурый
NeoFit писал(а): Для этого мне нужно либо знать его структуру, либо найти инструмент, позволяющий вытащить из него данные в понятном для меня (структурированном) виде.
А какой вид данных является понятным для вас?
И ещё вопрос: если не важно, с помощью какого инструмента строить граф дорог и проводить маршруты, может быть, вам стоит обратить внимание на открытые/свободные ГИС/БД, например,
pgRouting?