The Global Mapper SDK – A Powerful Geospatial Toolkit for Software Engineers
Written by: David McKittrick
As frequent readers of the Blue Marble blog will attest, one of the defining characteristics of Global Mapper is the mind-boggling collection of geospatial capabilities that it offers. Included in the application are tools for rectifying imagery, designing and printing an atlas, calculating cut and fill volumes, and so much more. While most Global Mapper users are content to access these features and functions from within the software’s interface, there are those for whom Global Mapper is simply the geospatial engine that drives a robust data processing workflow within a third-party application. Others see Global Mapper as a platform on which they can build more specialized tools, enhancing the capability of the software through the development of custom extensions.
These coalesced software development processes are enabled using the Global Mapper Software Development Kit (SDK), a powerful and flexible toolkit for software engineers. Available as a Windows DLL, the SDK is compatible with most programming languages, including Visual C++, Visual Basic, and Visual C#. It also provides a managed Common Language Runtime (CLR) wrapper to simplify the development of custom code utilizing Global Mapper’s geospatial functionality.
In conjunction with the desktop software, the Global Mapper SDK is frequently updated and provides programming access to many of the latest features and functions developed by the Blue Marble development team. An additional toolkit mirrors the capabilities of the Lidar Module and offers developers an extensive collection of point cloud processing tools.
For software engineers, the benefits of employing the Global Mapper SDK reflect the same defining characteristics seen in the desktop software. With support for over 300 file-types, the SDK offers unparalleled geospatial interoperability allowing it to effectively create a bridge between disparate platforms, applications, and data formats; it streamlines and simplifies many common GIS procedures, such as contour generation or imagery processing; and it offers an affordable alternative to developing geospatial code from scratch.
The implementation of the Global Mapper SDK in the software development process can take two forms: the required components can be directly and seamlessly incorporated into the underlying code as part of the development of a standalone application, or the SDK can be used to customize the standard installation of Global Mapper to address specific requirements.
When incorporated into a custom application, the use of the Global Mapper geospatial processing engine is usually not apparent to the user of the software. Instead, it operates behind-the-scenes as it seamlessly performs certain functions within the third-party interface. The resulting software can be used for internal data processing within a company or organization, or packaged and distributed as a commercial product, with the applicable licensing of the SDK offered for either scenario.
An alternative approach for developers interested in applying Global Mapper’s functionality to a customized workflow is to build new tools or add functionality directly into the current interface by creating extensions. The standard Global Mapper installation includes a couple of preconfigured extensions that offer developers an opportunity to see how this process works. The COAST (COastal Adaptation to Sea level rise Tool) extension was developed to analyze the effects of flooding or sea level rise on coastal communities, and the Bridge extension offers a concise set of vector tools for creating and editing bridge features. Extensions are added and activated within the License Manager dialog box, which is accessed from the Help menu in the desktop software.
A company for whom the Global Mapper SDK provides an indispensable component of their software products is Alaska-based DAT/EM, a developer of digital mapping and photogrammetric applications. DAT/EM’s Summit Evolution software offers a set of tools for capturing identifiable features using stereo imagery. The actual drawing or digitizing process is initiated using a custom toolbar within Global Mapper, which is enabled by activating an extension created by DAT/EM software engineers. In this digitizing process, Global Mapper and Summit Evolution sit side-by-side, and as new features are drawn, the resulting vector points, lines, or polygons are simultaneously rendered in both applications. Incidentally, DAT/EM also uses GeoCalc, another Blue Marble SDK, to manage their software’s internal coordinate conversion and datum transformation functionality.
If you would like to see DAT/EM’s Global Mapper extension in action, be sure to register for the next GeoTalks Express webinar scheduled for Wednesday, July 21st. During this hour-long session, a representative from DAT/EM will reveal how the company has been able to adapt and enhance the out-of-the-box functionality of Global Mapper to meet their customers’ unique needs and requirements. They will also provide a hands-on demonstration of a typical workflow using Summit Evolution. If you are unable to attend the live event, a recording will be available to all registrants along with all of the other GeoTalks Express sessions.