ESRI Environmental Systems Research Institute, Inc. (ESRI) Redlands, CA Leader in GIS with at least 1/3rd of market Originator of commercial GIS in 1981 with release of ArcInfo Released their first GUI product, ArcView, in 1991 (for MS Windows, UNIX, Macintosh) Combined these two product lines together with release of ArcGIS v.8 in 2000 (for Microsoft Windows only) complete rewrite based on Microsoft COM/Active X software objects completely different interface from earlier ArcView and ArcInfo old, Avenue based, ArcView still available as ArcView 3.3 old command line ArcInfo still available as ArcGIS Workstation ArcGIS 9 released in 2004 Computational Science for NRM D. Wang ArcGIS 9 ArcGIS 9 is an integrated family of GIS software products for building a complete GIS. It is based on a common library of shared GIS software components called ArcObjects™. ArcGIS 9 consists of four key parts: • ArcGIS Desktop—an integrated suite of advanced GIS applications. • ArcGIS Engine—embeddable GIS component libraries for building custom applications using multiple application programming interfaces. • ArcGIS Server—a platform for building server-side GIS applications in enterprise and Web computing frameworks. • ArcIMS®—GIS Web server to publish maps, data, and metadata through open Internet protocols. Computational Science for NRM D. Wang ArcEngine ArcGIS Engine is a simple, application-neutral programming environment for ArcObjects. Its SDK provides a series of embeddable ArcGIS components that are used outside the ArcGIS Desktop application framework—for example, mapping objects are managed as a part of ArcGIS Engine, rather than in ArcMap. Using the ArcGIS Engine developer kit, developers can build focused GIS solutions with simple interfaces to access any set of GIS functions or embed GIS logic in existing user applications to deploy GIS to broad groups of users. Computational Science for NRM D. Wang Programming with ArcEngine Can be viewed as Customized Application Programming Interface Customized GIS Applications (C++, COM, .Net and Java) Computational Science for NRM D. Wang Programming with ArcEngine Software libraries within ArcObjects Chapeter 2 Computational Science for NRM D. Wang Programming with ArcEngine On Windows – ArcEngine (commercial product) Build COM/ActiveX with Microsoft Visual Studio series (VB, VC++, VS.net, C#, etc) Seamless integration, easy implementation. Most of applications are based on this framework. Not portable… Computational Science for NRM D. Wang Programming with ArcEngine On Solaris/Linux --- ArcEngine (Beta release) Simulate the event-driven applications using shared library (.so) and open source software (Motif) GUI display (Open Motif) C++ compiler Forte 6 update 2 GCC 3.2 Makefile template Computational Science for NRM D. Wang Programming with ArcEngine On Windows/Solaris/Linux --- ArcEngine If I want to use Java (J2SE) …. No need to use Open Motif. But eventaully you will need JNI to call the native c++ library (.so) from Java, handled by ArcObject initializer (AoInitialize) And still need a good Makefile template Computational Science for NRM D. Wang Resources and Help ArcEngine SDK, ArcEngine Runtime, ArcReader (on rasp.cs.utk.edu @ /export/arcgis) Developer guide viewArcGISDevHelpC++ Sample codes (with CD) ESRI ArcGIS Developer Online Arcgisdeveloperonline.esri.com/ArcGISDeveloper/default.asp Computational Science for NRM D. Wang Programming with ArcEngine On Windows/Solaris/Linux --- ArcEngine (C++ only) Command line applications (cross-platform applications) ArcGIS Engine Text editor, C/C++ compiler Configured ArcObject environment ArcSDK.h Makefile template (simple) ArcGIS Engine runtime Computational Science for NRM D. Wang Projects 1) Problem description, basic roles and objectives (very simple, straight-forward) 2) Introduction to the software architecture of and available functionalities; Potential implementation methods based on the available functionality provided by ArcEngine and ArcObject 3) Tutorial on how to setup ArcEngine environment on Linux platform 4) Implementations using ArcEngine on Linux platform (cs594+eeb504-stendents@cs.utk.edu) Computational Science for NRM D. Wang