Ищете высоко настраиваемую ГИС-платформу? [закрыто]

9

Я получил образование в ГИС с использованием ArcGIS (Desktop и Workstation) и изучал его с (очень) короткими взглядами в MapInfo и uDig. В то время я был удовлетворен программой, поскольку использовал сравнительно небольшие базы данных и не выполнял много повторяющихся задач, а в ArcGIS есть много интересных инструментов для анализа научных данных.

Вот уже два года, как я получил диплом, я работал в компании совершенно другого масштаба. Я имею дело с огромными базами данных, выполняя относительно «более простые» задачи, но, кроме того, они состоят из повторяющихся задач (я делаю серию простых задач раз в неделю для всей базы данных). В течение этого времени я много использовал AutoCAD (так как большая часть наших данных рисуется с использованием AutoCAD) и рос, чтобы высоко ценить его. Самое большое преимущество заключается в том, что используя язык программирования LISP и системные переменные, вы можете управлять целым Множество настроек - будь то настройка значения по умолчанию для инструмента, устранение использования диалоговых окон в программе или опций для сценариев автоматического открытия и манипулирования чертежами.

Существуют ли какие-либо платформы ГИС, бесплатные или нет, с таким высоким уровнем настройки, или я обречен на разочарованную ручную работу?

Я предпочитаю платформы с хорошим пользовательским интерфейсом среди вариантов сценариев, но это не обязательно.

jonatr
источник
6
в ArcGIS есть задачи, которые в высшей степени пригодны для сценариев и автоматизации, другие - нет, и диапазон между ними. Дито для всех других платформ. Если вы можете привести примеры видов ручного труда, которых вы хотели бы избежать, могут быть некоторые конкретные полезные ответы.
Мэтт Вилки
@PolyGeo вы знаете, что это 7-летний вопрос, который вы требуете редактирования?
Никлас Авен
@ NicklasAvén Я определенно не требую, чтобы это было отредактировано. Я просто проголосовал за его закрытие, чтобы он не рассматривался как вопрос, который считается подходящим в качестве образца для аналогичного вопроса, который будет задан сегодня. Чтобы попытаться решить некоторые из причин, почему я думаю, что это так, я сам внес в него некоторые изменения. Вопрос о том, следует ли закрывать такие старые вопросы, обсуждается на meta.stackexchange.com/a/194117/215590
PolyGeo

Ответы:

5

Я не достаточно опытен, чтобы дать ответ по очень многим аспектам, но ... Я сделал свои первые вещи в ГИС в ArcView 3.x, написав в Avenue. Мне очень понравилась скорость и возможности. Тогда я никогда не понимал радости от ожидания запуска ArcGIS, поиска подходящего инструмента, а затем поиска нужного мне инструмента, нуждающегося в ArcInfo.

Моя новая любовь - PostGIS. Это намного больше, чем база данных для хранения. Встроенная функциональность позволяет выполнять всю обработку и анализ, которые я использовал до сих пор. В большинстве случаев это намного быстрее, чем продукты Arc.

В мире с открытым исходным кодом вы не получите одно решение для всего, но есть проекты и программное обеспечение, отвечающее всем вашим потребностям.

Как я уже сказал, я делаю обработку и анализ в PostGIS. Я могу хранить sql-запросы в текстовых файлах для повторного использования (как любой инструмент в другом программном обеспечении, но гораздо более прозрачный). Вы можете писать функции на множестве разных языков, таких как plpgsql (специальный язык PostgreSQL), Python, pLR, C и многие другие.

Для настольных ГИС я использую в основном QGIS. Что не в ядре QGIS, так это в расширениях. Если этого недостаточно, вы можете написать свое собственное расширение на Python, и я думаю, также C ++)

Если вы привыкли к uDig, это, конечно, альтернатива.

Если вы хотите создать веб-карту, попробуйте MapServer. Mapserver выиграл большой тест на конференции FOSS4G этого года по обслуживанию WMS. Эсри не хотела участвовать в этом году. В прошлом году они зарегистрировались для участия, но не сделали этого. В этом году они даже не зарегистрировались.

