Страница 1 из 1

Конвертация dxf в shape

Добавлено: 10 июл 2009, 18:49
n0ip
Здравствуйте, посетители форума!
У меня возникла следующая проблема: нужно отконвертировать карту из формата dxf в esri shapefile или из dxf сразу в postgis. При чем, очень желательно в полигонах =) Т.к. я через openlayers отлавливаю клик и подсвечиваю объект, по которому был щелчок. Соответственно, если объект состоит из линий - приходится делать несколько кликов, чтобы выбрать весь объект целиком. А в случае с полигонами - проблем нет.
Тулзы, которые видел в интернете - достаточно криво работают и результат плачевный.
Подскажите, пожалуйста, как это можно сделать с наименьшими потерями.

Re: Конвертация dxf в shape

Добавлено: 11 июл 2009, 10:54
Mavka
В QGis есть плагин для преобразования dxf2shp. Может и полигонами

Re: Конвертация dxf в shape

Добавлено: 13 июл 2009, 07:19
JEY
Самый простой вариант - это открыть *.dxf в AutoCAD Map 3D, затем экспортировать нужный слой в формат *.shp, и при этом не забыть включить опцию "Include object data..."

Re: Конвертация dxf в shape

Добавлено: 14 июл 2009, 11:58
n0ip
Установил AutoCad Map 3D, но в Файл->Экспорт формата shp нет. Не подскажешь куда там мышью щелкать? )))

Re: Конвертация dxf в shape

Добавлено: 14 июл 2009, 12:35
n0ip
FAIL.
Разобрался... Проблема в том, чтобы как-то автоматизировать преобразование линий в полигоны... =(

Re: Конвертация dxf в shape

Добавлено: 14 июл 2009, 15:40
JEY
Ничего сложного! Если в чертеже AutoCAD Map 3D имеется слой с полилиниями, то необходимо выделить все объекты а затем в палитре свойств найти свойство "Closed" и выбрать "Yes".

При экспорте в *.shp, на вкладке "Polygons" не забыть поставить галочку на опции "Convert closed polylines to polygons".

Re: Конвертация dxf в shape

Добавлено: 21 июл 2009, 10:48
n0ip
В общем, сделали небольшую утилитку на основе dxflib и shapelib, после конвертации просмотрщики отлично отображают *.shp *.shx, но после вызова shp2postgis в базе данных получаю килограмм пустых multilinestring'ов =( Где может быть фейл? .dbf файл генерю с параметрами id объекта, слой, тип линии.

Re: Конвертация dxf в shape

Добавлено: 21 июл 2009, 13:37
JEY
Дело в том, что в AutoCAD нет такого понятия как "полигон". Замыкание полилинии в первой и последней точке не делает полилинию полигоном, даже если в свойствах объекта "Closed" выбрать "Yes".

Естественно, по всем правилам преобразования форматов, Вы получили множество объектов "multilinestring"...