Я потратил около 2 дней, чтобы найти способ открыть GDB (базу геоданных Esri) в QGIS (или любом другом программном обеспечении с открытым исходным кодом), но все еще безуспешно.
Я скачал новейший установщик OSGeo4W и попробовал установить - экспресс-установку на рабочем столе - все пакеты, а также расширенную установку, включая gdal-filegdb.
Можете ли вы описать более подробную процедуру, включая установку и как открыть .gdb в QGIS (установка OSGeo4W)?
Ответы:
Обновление декабрь 2017
Теперь вы можете просто перетащить .gdb файл (каталог) в QGIS. Это доступ на чтение только к файловым базам геоданных. Если вам требуется доступ для записи, пожалуйста, прочитайте дальше.
Обновление июль 2015
Настало время представить этот ответ более актуальным, поскольку некоторые элементы поддержки FileGDB в QGIS изменились. Я сейчас использую QGIS 2.10.0 - Пиза. Он был установлен с помощью установщика OSGeo4W.
Что изменилось, так это то, что при базовой установке QGIS доступ к файлу GDB только для чтения включается по умолчанию с использованием драйвера Open FileGDB. Кредит за первое упоминание об этом должен быть дан @SaultDon.
Доступ для чтения / записи может быть включен с помощью установки драйвера FileGDB через библиотеку OGR_FileGDB. Библиотеку необходимо включить, используя описанный ниже процесс, либо при установке QGIS, либо по отдельности. Подробнее о драйверах ниже:
Когда вы добавляете векторный слой, вы просто выбираете
Source Type
тот драйвер, который хотите использовать.ESRI FileGDB Драйвер
Открыть файлGDB Driver
Приведенный ниже процесс более детально показывает шаги по установке QGIS из установщика OSGeo4W, убедитесь, что установлена библиотека OGR_FileGDB, а затем загрузите слои из файловой базы геоданных.
Загрузите и запустите
osgeo4w-setup-x86.exe
для 32- разрядной илиosgeo42-setup-x86_64.exe
64- разрядной версии OSGeo4W .Выберите «Расширенная установка», затем «Установить из Интернета». Выберите ваши корневые и локальные каталоги пакетов, а затем тип подключения, в моем случае, «Прямое подключение». Как только вы нажмете кнопку «Далее», появится экран с несколькими свернутыми меню.
Разверните меню «Рабочий стол». Найдите запись для "qgis: Quantum GIS (desktop)". В столбце «Новый» измените запись с «Пропустить», чтобы показать версию 2.10.0-1.
Разверните меню «Libs». Найдите запись для "gdal-filegdb: OGR FileGDB Driver". В столбце «Новый» измените запись с «Пропустить», чтобы показать версию 1.11.2-1.
После того, как вы нажмете Далее, он установит QGIS и все связанные библиотеки. После этого откройте Quantum GIS и выберите «Добавить векторные данные». Измените параметр «Каталог». Здесь вы выбираете драйвер, как показано выше.
Перейдите к Файловой базе геоданных и выберите каталог. Нажмите «Открыть»
Выберите векторный слой и нажмите «ОК». Обратите внимание, что FileGDB API не поддерживает растровые изображения .
Как видите, загружается выбранный слой. С помощью драйвера Esri возможно редактирование. Если вы используете драйвер Open FileGDB, данные доступны только для чтения.
Для справки, вот окно «О программе» из моей установки QGIS, показывающее версии программного обеспечения и используемую библиотеку GDAL / OGR.
Эта установка была выполнена на Windows 7 64-битном компьютере. С предыдущими установщиками были некоторые противоречивые результаты. Это могло измениться при переходе на 32- или 64-битные установщики. В этой теме в OSGeo обсуждаются некоторые старые проблемы, с которыми сталкивались люди: Тема
источник
FileGDBAPI.dll
является частьюgdal-filegdb
пакета и уже должен быть установлен в%osgeo4w_root%\bin
. К сожалению, одного этого недостаточно в моей системе.1.8
была текущей установочной версией. Как вы показали, текущая версия до2.2.0
. Процесс и этапы , чтобы убедиться , что библиотека установлена остаются теми же, но вы всегда хотите использовать самую последнюю версию , доступную для обоихQGIS
и вgdal-fgdb
библиотеке.Если у вас запущена QGIS и скомпилирована для GDAL 1.11.0, теперь она имеет встроенную поддержку FileGDB через драйвер OpenFileGDB .
Чтобы открыть базу геоданных в QGIS, обязательно выберите «Добавить векторный слой», «Тип источника = Каталог», а источником должен быть либо «OpenFileGDB», либо «ESRI FileGDB». Затем просто перейдите к выбранной папке * .gdb, нажмите «Открыть», и слои будут загружены в ваше оглавление.
Существуют некоторые текущие ограничения, такие как невозможность записи в FileGDB, но он поддерживает FileGDBs <= 10.0, что является довольно бонусом и «пользовательскими проекциями».
Пересмотренная спецификация незавершенного производства доступна на GitHub для драйвера OpenFileGDB.
источник
Если вы работаете на Mac, вы можете скомпилировать драйвер filegdb с нуля, используя эти инструкции .
ОБНОВЛЕНИЕ: Прошло 2 года с тех пор, как этот ответ, вы можете попробовать это сейчас: https://github.com/OSGeo/homebrew-osgeo4mac Также, как многие сейчас говорят, вы можете использовать драйвер OpenFileGDB, который не использует ESRI двоичные файлы для достижения этой цели. Пожалуйста, помните, что это проект, который изменил, как работает спецификация, а не ESRI, санкционированный (все еще замечательно иметь альтернативы, и это представляет удивительную работу).
источник
Загрузите и запустите установку OSGEO4W (я бы предложил 32-битную версию)
Запустите его один раз, используя опцию Desktop Installation, чтобы установить QGIS (и любые другие программы для рабочего стола, которые вы хотите).
После того, как все это будет сделано, снова запустите установку OSGEO4W из меню «Пуск», выберите «Расширенная установка» и перейдите к той части установки, где вы выбираете пакеты. Прокрутите вниз до пакета "gdal-filegdb" и щелкните там, где написано "Keep" на этом снимке экрана:
Там написано «Сохранить», потому что у меня уже установлен пакет, вы можете нажимать на него, пока текст слева не совпадет с номером «Текущий».
источник
у меня была связанная проблема / вопрос около 3 месяцев назад (см. неполный список qgis 2.8.1 arcgis filegdb в win-версии )
Несколько дней назад я перешел с 2.8.x на 2.10.1-Pisa, надеясь избавиться от проблем с файловой базой геоданных, описанных в моем вопросе. к сожалению, без успеха.
с тех пор я понял, что проблема с пользовательскими системами координат все еще существует! мои тесты с filegdb, созданным с помощью arcgis 10.1 и другим с arcgis 10.3 на разных ПК, показывают, что при попытке открыть filegdb, который просто содержит классы пространственных объектов с пользовательским CRS, возвращается следующая ошибка:
« Неверный источник данных: D: \ xxxx \ yyy \ zzzz.gdb не является допустимым или распознанным источником данных "
... оба водителя ( водитель FileGDB , водитель OpenFileGDB ) возвращает ту же ошибку!
Хотя можно ли сделать FileGDB SDK для поддержки пользовательских систем координат? В статье и некоторых комментариях / ответах здесь говорится, что реализована поддержка пользовательских CRC через OpenFileGDB - она не работает на моих системах (gdal-filegdb: OGR FileGDB Driver 1.11.2-1)
если filegdb содержит какие-либо таблицы - только эти таблицы отображаются в списке «выбрать векторные слои для добавления ...» и смешивать пользовательские CRC- и нестандартные данные с похожим на это
ArcCatalog:
вопрос 2.10:
мой личный вывод: всегда используйте стандартные CRC! ! !
источник
Хорошо, что в 2019 году вам не нужно делать выше, это уже поддерживается в qgis 3.6.
Просто и легко за 3 шага:
Шаг 1: нажмите кнопку добавления вектора (красный кружок)
Шаг 2: выберите каталог, openFileGDB и путь к файлу (красная стрелка)
Шаг 3: выберите все слои (красный круг)
Готово!!!!! Вы просто добавляете все слои в QGIS.
источник