libopencad - разработка новой библиотеки поддержки DWG (GSoC'16)
- Дмитрий Барышников
- Гуру
- Сообщения: 2572
- Зарегистрирован: 17 ноя 2009, 19:17
- Репутация: 261
- Откуда: Москва
libopencad - разработка новой библиотеки поддержки DWG (GSoC'16)
Итак. Мы попали на GSoC с идеей разработки драйвера DWG в GDAL. Я буду менторить.
Чудес не обещаю. Пока планы скромные - реализация на чтение R13 - R15 базовых геометрий, послойность. Возможно успеем большее.
Уже читаем заголовок и основные секции.
Если есть идеи, что бы следовало сделать "по правильному", какие-то кейсы с которыми вы сталкивались на реальных данных и т.п. - делитесь. То что сейчас заложим, потом поменять будет сложно.
Чудес не обещаю. Пока планы скромные - реализация на чтение R13 - R15 базовых геометрий, послойность. Возможно успеем большее.
Уже читаем заголовок и основные секции.
Если есть идеи, что бы следовало сделать "по правильному", какие-то кейсы с которыми вы сталкивались на реальных данных и т.п. - делитесь. То что сейчас заложим, потом поменять будет сложно.
-
- Гуру
- Сообщения: 4205
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: 433
- Откуда: Париж
Re: Google summer of code 2016
Я сталкивался с Автокадо-поделками часто, и основная их проблема в том, что 98% чертежей создано апологетами CorelDraw: все нарисовано в 0 и с не соблюдением масштаба или искажением начальных величин (метры-мм или метры-дюймы). Так что, на мой взгляд, параметры, позволяющие сдвинуть начало координат и изменить масштаб, переназначить единицу измерения проекта - необходимы в опциях драйвера.Дмитрий Барышников писал(а):Итак. Мы попали на GSoC с идеей разработки драйвера DWG в GDAL. Я буду менторить.
Чудес не обещаю. Пока планы скромные - реализация на чтение R13 - R15 базовых геометрий, послойность. Возможно успеем большее.
Уже читаем заголовок и основные секции.
Если есть идеи, что бы следовало сделать "по правильному", какие-то кейсы с которыми вы сталкивались на реальных данных и т.п. - делитесь. То что сейчас заложим, потом поменять будет сложно.
- Дмитрий Барышников
- Гуру
- Сообщения: 2572
- Зарегистрирован: 17 ноя 2009, 19:17
- Репутация: 261
- Откуда: Москва
Re: Google summer of code 2016
Я думаю это должно решаться стандартными средствами GDAL, через пользовательскую СК с установленными началом координат и масштабом. А с запихиванием всего в слой "0", тут ничего не поделаешь.
Вроде в ArcGIS как-то текстовые подписи через пересечение с геометриями преобразовывали в атрибуты. Или я ошибаюсь?
Вроде в ArcGIS как-то текстовые подписи через пересечение с геометриями преобразовывали в атрибуты. Или я ошибаюсь?
-
- Гуру
- Сообщения: 4205
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: 433
- Откуда: Париж
Re: Google summer of code 2016
1. начало координат я видел, а где там выставляется масштаб?Дмитрий Барышников писал(а):Я думаю это должно решаться стандартными средствами GDAL, через пользовательскую СК с установленными началом координат и масштабом. А с запихиванием всего в слой "0", тут ничего не поделаешь.
Вроде в ArcGIS как-то текстовые подписи через пересечение с геометриями преобразовывали в атрибуты. Или я ошибаюсь?
2. Я не понял вопроса про ArcGIS - он в продолжение какого то разговора и имееет отношение к ArcGIS или к DWG.
Советы к драйверу - это не я такой умный, а так делает FME, а оно, вроде как, - эталон перевода данных из формата в формат:
https://knowledge.safe.com/articles/272 ... ing-b.html
http://blog.websoftdev.com/fme/autocad- ... ta-and-fme
В моем понимании, в порядке убывания важности, вторым после бардака с привязкой идет возможность читать-писать атрибутивные данные - "Extended Entity Data", затем, третьим, - способ группировки данных в слои " Group Entities By" или сохранение этой информации в поля получаемых OGR-данных.
Естественно, вопрос с определением проекции, скрытой внутри DWG файла, - это отдельная задача, слабо связанная с собственно данными.
- Дмитрий Барышников
- Гуру
- Сообщения: 2572
- Зарегистрирован: 17 ноя 2009, 19:17
- Репутация: 261
- Откуда: Москва
Re: Google summer of code 2016
Например, вот http://www.gdal.org/classOGRSpatialRefe ... 28661e6729Boris писал(а): 1. начало координат я видел, а где там выставляется масштаб?
- Дмитрий Барышников
- Гуру
- Сообщения: 2572
- Зарегистрирован: 17 ноя 2009, 19:17
- Репутация: 261
- Откуда: Москва
Re: Google summer of code 2016
Вопрос по DWG формату. Как принято, используется ли растры (например, ДДЗ), сколько картинок может быть вставлено в файл? Есть ли примеры, хоть с Ландсатом. На сколько это частый кейс, и нужен ли он в драйвере GDAL.
-
- Гуру
- Сообщения: 5292
- Зарегистрирован: 09 апр 2010, 19:30
- Репутация: 1015
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
Re: Google summer of code 2016
растры в dwg - это или городские планшеты, или ворованные спутниковые снимки. Но их может быть много, и могут перекрываться, а ещё с подрезкой
А ещё куски съёмки могут быть внедрёнными ссылками или безымянными блоками
5-50, + фотосколько картинок может быть вставлено в файл?
А ещё куски съёмки могут быть внедрёнными ссылками или безымянными блоками
наверно достаточно сделать файл привязкиНа сколько это частый кейс, и нужен ли он в драйвере GDAL.
-
- Гуру
- Сообщения: 4205
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: 433
- Откуда: Париж
Re: Google summer of code 2016
Ну, если вы научите драйвер писать в DWG, это будет совсем обалдеть. Стандартный КАД файлы привязки читать не умеет, но может наследовать знание о привязке от разных расширений КАДа.Дмитрий Барышников писал(а):Вопрос по DWG формату. Как принято, используется ли растры (например, ДДЗ), сколько картинок может быть вставлено в файл? Есть ли примеры, хоть с Ландсатом. На сколько это частый кейс, и нужен ли он в драйвере GDAL.
- Дмитрий Барышников
- Гуру
- Сообщения: 2572
- Зарегистрирован: 17 ноя 2009, 19:17
- Репутация: 261
- Откуда: Москва
Re: Google summer of code 2016
Пока только чтение и даже не всех форматов. Работы многовато.Boris писал(а): Ну, если вы научите драйвер писать в DWG, это будет совсем обалдеть.
А можете примеры файлов с растрами подкинуть. Желательно в DWG R2000 (ACAD1015). Было бы неплохо что бы векторный слой присутствовал. На выходе должно получиться, что бы в QGIS можно было открыть такой файл и получить и растр и вектор, которые должны ложиться друг на друга.
-
- Новоприбывший
- Сообщения: 5
- Зарегистрирован: 11 мар 2016, 14:43
- Репутация: 9
Re: Google summer of code 2016
[delete]
Последний раз редактировалось sandyre 26 май 2016, 21:14, всего редактировалось 1 раз.
sun and dire
-
- Новоприбывший
- Сообщения: 5
- Зарегистрирован: 11 мар 2016, 14:43
- Репутация: 9
Re: Google summer of code 2016
Здравствуйте. Я слабо знаком с ACAD, однако держа под рукой спецификацию по DWG, и непосредственно ACAD появился ряд вопросов касательно видов геометрий (объектов) которые есть в ACAD. Более подробно - https://github.com/sandyre/libopencad/w ... geometries здесь. Там есть весь список геометрий, который я нашел, если что упустил - попрошу дополнить (в лс, или здесь).
sun and dire
- Максим Дубинин
- MindingMyOwnBusiness
- Сообщения: 9128
- Зарегистрирован: 06 окт 2003, 20:20
- Репутация: 747
- Ваше звание: NextGIS
- Откуда: Москва
- Контактная информация:
Re: libopencad - разработка новой библиотеки поддержки DWG (
дела с библиотекой идут и уже можно довольно много всего, например поддерживаются растры (спасибо Борису), поддерживаются осмысленные названия стилей. Библиотека уже лучше дефолтной поддержки DWG в ArcGIS, вот пара картинок:
помогите sandyre с тестовыми примерами, будет еще лучше
Сравнение ArcGIS и QGIS (libopencad):
Открытие одного и того же файла в AutoCAD и QGIS (libopencad):
помогите sandyre с тестовыми примерами, будет еще лучше
Сравнение ArcGIS и QGIS (libopencad):
Открытие одного и того же файла в AutoCAD и QGIS (libopencad):
пристегивайтесь, турбулентность прямо по курсу
- ANAT01
- Активный участник
- Сообщения: 196
- Зарегистрирован: 18 апр 2012, 14:41
- Репутация: 57
Re: libopencad - разработка новой библиотеки поддержки DWG (
Интересует вопрос с обработкой блоков.
Так например если открывать блок, то по логике он должен будет отображаться в виде примитивов из которых он состоит, чтобы картинка qgis соответствовала cad. И если этого не произойдет, то человек не поймет, что за точка на карте.
С другой стороны блоки часто бывают типовыми объектами (канализац.люк, дерево, столб) условно зависящими от масштаба карты, которые следовало бы отображать в qgis в виде точек (ну и стилями подставлять нужный символ).
Таким образов в разных ситуациях требуется разный подход к отображению блоков.
Думаю это должно быть опциональной возможностью
Так например если открывать блок, то по логике он должен будет отображаться в виде примитивов из которых он состоит, чтобы картинка qgis соответствовала cad. И если этого не произойдет, то человек не поймет, что за точка на карте.
С другой стороны блоки часто бывают типовыми объектами (канализац.люк, дерево, столб) условно зависящими от масштаба карты, которые следовало бы отображать в qgis в виде точек (ну и стилями подставлять нужный символ).
Таким образов в разных ситуациях требуется разный подход к отображению блоков.
Думаю это должно быть опциональной возможностью
упячка11111адинадинадин!!!!11
- Дмитрий Барышников
- Гуру
- Сообщения: 2572
- Зарегистрирован: 17 ноя 2009, 19:17
- Репутация: 261
- Откуда: Москва
Re: libopencad - разработка новой библиотеки поддержки DWG (
Нужны примеры таких файлов. Тогда можно будет придумать, что с ними делать. Есть openoptions в GDAL. Пока там только способ открытия (все читать или оптимизированное быстрое чтение). Можно через этот параметр управлять обработкой блоков при открытии файла.
По GSoC остался месяц, главная задача - привести текущее состояние библиотеки и драйвера к такому виду, что бы было принято в транк GDAL. Но постараемся с блоками тоже успеть.
По GSoC остался месяц, главная задача - привести текущее состояние библиотеки и драйвера к такому виду, что бы было принято в транк GDAL. Но постараемся с блоками тоже успеть.
-
- Гуру
- Сообщения: 3058
- Зарегистрирован: 19 май 2010, 19:44
- Репутация: 189
libopencad - разработка новой библиотеки поддержки DWG (GSoC
Какие примеры файлов в dwg нужны, с какими примитивами и т.п. ? По возможности пришлю ...
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 24 гостя