GeoServer является еще одной альтернативой для обслуживания веб-карт. Это очень удобный и обслуживает множество различных форматов. Он также обрабатывает WFS-T, так что вы можете редактировать данные карты и отправлять изменения обратно на сервер.

Если вы хотите легкий и очень быстрый сервер WFS-T, вы должны взглянуть на Tiny-OWS

Ну, список может быть длинным из компетентного программного обеспечения, вместе создавая очень мощный и, конечно, настраиваемый пакет.

Я имею в виду, это может быть более настраиваемым. У вас есть доступ ко всему исходному коду. И за деньги, которые вы экономите, не выплачивая годовой гонорар Esri, вы можете взять немного бесплатно и изучить программирование или нанять программиста. В этих проектах вы получите много кода по цене лицензии ArcGIS Server.

Никлас Авен
источник
12

Я не согласен с вами.

Я думаю, что справка / форумы / блоги / видео / и т. Д. ArcGIS дают отличное представление о том, чего можно достичь с помощью ряда продуктов ArcGIS.

Вы не ограничены Python для управления вашими пространственными данными. Вы по-прежнему можете использовать VBA на 931 и 10 для доступа к библиотеке ArcObjects, или вы можете сделать еще один шаг и использовать .NET для выполнения самых разных задач, и опять же, это хорошо задокументировано.

Я также думаю, что ярлыки для ArcGIS Desktop великолепны, и вы можете создавать свои собственные ярлыки через диалог настройки, если это необходимо.

Если вы не хотите изучать кодирование, есть также ModelBuilder, который является отличным способом автоматизации утомительных задач / общих рабочих процессов, особенно с геообработкой .

На меня оказывают влияние, но у меня есть опыт работы с другими продуктами.

