Kształciłem się w GIS przy użyciu ArcGIS (Desktop and Workstation) i badałem go przy pomocy (bardzo) krótkich podglądów na MapInfo i uDig. W tym czasie byłem zadowolony z programu, ponieważ korzystałem ze stosunkowo małych baz danych i nie wykonywałem zbyt wielu powtarzających się zadań, a ArcGIS ma wiele fajnych narzędzi do analizy danych naukowych.
Od dwóch lat, od ukończenia studiów, pracuję w firmie o zupełnie innej skali. Mam do czynienia z ogromnymi bazami danych, wykonując stosunkowo „prostsze” zadania, ale ponadto składają się one z powtarzalnych zadań (wykonuję serię prostych zadań raz w tygodniu do całej bazy danych). W tym czasie korzystałem z programu AutoCAD (ponieważ wiele naszych danych jest rysowanych za pomocą programu AutoCAD) i bardzo je doceniałem - największą zaletą jest to, że używając języka programowania LISP i zmiennych systemowych możesz kontrolować całość wiele ustawień - czy dotyczy to dostosowania domyślnej wartości narzędzia, eliminacji korzystania z okien dialogowych w programie, czy opcji skryptu automatycznego otwierania i manipulowania rysunkami.
Czy istnieją jakieś platformy GIS, bezpłatne lub nie, które mają tak wysoki poziom dostosowywania, czy też jestem skazany na sfrustrowaną pracę ręczną?
Wolę platformy z dobrym interfejsem użytkownika w opcjach skryptów, ale nie jest to konieczne.
Odpowiedzi:
Nie mam wystarczającego doświadczenia, aby udzielić odpowiedzi z wielu aspektów, ale ... Zrobiłem swoje pierwsze rzeczy w GIS w ArcView 3.x pisząc w Avenue. Naprawdę podobała mi się szybkość i możliwości. Wtedy nigdy nie rozumiałem radości z oczekiwania na uruchomienie ArcGIS, szukania odpowiedniego narzędzia, a następnie znalezienia potrzebnego narzędzia, potrzebuje ArcInfo.
Moja nowa miłość to PostGIS. To znacznie więcej niż baza danych do przechowywania. Wbudowana funkcjonalność umożliwia wykonywanie wszystkich analiz i analiz, z których dotychczas korzystałem. W większości przypadków jest to znacznie szybsze niż produkty Arc.
W świecie open source nie dostaniesz jednego rozwiązania na wszystko, ale są projekty i oprogramowanie zaspokajające wszystkie Twoje potrzeby.
Jak powiedziałem, przetwarzam i analizuję w PostGIS. Mogę przechowywać zapytania SQL w plikach tekstowych do ponownego użycia (jak każde narzędzie w innym oprogramowaniu, ale o wiele bardziej przejrzyste). Możesz pisać funkcje w wielu różnych językach, takich jak plpgsql (specjalny język PostgreSQL) Python, pLR, C i wiele innych.
Na komputerowy GIS używam głównie QGIS. To, czego nie ma w QGIS, to rozszerzenia. Jeśli to nie wystarczy, możesz napisać własne rozszerzenie w Pythonie i myślę, że także C ++)
Jeśli jesteś przyzwyczajony do uDig, jest to oczywiście alternatywa.
Jeśli chcesz wykonać mapowanie internetowe, możesz wypróbować MapServer. Mapserver wygrał wielki test porównawczy podczas tegorocznej konferencji FOSS4G w zakresie obsługi WMS. Esri nie chciała brać udziału w tym roku. W zeszłym roku zarejestrowali się, aby wziąć udział, ale nigdy tego nie zrobili. W tym roku nawet się nie zarejestrowali.
GeoServer to kolejna alternatywa dla udostępniania map internetowych. Jest bardzo przyjazny dla użytkownika i obsługuje wiele różnych formatów. Obsługuje także WFS-T, dzięki czemu możesz edytować dane mapy i wysyłać zmiany z powrotem na serwer.
Jeśli chcesz mieć lekki i bardzo szybki serwer WFS-T, powinieneś spojrzeć na Tiny-OWS
Cóż, lista może zawierać długie kompetentne oprogramowanie, które razem tworzy bardzo potężny i oczywiście dostosowywalny pakiet.
To znaczy, czy może być bardziej konfigurowalny. Masz dostęp do całego kodu źródłowego. A za pieniądze, które zaoszczędzisz, nie płacąc rocznych opłat na rzecz Esri, możesz wziąć darmowe i uczyć się programowania lub zatrudnić programistę. Dostaniesz dużo kodowania w tych projektach za cenę licencji ArcGIS Server.
źródło
Nie zgadzam sie z Toba.
Myślę, że pomoc / fora / blogi / vids / etc ArcGIS dają świetną perspektywę na to, co możesz osiągnąć dzięki gamie produktów ArcGIS.
Nie jesteś ograniczony do Pythona do manipulowania danymi przestrzennymi. Nadal możesz używać VBA w wersjach 931 i 10, aby uzyskać dostęp do biblioteki ArcObjects, lub możesz pójść o krok dalej i używać .NET do robienia różnych rzeczy, i znowu jest to dobrze udokumentowane.
Uważam również, że skróty do ArcGIS Desktop są świetne i jeśli chcesz, możesz tworzyć własne skróty za pomocą okna dialogowego Dostosuj.
Jeśli nie chcesz nauczyć się kodować, istnieje także ModelBuilder, który jest świetnym sposobem na automatyzację żmudnych zadań / typowych przepływów pracy, szczególnie w przypadku geoprzetwarzania .
Jestem stronniczy, ale mam doświadczenie z innymi produktami.
Wiem, że Pythonowi brakuje mocy zapewniania łatwych do dostosowania interfejsów, które będą prezentowane użytkownikom, ale jak już wspomniałem, w VBA / .NET możesz łączyć formularze bogate w treści, aby dać użytkownikom niestandardowy interfejs do robienia tego, czego potrzebują zrobić.
źródło
Zabawne, nauczyłem się robić to w zeszłym tygodniu.
DS Map Book może być dla Ciebie rozwiązaniem? A jeśli jesteś na v10, D ata Driven Pages ? Jak powiedziałem, skrypty .NET / VBA mogą to zrobić, nie jestem zbyt gorący w Pythonie, aby zapewnić rozwiązanie w języku Python
Zgadzam się z tobą tutaj. Wiem, że ESRI są tego świadomi, ale nie są pewni, czy mają coś w przygotowaniu. Ten link może pomóc jako starter, jeśli masz doświadczenie w VBA. Nadal będę argumentować, że AO GTK jest nadal ważną lekturą, a wyciągnięte wnioski będą nadal obowiązywały dla platformy .NET (i możesz przejrzeć książkę w tydzień @ 1-2 godziny dziennie).
Byłem / jestem wielkim fanem VBA ...
źródło
Na platformie ArcGIS, jeśli nie jesteś skazany na pracę ręczną, to jesteś skazany na pracę programistyczną (nieźle jak na mnie, ponieważ podobają mi się takie rzeczy)!
Nie znam sposobu, aby w 9.3.x zastąpić domyślne wartości w geobazie bez uciekania się do niestandardowych narzędzi. To właśnie robię, zwłaszcza jeśli jest to zestaw powtarzalnych operacji edycji.
W ArcGIS 10 użytkownik może tworzyć szablony funkcji Utwórz i początkowo ustawiać wartości domyślne dla każdego szablonu , szablony są symbolami warstwy obiektów, ale w razie potrzeby można kopiować / zdalnie / modyfikować szablony funkcji ). Nie przeszedłem na ArcGIS 10, ale jest to jedna z funkcji, na którą czekają nasi redaktorzy GIS.
Nigdy nie potrzebowałem usuwać skrótu, więc nie jestem pewien, czy możesz to zrobić w dowolnej wersji ArcGIS. Możesz je zdecydowanie dodać (akceleratory). Nie jestem pewien, czy możesz je zastąpić; jeśli możesz, możesz je zastąpić za pomocą fałszywego polecenia, które nic nie robi.
Jak wspomniano Simon, możesz używać ArcObjects / .NET i operować na wielu MXD. Chociaż uważam, że ArcObjects jest bardzo wybredny, gdy MXD zawiera zerwane połączenia danych lub dowolną z różnych warstw usług. W ArcGIS 10 będziesz mieć arcpy.mapping w Pythonie, który pomaga w pracy skryptowej przeciwko MXD / LYR w Pythonie. Nadal jest trochę wadliwy, ale może działać dla ciebie w zależności od tego, co masz w MXD.
źródło
Chociaż bardzo podoba mi się ArcGIS, muszę przyznać, że na pulpicie bardzo brakuje możliwości tworzenia plików obserwacyjnych udostępnianych na stacji roboczej ArcInfo. Wielu jest zaznajomionych ze zdolnością Excela do nagrywania makr. Wygląda na to, że ESRI może mieć podobne możliwości - nawet po 10,0, gdy VBA jest wycofany. Na przykład Neooffice ma możliwość rejestrowania makr w języku Python .
ArcGIS Engine jest wysoce konfigurowalny. Pozwala tworzyć małe, skoncentrowane narzędzia, które robią jedną rzecz i robią to dobrze. Zawiera projekty szablonów dla Visual Studio, w tym darmową wersję Express (?), Które można wykorzystać do tworzenia małych, lekkich aplikacji do przeglądania map bez żadnego kodowania. Aby jednak w pełni korzystać z ArcGIS Engine, trzeba poświęcić czas na naukę języka programowania .NET.
źródło
Taka jest rzeczywistość polegająca na tym, że zestaw narzędzi napędza bazę danych, a nie na odwrót. Brzmisz tak, jakbyś znalazł się w sytuacji, w której potrzebujesz kompleksowej struktury bazy danych, takiej, w której możesz uzyskiwać raporty, tworzyć aktualizacje, publikować mapy itp. Z częścią GIS lub bez. Uwolnienie danych z narzędzia umożliwi korzystanie z wybranego narzędzia. Dlatego mamy otwarte standardy. Stamtąd możesz korzystać z aplikacji, która najlepiej służy twojemu celowi. Właśnie przeprowadziłem dziś rano tę rozmowę, że jeśli zdarzy ci się reprezentować dane w kolumnach, nie jest to arkusz kalkulacyjny Excel.
Inny respondent omówił ograniczenia Python, tak nie jest. Prawdopodobnie jest więcej rzeczy, które możesz zrobić z Pythonem ze względu na obszerne biblioteki niż większość innych języków, a interfejsy nie są takie trudne. Ogranicza to implementację ESRI Pythona w ArcGIS. Nie pomyl tych dwóch.
źródło
Możesz wypróbować MapWindow jako bezpłatną alternatywę .... czyta pliki Shapefiles itp., Ale musisz wiedzieć, jak programować w C #. Ale wtedy masz całkowitą kontrolę nad wszystkim ...
http://www.mapwindow.org/
źródło