Я знаю, что Python не обладает достаточной мощью предоставления простых в настройке интерфейсов для представления пользователям, но, как я уже говорил, с помощью VBA / .NET вы можете собирать формы с богатым содержимым, чтобы предоставить пользователям настраиваемый интерфейс для выполнения того, что им нужно. делать.

  • С .NET вы можете создавать сценарии для MXD (например, проходить через папку MXD и открывать каждый MXD, делать некоторые вещи, а затем переходить к следующему MXD
  • Управление значениями по умолчанию в ваших пространственных данных также возможно с помощью ArcObjects.
Саймон
источник
Мои навыки программирования хороши, но я ни в коем случае не подхожу для образованного программиста (но я становлюсь лучше с каждым днем). Это касается Python / VBA. Поскольку, к сожалению, VBA быстро идет на ветер (спасибо Microsoft), я бы просто сказал, что из моего опыта это позор, поскольку он прост с одной стороны и мощен с другой. Но при той скорости, с которой ESRI выпускает обновления (с обещанием 10.1 не поддерживать VBA), я не вижу никаких оснований тратить время на обучение разработке с использованием VBA.
Джонатр
А что касается VB.net / ArcObjects. Я забыл сослаться на него, потому что чувствую (из своего очень маленького опыта в C #), что он предназначен не для обычного аналитика ГИС (который имеет некоторый опыт программирования и может управлять базовым VBA / Python), а для опытного, постоянно работающего на постоянной основе. преданные профессиональные программисты. Мне кажется, что, делая VB.net предпочтительным языком, ESRI отказывается от целой части небольших компаний и аналитиков, которые раньше настраивали мелкие вещи для личного просмотра.
Джонатр
Основная проблема, с которой я сталкиваюсь с VB.net, заключается в том, что я, к сожалению, не могу посвятить время, чтобы изучить его с нуля (это годичный курс), и, наоборот, я не могу найти какие-либо онлайн-справочники / книги о том, как работать с ArcGIS. и VB.net. Насколько я знаю, кроме нескольких кодов, у ESRI нет книг по этому вопросу (например, знакомство с объектами arcobjects, кроме c #). Если вы знаете лучше, пожалуйста, поделитесь.
Джонатр
2
Это хороший, отдельный вопрос для gis.stackexchange.com: «1. Каждый раз, когда я открываю символологию и захожу в окно« Цвет заливки », чтобы настроить нужные мне цвета. Он открывается в CMYK и мне нужно изменить его на RGB». Может быть не программный способ решить эту проблему.
Джей Камминс
1
Re: Ваш вышеупомянутый вопрос № 2. Эта проблема кажется мне питонной, но я не особо разбираюсь в arcgis / python, так что, возможно, кто-то еще прокомментирует. Я бы порекомендовал разбить этот вопрос на другой вопрос для gis.stackexchange.com (это облегчит работу будущих разочарованных ГИС-аналитиков, которым необходимо найти циклы, масштабировать, экспортировать, чтобы найти свой ответ).
Джей Камминс
4

«... Заполните окно цвета, чтобы настроить цвета, которые мне нужны. Он открывается в CMYK, и мне нужно изменить его на RGB»

  1. Забавно, я научился делать это на прошлой неделе.

    • открыть ArcMap -> добавить слой -> перейти к цвету поддонов
    • Измените CYMK на RGB
    • Сохраните документ в Normal.mxt под вашими документами и настройками (в папке ESRI)
    • Закройте и снова откройте ArcMap -> теперь по умолчанию всегда будет RGB.
  2. DS Map Book может быть решением для вас? Или если вы на v10, D ata Driven Pages ? Как я уже сказал, сценарии .NET / VBA могли бы сделать это, я не слишком разбираюсь в Python, чтобы обеспечить решение Python

"знакомство с arcobjects", но для C #

Я согласен с вами здесь. Я знаю, что ESRI знает об этом, но не уверен, что у них что-то есть. Эта ссылка может помочь в качестве начала, если у вас есть опыт работы в VBA. Я бы все еще утверждал, что GTK AO по-прежнему является действительным чтением, а извлеченные уроки будут по-прежнему применяться для .NET (и вы можете прочитать книгу за неделю @ 1-2 часа в день).

Я был / я большой поклонник VBA ...

Саймон
источник
Спасибо. Я «стряхнул пыль» с МОЕЙ копии GTKAO этим утром и решил, что пришло время вернуться к ней, так как я улучшился с тех пор, как в последний раз наполовину читал ее. Возможно, после этого у меня будет больше оснований, чтобы погрузиться и заняться VB.Net.
Джонатр
Часть моей проблемы - убедить компьютерный отдел компании, что мне нужна Visual Studio (ГИС не так популярна - они не считают нас разработчиками, и поэтому мне приходится бороться за базовые возможности). DS MapBook - еще одна причина для борьбы с компьютерами, и поэтому я до сих пор фокусируюсь на Python и VBA - они встроены, и мне не нужно за них бороться. В любом случае, спасибо за подсказку по вопросу CMYK / RGB, я попробую.
Джонатр
@jonatr - есть бесплатная версия Visual Studio - я думаю, что она называется «Экспресс». Он, вероятно, сделает все, что вам нужно. Профессиональная версия в основном имеет больше инструментов для профессиональных разработчиков.
Я согласен, Visual Studio Express обычно достаточно для того, чтобы получить то, что вы хотите. Это определенно хорошее место для начала обучения, и id также рекомендует эту ссылку: msdn.microsoft.com/en-au/beginner/default.aspx
Саймон
3

На платформе ArcGIS, если вы не обречены на ручную работу, то вы обречены заниматься программированием (неплохо для меня, так как мне это нравится)!

Я не знаю, как в 9.3.x переопределить значения по умолчанию в базе геоданных, не прибегая к пользовательским инструментам. Это то, что я делаю, особенно если это набор повторяющихся операций редактирования.

В ArcGIS 10 пользователь может создавать шаблоны объектов и изначально устанавливать значения по умолчанию для каждого шаблона , шаблоны являются символами для векторного слоя, но вы можете при необходимости копировать / удаленно / изменять шаблоны объектов ). Я не перешел на ArcGIS 10, но это одна из возможностей, которую ожидают наши редакторы ГИС.

Мне никогда не нужно было удалять ярлык, поэтому я не уверен, что вы можете сделать это в любой версии ArcGIS. Вы можете определенно добавить их (ускорители). Я не уверен, что вы можете переопределить их; если вы можете, возможно, можно переопределить их с помощью фиктивной команды, которая ничего не делает.

Как упоминал Саймон, вы можете использовать ArcObjects / .NET и работать с несколькими MXD. Хотя я нахожу, что ArcObjects очень требователен, когда MXD содержит разорванные подключения к данным или любой из различных сервисных слоев. В ArcGIS 10 у вас будет arcpy.mapping в Python, который помогает работать со сценариями для MXD / LYR в Python. Это все еще немного глючит, но это может работать для вас в зависимости от того, что у вас есть в вашем MXD.

Джей Камминс
источник
Привет. Поскольку я написал очень длинный ответ Саймону, я не хочу копировать и вставлять его (он выше), но я был бы признателен, если бы вы прокомментировали (если у вас есть что-то прокомментировать). Спасибо за ответ.
Джонатр
3

Хотя мне действительно нравится ArcGIS, я должен признать, что возможность создавать файлы часов, представленные на рабочей станции, ArcInfo крайне отсутствует на рабочем столе. Многие знакомы со способностью Excel записывать макросы. Похоже, что ESRI может предложить аналогичную возможность - даже после 10.0, когда VBA выйдет на пенсию. Например, Neooffice имеет возможность записывать макросы Python .

ArcGIS Engine обладает широкими возможностями настройки. Это позволяет вам создавать небольшие специализированные инструменты, которые делают одно и делают это хорошо. Он включает в себя шаблоны проектов для Visual Studio, в том числе бесплатную редакцию Express (?), Которую можно использовать для создания небольших облегченных приложений для просмотра карт без какого-либо кодирования. Тем не менее, чтобы получить все преимущества ArcGIS Engine, вам нужно потратить время на изучение языка программирования .NET.

Кирк Куйкендалл
источник
1
он не такой простой или полный, как файл наблюдения, но вкладка «Результаты» содержит историю вашей геообработки, которую можно перетащить в модель Builder или экспортировать в фрагменты Python. Я использую это как улучшенную историю метаданных для наборов данных.
Мэтт Вилки
также есть история инструментов gp в виде xml-файла здесь% AppData% \ Roaming \ ESRI \ Desktop10.0 \ ArcToolbox \ History, xml-файл имеет некоторые проблемы, которые будут устранены в 10.1. но это может быть интересным вариантом для вас.
Гочула
1

Это реальность, когда набор инструментов управляет базой данных, а не наоборот. Похоже, вы находитесь в положении, когда вам нужна всеобъемлющая структура базы данных, в которой вы можете получать отчеты, создавать обновления, публиковать карты и т. Д. С частью ГИС или без нее. Освобождение данных от инструмента даст вам возможность использовать соответствующий инструмент по вашему выбору. Вот почему у нас есть открытые стандарты. Оттуда вы можете использовать приложение, которое наилучшим образом соответствует цели, которую вы имеете в виду. Сегодня утром я только что говорил о том, что если вы представляете данные в столбцах, это не превращает их в электронную таблицу Excel.

Другой респондент обсуждал ограничение Python, это не так. Вероятно, с помощью обширных библиотек можно сделать больше вещей с помощью Python, чем с большинством других языков, и интерфейсы не так сложны. Ограничением является реализация Python ESRI в ArcGIS. Не путайте их.

westyvw
источник
1

Вы можете проверить MapWindow как бесплатную альтернативу .... читает шейп-файлы и т. Д., Но вам нужно знать, как программировать на C #. Но тогда у вас есть полный контроль над всем ...

http://www.mapwindow.org/

timemirror
источник
Проблема заключается в овладении знаниями в C #, что не является тривиальным и очень трудоемким. Но спасибо, я буду иметь это в виду.
Джонатр