Professional Documents
Culture Documents
Tradustor PDF
Tradustor PDF
Tradustor PDF
Customization Roadmap
February 2008
2008 Autodesk, Inc. All Rights Reserved. Except as otherwise permitted by Autodesk, Inc., this publication, or parts thereof, may not be reproduced in any form, by any method, for any purpose. Certain materials included in this publication are reprinted with the permission of the copyright holder. Trademarks The following are registered trademarks or trademarks of Autodesk, Inc., in the USA and other countries: 3DEC (design/logo), 3December, 3December.com, 3ds Max, ActiveShapes, Actrix, ADI, Alias, Alias (swirl design/logo), AliasStudio, Alias|Wavefront (design/logo), ATC, AUGI, AutoCAD, AutoCAD Learning Assistance, AutoCAD LT, AutoCAD Simulator, AutoCAD SQL Extension, AutoCAD SQL Interface, Autodesk, Autodesk Envision, Autodesk Insight, Autodesk Intent, Autodesk Inventor, Autodesk Map, Autodesk MapGuide, Autodesk Streamline, AutoLISP, AutoSnap, AutoSketch, AutoTrack, Backdraft, Built with ObjectARX (logo), Burn, Buzzsaw, CAiCE, Can You Imagine, Character Studio, Cinestream, Civil 3D, Cleaner, Cleaner Central, ClearScale, Colour Warper, Combustion, Communication Specification, Constructware, Content Explorer, Create>what's>Next> (design/logo), Dancing Baby (image), DesignCenter, Design Doctor, Designer's Toolkit, DesignKids, DesignProf, DesignServer, DesignStudio, Design|Studio (design/logo), Design Your World, Design Your World (design/logo), DWF, DWG, DWG (logo), DWG TrueConvert, DWG TrueView, DXF, EditDV, Education by Design, Exposure, Extending the Design Team, FBX, Filmbox, FMDesktop, Freewheel, GDX Driver, Gmax, Heads-up Design, Heidi, HOOPS, HumanIK, i-drop, iMOUT, Incinerator, IntroDV, Inventor, Inventor LT, Kaydara, Kaydara (design/logo), LocationLogic, Lustre, Maya, Mechanical Desktop, MotionBuilder, Mudbox, NavisWorks, ObjectARX, ObjectDBX, Open Reality, Opticore, Opticore Opus, PolarSnap, PortfolioWall, Powered with Autodesk Technology, Productstream, ProjectPoint, ProMaterials, Reactor, RealDWG, Real-time Roto, Recognize, Render Queue, Reveal, Revit, Showcase, ShowMotion, SketchBook, SteeringWheels, StudioTools, Topobase, Toxik, ViewCube, Visual, Visual Bridge, Visual Construction, Visual Drainage, Visual Hydro, Visual Landscape, Visual Roads, Visual Survey, Visual Syllabus, Visual Toolbox, Visual Tugboat, Visual LISP, Voice Reality, Volo, Wiretap, and WiretapCentral The following are registered trademarks or trademarks of Autodesk Canada Co. in the USA and/or Canada and other countries: Backburner, Discreet, Fire, Flame, Flint, Frost, Inferno, Multi-Master Editing, River, Smoke, Sparks, Stone, and Wire All other brand names, product names or trademarks belong to their respective holders. Disclaimer THIS PUBLICATION AND THE INFORMATION CONTAINED HEREIN IS MADE AVAILABLE BY AUTODESK, INC. "AS IS." AUTODESK, INC. DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE REGARDING THESE MATERIALS. Published By: Autodesk, Inc. 111 Mclnnis Parkway San Rafael, CA 94903, USA
Contents
Chapter 1
Chapter 2
Geospatial Data . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Data Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Chapter 3
iii
Chapter 4
Chapter 5
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
iv | Contents
Overview
Custom geospatial solutions work with data from multiple sources that are created using diverse applications in complex workflows. Integrating geospatial technology into a customers business process presents significant challenges when the integrity of requirements and data may be in doubt. Developers rely on technical documentation, examples, and shared community expertise to pick the right tools for successful delivery. Autodesk provides a complete line of products designed to meet the challenges of successful solution development in complex environments. The products work with geospatial and engineering data, in multiple formats and across multiple systems. A diverse set of application programming interfaces (APIs) and scripting tools allows products to be customized to add new features, improve workflow integration, or access new types of data. In this guide you will find:
An overview of the core Autodesk geospatial product line Overviews of related and supplementary products to the geospatial product line Descriptions of the range of use and customization options available for each product
Description
Desktop application for creating and editing maps. AutoCAD Map 3D includes the full capabilites of AutoCAD, plus additional functionality for working with geospatial data. Web-based applications for map display and analysis. Combine data from multiple sources into a single map, then share it across the Internet or intranet. The included viewer comes in 2 versions. The AJAX viewer runs in nearly any browser on any operating system. The DWF viewer runs as an Internet Explorer plug-in on Windows. Built on top of AutoCAD Map 3D and Autodesk MapGuide Enterprise, Topobase provides rule-based infrastructure and asset management tools optimized for specific industries. Topobase includes a desktopbased client, a Web-based client, and several toolkits customized for specific industries.
Autodesk Topobase
All the core geospatial products include Feature Data Objects (FDO) Data Access Technology. FDO is an API for manipulating, defining, and analyzing geospatial information regardless of where it is stored. FDO uses a
provider-based model for supporting a variety of geospatial data sources, where each provider supports one or more data formats or data stores. Complementary Products Product
AutoCAD
Description
World-wide standard for drafting software. AutoCAD is the base 2D and 3D design platform for AutoCAD Map 3D and is included in the desktop client of Autodesk Topobase. Extension to AutoCAD and AutoCAD Map 3D that provides raster data editing and conversion. Stand-alone product for reviewing and marking up drawing files. With files that contain geographic information, Design Review can use GPS coordinates to display locations in real-time. CAD development platform that provides tools to build custom AutoCAD-based software products for specific markets. Using AutoCAD OEM, developers can create AutoCAD applications that provide exactly the features their users need. A software library that allows C++ and .NET developers to read and write AutoCAD DWG and DXF files. A software library that allows C++ developers to read and write 2D and 3D Design Web Format (DWF) files.
AutoCAD OEM
Autodesk RealDWG
AutoCAD Map 3D
AutoCAD Map 3D is a desktop-based map creation and editing program. Traditionally, data management staff who needed to edit CAD-based engineering data and GIS-based mapping data would use separate software programs to perform those tasks. AutoCAD Map 3D, however, provides users with the capability to edit and view CAD and GIS data from within the same application. AutoCAD Map 3D contains the data management functionality to allow users to complete many common CAD-to-GIS workflows in a single software environment. AutoCAD Map 3D is built on AutoCAD, so it works directly with CAD data using standard AutoCAD commands. It also extends AutoCAD to provide significant improvements to the data handling workflow. For example, users can import objects from multiple DWG files into a single session, edit objects within those files, then save the changes to the original files. Using AutoCAD Map 3D, CAD drawing objects can have attributes similar to the attributes attached to GIS data. The objects can also be classified and annotated, adding to CAD data some of the power needed for true GIS analysis. In addition to the extensions for working with drawing objects, AutoCAD Map 3D can read, write, and edit geospatial data in all formats supported by FDO. GIS data can be edited using standard AutoCAD operations and engineering-precision editing tools. Changes are written back to the data source in its native format. AutoCAD Map 3D customization often takes the form of a new extension or add-on that may be invoked from within the application and that simplifies or enhances out-of-the-box functionality. Custom extensions for AutoCAD Map 3D may involve importing proprietary data formats, streamlining repetitive analysis, or simplifying the display. RELATED For more information about AutoCAD Map 3D, see the following:
www.autodesk.com/map3d
Open Source, Autodesk MapGuide Enterprise offers simple deployment and flexible development options. MapGuide Open Source is an open source software development project run by the Open Source Geospatial Foundation, mapguide.osgeo.org. It is based on code originally donated by Autodesk, and is under active development with support from Autodesk and members of the geospatial community. Autodesk MapGuide Enterprise shares much of its code with MapGuide Open Source, and adds commercial-grade support, services, and quality assurance. The MapGuide products make mapping data available over the Internet or in a secure distributed environment. Remote users connect to a MapGuide site using a standard Web browser. The MapGuide viewer appears in the browser window. The viewer includes built-in tools for many standard operations like panning, zooming, and selection. Additional tools can be created with the MapGuide Web API, using ASP .NET, PHP, or Java/JSP as a development environment. Autodesk MapGuide Studio is a companion product that helps manage all aspects of preparing maps and geospatial data for distribution on the Internet. With MapGuide Studio, a user can select the data sources to display in the map, create and style the map layers, and customize the look, feel, and functionality of the application. Developers commonly customize Autodesk MapGuide Enterprise and MapGuide Open Source to integrate mapping capability with corporate or organizationally branded websites. The MapGuide interface may be customized to enhance its capability or the server component of MapGuide may be built upon to satisfy complex integration or analysis needs. RELATED For more information about Autodesk MapGuide Enterprise and MapGuide Open Source, see the following:
www.autodesk.com/mapguideenterprise mapguide.osgeo.org
Autodesk Topobase
Autodesk Topobase provides infrastructure design and asset management capabilities to users throughout an organization. You can use Autodesk Topobase to plan, design, and analyze geometric and attribute data graphically using the full capabilities of AutoCAD Map 3D and AutoCAD.
Autodesk Topobase | 5
Topobase Client a desktop client built on AutoCAD Map 3D, extending basic AutoCAD Map 3D functionality (such as visualization, creating, editing, and plotting) to include additional domain-specific functionality such as data and business rules, workflows, enhanced querying and analysis, and other database-driven capabilities. Topobase Web a Web application built on Autodesk MapGuide Enterprise, and used to share infrastructure and asset information to non-CAD users, and also to enable data creation, editing, and querying through a Web interface. Topobase Administrator an application for managing data structures in the Oracle Spatial database, controlling access to data, managing data and business rules, and to facilitate solution (module) development, customization and extension, including Web access. Industry-specific vertical modules extensions to Topobase with their own data models and business rules. Industry-specific modules manage specific classes of infrastructure, such as gas, water, waste water, and electric. Topobase data models may be modified to conform to the asset management needs of a particular domain or organization. Workflows and business rules provide repeatable and consistent processes throughout your organization.
Autodesk Topobase offers a range of customization alternatives for integrating Topobase with enterprise business applications, streamlining the user interface, or adding domain-specific functionality. RELATED For more information about Autodesk Topobase, see the following:
www.autodesk.com/topobase
with CAD objects for the purposes of visual inspection, positional correction, or even for high quality map and drawing creation. AutoCAD Raster Design allows AutoCAD users to effectively use scanned paper drawings, aerial photographs, digital elevation models (DEM), and satellite data inside your AutoCAD drawings. Users can insert bitonal, grayscale, and color raster images into your AutoCAD drawings, then correlate, edit, analyze, and export the results. Raster Design enables the analysis and display of image data from a wide range of sources, including satellite imagery, wavelet compressed images, and DEM, all within the AutoCAD environment. Raster Design also provides efficient tools for cleaning and archiving paper-based drawings in digital form. AutoCAD Raster Design is often customized to automate complex image editing workflows. RELATED For more information about AutoCAD Raster Design, see the following:
www.autodesk.com/rasterdesign
View, print, and publish DWF, DWG, DXF, DGN, JT, raster files
Measure, markup, and annotate tools Combine project data, such as images and specifications, in a single file Track status to manage engineering change orders Round-trip markup integration with Autodesk design software, so designers can overlay changes and comments on the original computer-aided design (CAD) file
RELATED For more information about Autodesk Design Review, see the following:
www.autodesk.com/designreview
Autodesk RealDWG
The RealDWG developer toolkit is a software library that allows C++ and .NET developers to read and write AutoCAD DWG and DXF files. This technology was formerly known as ObjectDBX. RealDWG is a subset of ObjectARX and contains the APIs for reading and writing AutoCAD DWG and DXF files. RealDWG is a self-contained toolkit that may be invoked within stand-alone software development environments and does not contain either data viewing capability or access to the AutoCAD User Interface. NOTE RealDWG works with drawing objects, but not with AutoCAD Map 3D object data or other extensions on CAD drawing elements. It cannot read or write any of the geospatial data managed with FDO. See Data Types on page 11 for details about CAD drawing objects and geospatial data. The RealDWG 2008 SDK is licensed to customers at a cost and subject to approval by Autodesk. RELATED For more information about RealDWG, see the following:
www.autodesk.com/realdwg
www.autodesk.com/dwftoolkit
10
Geospatial Data
Overview
Data is at the center of any geospatial application. Geospatial processing often involves combining data of different types from different sources. It is important that applications work with data in its original format whenever possible. Unnecessary data conversion adds extra work and introduces the possibility of data loss or inaccuracy.
Data Types
Common data types used in geospatial workflows include:
CAD Data
CAD data refers to the lines and symbols on a typical drafting page. A standard CAD drawing contains all its data within a single file, such as an AutoCAD DWG file. This makes it convenient to edit the file, but it limits the amount and types of data that can be stored together. Objects in a CAD drawing are called drawing objects, DWG objects, or AutoCAD entities. The objects are formed by lines and shapes on the page. The positioning of graphic objects in a drawing may represent the location of objects in the real world, but this is not necessarily the case. Although CAD drawings are generally
11
organized into layers, with similar types of objects on the same layer, this is not a strict requirement. For example, a single layer might contain both the drawing elements that represent hydrants and the water lines connecting them. In a CAD drawing, the hydrant and water line layer may even include the graphic representation of labels and attributes, referred to as annotation. Each individual object or annotation can have its own unique style.
will result in different visual results. For example, there could be a set of features representing property boundaries. For each feature representing an individual lot, the attribute data could also include the assessed property value and the allowable use for the property. A style that assigns colors to the lots based on the property value would produce a different result than a style that assigns colors based on allowable use. Assigning a style based on attribute values is also called theming.
Data Types | 13
DWF
One additional data format that should be discussed is the Design Web Format (DWF), which Autodesk developed as a specialized data format used for storing and sharing map and design drawing data. A single DWF file can contain a particular representation of an AutoCAD drawing or AutoCAD Map 3D map, somewhat like an electronic version of a single printed map. DWF is used primarily for output. It contains a visual representation of the data, but it does not have the additional information that describes individual features or their attributes. This results in a much smaller file size, which makes it an excellent way to distribute maps and other drawings. Autodesk Design Review offers a way for users of Autodesk technology to add annotation to a DWF file without altering any of the original data. Using Design Review, technical and nontechnical users can collaboratively share, review, and mark up drawings. RELATED For more information about DWF, see the following:
Data Sources
GIS data is found in more diverse sources and formats than CAD data. A complex geospatial workflow may include the use of GIS data from files on the local file system, from data in a relational database, and even from data on the Web. Common GIS data sources include:
Relational Databases
Some relational databases, such as Oracle, have been adapted for storing geospatial data. These spatial databases have additional functionality for managing geographic data, including the ability to store GIS feature data and create queries using geometric comparison. For example, using a spatial database, it is possible to find all features that lie within a geographic area, or that cross a certain road, without invoking a traditional GIS application to perform the spatial analysis. Because spatial databases have been optimized for data retrieval and editing, access may be faster than by using other methods when working with large quantities of data. Applications working with large data sets or that have large numbers of users will often require the use of a relational database for the storage of some geographic and attribute information. Both feature data and raster data can be stored in spatially enabled relational databases. Many geospatial workflows also require the analysis of non-spatial
Data Sources | 15
attribute data combined with geographic features. In modern enterprise systems, most non-spatial attribute data is stored in relational databases. Through FDO, many Autodesk applications have the capability to access both spatial and non-spatial data stored in relational databases.
Web Services
A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. The Open Geospatial Consortium (www.opengeospatial.org) has created standards for geospatial Web services, including Web Map Service (WMS) and Web Feature Service (WFS). Web services that implement WMS and WFS standards may be called to request map images or geographic features, respectively. These standards define HTTP requests that can be sent to a Web server. The Web server processes the request and returns a map image or other geospatial data. A WMS server returns an image suitable for display in a Web browser. The HTTP request for the WMS contains parameters including values such as the map area to display, the spatial reference system to use, the size of the image, and the image format. Using image formats that support transparency, it is possible to build a map by overlaying images representing different layers. A WMS server can optionally return information about features close to a specific point on the image. This could be used, for example, in an application that first queries the WMS server for a map image, then allows the user to click on the image for more information about a specific feature. A WFS server returns a list of geographic features, in XML format. Optionally, the WFS server can also allow editing of feature data. Because it is more capable than WMS, the WFS specification is more complex, with more options. At a minimum, though, a WFS server must be capable of returning a list of features within a given boundary that satisfy certain other conditions. WFS servers use the Geography Markup Language (GML) for encoding data. RELATED For more information about WMS and WFS, see the following:
Overview
The Autodesk geospatial products are closely related to each other. They share common data formats, and in many cases they even share components. Some desktop products, such as AutoCAD Map 3D and the Topobase desktop client, are built on the AutoCAD platform, with specific extensions for working with geospatial data. The Topobase Web application is built on Autodesk MapGuide Enterprise. Some other products, such as Autodesk Design Review, are stand-alone products for working with specific file formats. Full details are provided in the description of each product.
AutoCAD Map 3D
One of the strengths of AutoCAD is the way its technology can be incorporated into other products such as AutoCAD Map 3D. AutoCAD Map 3D is a stand-alone application, built on top of AutoCAD, that behaves as a desktop application. Customization of AutoCAD Map 3D always requires the invocation of the full AutoCAD Map 3D application.
17
As shown below, AutoCAD Map 3D extends the functionality of AutoCAD in a few different ways:
Managing maps and layers containing drawing objects or geospatial feature data. Bringing geospatial data into the AutoCAD Map 3D working space so it can be displayed and edited using standard CAD operations. Styling geospatial data using standard GIS methods. Extending the capabilities of drawing objects so they share many of the features of geospatial data. For example, object data attached to a drawing object is similar to attributes or properties of a GIS feature.
AutoCAD Map 3D
Managing maps and layers Reading and writing geospatial data via FDO Analyzing and manipulating using the Geospatial Platform API Styling geospatial data Attaching object data to drawing objects Classifying drawing objects Combining drawing objects from multiple DWG files
AutoCAD
Standard CAD operation for creating and editing drawing objects Basic framework for customization, adding commands and menus
MapGuide Architecture
The server tier handles data access and manages the resources on the site. The site server controls access to the resources based on user and group identification. It also performs computationally intensive operations like creating and rendering maps. NOTE In a MapGuide installation, resources include the elements required to create and display a map, such as data sources, layer definitions, and map layouts. Data sources describe what data is being used in the map, and where it is located. Layer definitions describe which data source to use for a layer and how it should be styled. Map definitions describe which layers form the map, and it what order. Internally, all resources are stored as XML documents. The web tier manages communication between the server tier and the client tier. The web tier includes the MapGuide Web Server Extensions, which are accessed through the Web API. This API includes the Geospatial Platform API for data access and analysis, plus classes and methods specific to MapGuide.
See Geospatial Platform API Concepts on page 30 for more details. MapGuide applications use the Web API for all data access and analysis functions. User interaction happens in the client tier. Thin client applications only require a Web browser, but the thick client applications require additional programs installed on the client computer. Two applications are available as authoring tools used to define resources on the MapGuide server. Autodesk MapGuide Studio offers the most functionality. It handles all aspects of preparing maps and geospatial data for use with MapGuide. MapGuide Web Studio is a free, open source, Web-based authoring tool for defining data source, layer, and map resources. It is an AJAX application that works across platforms and with multiple Web browsers including Firefox, Safari, and Internet Explorer. MapGuide Web Studio is included with MapGuide Open Source. Most users who interact with MapGuide will see the viewer applications that make up the client tier. The viewer applications display the map and handle user requests, most of which are sent to the web tier for processing. The MapGuide DWF Viewer runs as a browser plug-in inside Internet Explorer on Windows. It uses Autodesk Design Review for its core functionality. The AJAX Viewer is a JavaScript application that runs within most standard Web browsers, including Mozilla Firefox, Safari, and Internet Explorer. Buttons and commands in a viewer will often invoke operations that are processed by the web tier. RELATED For more information about Autodesk MapGuide Enterprise, Autodesk MapGuide Studio, and MapGuide Open Source, see the following:
Autodesk Topobase
Topobase provides organization-wide access to spatial information from engineering, GIS, operations, and business teams. Data is stored in an Oracle Spatial database, which provides the security, integrity, and performance required for an enterprise-level application. The Topobase desktop client is built on AutoCAD Map 3D, with additional industry-specific modules. The
Topobase Web applications are built on Autodesk MapGuide Enterprise, and provide the ability to deliver data wherever it is needed.
Topobase Architecture
Application Server
Client
Topobase Administrator
Legacy GIS
Electric
CRM
Partner App
Wastewater
Electric
Survey
Land
Gas
The following table shows the API components that together make up the Topobase API. API component
Server API Framework API Forms API Feature Rules API Map API Utility API
Applies to:
Server-side : Loaded into Oracle db Client-side : TB Client, Web, & Administrator
Technology
Java and PL/SQL C#, VB.NET
Autodesk Topobase | 21
Land
Gas
Data Models
Survey
Water
API component
Workflows API Modules API Templates API Plug-ins
Applies to:
Technology
Overview
The APIs for Autodesk geospatial products provide a wide range of customization options, from basic automation to more complex data manipulation and analysis. Using the APIs it is possible to extend the functionality of the products to fit the needs of diverse organizations. Some of the APIs ship with the products, but others require using a separate software development kit (SDK). Full details are provided in the description for each product. AutoCAD Map 3D API Summary API
Map 3D ObjectARX API
Language
C++, .NET
Customization Capabilities
Working with drawing objects, object data, and drawing sets. Working with geospatial feature data, coordinate systems, and geometric analysis Maps, layers, and resources in AutoCAD Map 3D Simple automation,including working with some Map 3D functionality such as drawing sets, queries, and object data.
.NET
.NET
ActiveX API
VB, VBA
23
API
AutoLISP API
Language
AutoLISP
Customization Capabilities
Similar capabilities as the ActiveX API, plus support for map plotting and topology. Advanced functionality for working with geospatial feature data sources.
C++, .NET
Autodesk MapGuide Enterprise and MapGuide Open Source API Summary API
Geospatial Platform API
Language
ASP.NET, PHP, Java/JSP JavaScript
Customization Capabilities
Working with geospatial feature data, coordinate systems, maps, layers, and geometric analysis. User interaction in the Viewer, communication with the Web tier. Loading and managing data in the site repository. Available with Autodesk MapGuide Studio.
Viewer API
Studio API
C++
Language
.NET
Customization Capabilities
Wide range of capabilities including: Database access (full Oracle Spatial support) Reading and writing Topobase features Job (long transactions) handling Working with feature rules and forms User interface and workspace management Interaction with documents, workspaces, maps, and layers Working with Topobase Administrator Customization of Topobase Client
API
Language
Customization Capabilities
Creation of Vertical Applications and plug-ins
Server-side API
Java, PL/SQL
Direct interaction with the Oracle database, including methods for working with geometry, features, and topology. Much of this capability is exposed in the Client/Framework API, so the Server-side API is not usually used for application development.
Language
C++, .NET
Customization Capabilities
Full customization of the AutoCAD environment, including: Accessing the AutoCAD database Interacting with the AutoCAD editor Creating user interfaces using the Microsoft Foundation Classes (MFC) Supporting the multiple document interface (MDI) Creating custom classes Building complex applications Interacting with other programming environments
VB, VBA
Basic automation using standard AutoCAD objects. Can also be integrated with other applications that use VBA, such as Microsoft Office.
Overview | 25
API
AutoCAD AutoLISP API
Language
AutoLISP
Customization Capabilities
Basic automation using standard AutoCAD objects.
Language
VBA
Customization Capabilities
Importing, managing, and exporting raster images.
Language
.NET, JavaScript
Customization Capabilities
Customizing the tools and commands available in Autodesk Design Review and the DWF Viewer. SDK for creating applications to read and write DWF files. Separate download. Windows printer driver for creating DWF files from any Windows application. Distributed with Autodesk Design Review.
DWF Toolkit
C++
DWF Writer
Legacy APIs
The legacy APIs provide simple automation, but are not recommended for new application development.
Map 3D ActiveX API Map 3D AutoLISP API AutoCAD ActiveX API AutoCAD AutoLISP API
New application development should use the .NET APIs wherever possible. These provide access to the most complete functionality.
Legacy APIs
The AutoCAD Map 3D ActiveX and AutoLISP APIs cover Autodesk Data Extension functionality (ADE), which includes drawing sets, queries, and object data. The AutoCAD Map 3D AutoLISP API also covers map plotting and topology. These APIs do not include functions for newer AutoCAD Map 3D features, such as access to geospatial data through FDO. Because of this, they can be used for some basic automation, but should not be used for new application development. The legacy APIs are installed with AutoCAD Map 3D. Documentation is available from the Help menu.
All MapGuide APIs are installed with the product. There is no need to install a separate SDK.
Web API
The Web API is available to applications running on the web tier. It includes the Geospatial Platform API plus some classes and methods that are specific to MapGuide. See Geospatial Platform API Concepts on page 30 for more details about the Platform API. The Web API is available in ASP .NET, Java/JSP, and PHP.
Viewer API
The Viewer API is a JavaScript API used by the AJAX Viewer and the DWF Viewer. Nearly all calls are identical between the two Viewers. The Viewer API contains methods for panning, zooming, digitizing, and other interaction with the Viewer. It also contains methods for submitting requests to the Web tier. Most MapGuide custom applications will use a combination of Web API and Viewer API calls.
Studio API
The Studio API is a .NET API used by Autodesk MapGuide Studio for loading data into the site repository. Use this API to automate load procedures for external data sources.
Most of the API is shared between the products. Differences in implementation are usually a result of differences in the underlying architectures of the products. Some significant features of the API are:
Standardized methods for reading and writing data from different sources, including SHP, SDF, and Oracle Spatial databases. Flexible methods for defining geometries and geometric objects. Methods for geometric analysis, including common spatial operations like intersection, union, and difference. Coordinate system geometry, including coordinate system conversion. Supporting classes for events, collections, and similar objects.
For AutoCAD Map 3D, the Geospatial Platform API is available as a .NET API, and can be called from any .NET language. For MapGuide Enterprise and MapGuide Open Source, the Geospatial Platform API is available in ASP .NET, Java/JSP, and PHP. There are minor differences due to the syntaxes of the languages, but other than that the API is consistent across all languages. MapGuide has the simplest implementation because it works exclusively with feature sources managed by FDO. AutoCAD Map 3D is more complex because it also works with CAD drawing objects. Resources in the Geospatial Platform API are XML streams that define the components of a map. Some of the different resource types are:
FeatureSource, which contains the necessary information to connect to and work with an FDO feature source. LayerDefinition, which describes the features in a map layer and how they should be styled. MapDefinition, which describes the map layout.
Resources are managed by the Resource Service. Working with the resource service requires reading, writing, and modifying the XML. Other services use the resources. For example, the Feature Service uses FeatureSource resources when it connects to FDO data sources.
The implementation for AutoCAD Map 3D is slightly different because it is built on the AutoCAD platform. In MapGuide, resources are stored in the site repository. Some resources are available to all MapGuide sessions, while others are restricted to individual sessions. In AutoCAD Map 3D, resources are stored internally in the DWG file. This means that resources cannot be shared between different maps. Each must have its own copy of any resources. AutoCAD Map 3D uses AutoCAD drawing tools for editing features. The Feature Service makes the necessary translations between AutoCAD drawing objects (AcDb entities) and Platform API geospatial features.
Rendering
AutoCAD
Acdb
Rendering
AutoCAD
Acdb
Plug-ins
Plug-ins are client-side extensions to Topobase that enable you to customize Topobase Client, Topobase Web, and Topobase Administrator to the requirements of your organization. As .NET class libraries that you can develop in any .NET language, plug-ins can customize a user interface, manage a workspace, and control how users interact with documents and workspaces. When you create a plug-in, you must also create a Topobase Plug-in (TBP) file. This file is an XML file with a .tbp file name extension that tells Topobase how to handle your plug-in.
Client API
The Topobase Client API is 100% managed code and provides access to key components of Topobase. For example, the API enables you to insert, modify, and delete features, and to work with topics (groups of feature classes) and domains (sets of values defined for feature attributes).
Data layer
As well as support for standard database transactions, the Topobase API fully supports Oracle Spatial for managing geospatial objects and data in an Oracle Database. It reads and writes features (rows) and provides typed access to feature classes (tables). The long transactions interface includes routines for
job handling and merging. There is also support for working with client-side feature rules and for creating custom feature rules.
Map layer
For map services and coordinate systems transformations, the map interface of the Topobase API includes over fifty methods that work as they do in AutoCAD Map 3D, for client-side operations, and as they do in MapGuide Enterprise for the Web.
Vertical modules
Several Topobase API components help you develop new Vertical Application Modules:
Structure updates the API provides basic capabilities for maintaining data models Workflows Feature rules
Workflows
The Topobase Workflows API enables you to create custom plug-ins that use workflows to guide users through complex tasks, such as data acquisition, analysis, and reporting.
Feature rules
Feature rules are methods and triggers for processing data according to predefined algorithms. The methods and triggers operate when certain events occur and you can use them to control tasks such as checking data consistency, correcting data, or to add new capabilities.
Server-side API
The Topobase server-side API enables you work directly with the Oracle database using Java and PL/SQL. The API includes Java packages with classes and methods for data management and for working with geometry, features, and topology.
Creating new FDO providers Creating applications that use the FDO API to read and write feature data
Working with data from a new format simply requires using a provider for that format. There is no need to make any changes to the main application. The FDO provider model includes support for the following types of data:
File-based feature data, such as SHP and SDF File-based raster data, such as JPEG and TIFF Relational databases, such as Oracle Spatial and MS SQL Web services, such as WMS and WFS
The FDO API provides methods for querying the capabilites of a provider, to determine what kinds of data it handles and what can be done with the data. FDO is used internally in AutoCAD Map 3D, Autodesk MapGuide Enterprise, MapGuide Open Source, and Autodesk Topobase for access to geospatial data. The standard APIs for these products can handle most data access, but the
FDO API is also exposed in some Autodesk products so custom applications can use it when needed. FDO is a project of the Open Source Geospatial Foundation, fdo.osgeo.org. Autodesk products using FDO ship with providers to handle most types of geospatial data. Other providers are available from the Open Source Geospatial Foundation.
InfoInformation about an image in the AutoCAD drawing. InsertInsertion of images of many different types and formats into an AutoCAD drawing. ListRetrieving the object id of the image from model space or paper space WriteSaving images in AutoCAD to the same or different formats
Detailed information about the Raster Design ActiveX interface may be found in the Autodesk Raster Design ActiveX Reference help file that is installed with the product. The help file contains detailed examples covering nearly every object and method that is discussed.
Using the Design Review API you can tailor Design Review and DWF Viewer interfaces to your own requirements. For example, you can hide or show certain toolbars so that you control the capabilities available to your users. The Design Review API documentation is available from the Developer Tools link on the DWF Developers page at www.autodesk.com/dwf-developers.
ObjectARX applications always require AutoCAD as their host application. RealDWG does not require the presence of AutoCAD software. RealDWG is used to create host applications, but ObjectARX is not.
DWF Core provides cross-platform support DWF Toolkit manages DWF files as packages WHIP Toolkit manages 2D streams W3D Toolkit manages 3D streams
Using the DWF Toolkit you can write applications that can perform the following tasks:
Reading and writing 3D DWF files from any application Creating simple 2D interfaces Reading and writing composite DWF files (3D and 2D combined)
The current version of the toolkit handles DWF files generated by AutoCAD 2008 and other Autodesk design software. The DWF Toolkit is available from www.autodesk.com/dwftoolkit.
40
Overview
The different geospatial APIs and SDKs all have their own sets of sample applications. This roadmap does not cover all the samples in detail, but concentrates on some of the more recent APIs, especially the Geospatial Platform API in AutoCAD Map 3D, Autodesk MapGuide Enterprise, and MapGuide Open Source.
AutoCAD Map 3D
AutoCAD Map 3D Geospatial Platform API
The Geospatial Platform API samples for AutoCAD Map 3D are installed with the AutoCAD Map 3D SDK, in the folder SDK_dir\MapSamples\Platform. Currently, the samples are available as C# projects for use with Microsoft Visual Studio 2005. The ReadMe.txt file in each sample folder provides more details about building and running the sample.
BuildMap
The BuildMap sample demonstrates how to connect to external geospatial data and use it to create a map in AutoCAD Map 3D. It brings in vector data for land divisions, point data for traffic signal locations, and a raster image overlay. It
41
also includes a few additional commands for changing how the layers are displayed.
BuildMap Output
FindIntersects
The FindIntersects sample loads external data representing roads in a city. The roads are made up of road segments, where each segment is a feature in the feature class. FindIntersects is very similar to FindIntersectsMG, which works with Autodesk MapGuide Enterprise. This is a good example of how the Geospatial Platform API spans the different products. Running the FindIntersects command creates another layer in the map, with points showing where road segments intersect.
FindIntersects Output
GenerateAnnotation
The GenerateAnnotation sample loads point data representing the locations of traffic signals from an external SDF file. The points in the file have attribute data, containing fields such as the address and owner of the traffic signal. Running the GenAnnotation command adds annotation blocks to the points, containing the attribute fields from the feature class. This sample demonstrates bringing in feature data in via the Geospatial Platform API, and using it to create annotations with the ObjectARX .NET API.
GenerateAnnotations Output
InputEditor
The InputEditor sample creates an event handler that is triggered whenever a new vector feature is added to a map. The event handler displays a data table that prompts the user for the attribute data required for the new feature. It reads the list of attributes from the feature source and uses that to generate the rows in the input table.
InputEditor Data Table
NetworkTrace
The NetworkTrace sample loads data representing a road network. The user selects a start point and an end point in the network, and the application traces a path on the network between the two points.
NetworkTrace Output
PolygonOperation
The PolygonOperation sample loads a simple file showing two overlapping polygons. The user can select the polygons and perform one of the following geometric comparisons:
PolygonOperation Difference
PolygonOperation Union
PolygonOperation Intersection
PolygonOperation Subtraction
SpiderNetwork
The SpiderNetwork sample loads data from two separate SDF files. One of the files contains point data representing the locations of police stations and the other file contains point data representing the locations of crime scenes. The feature class for the crime scenes also contains attribute data that identifies the police station that responded to the crime. Running the spider network command creates a third layer that contains lines connecting the crime locations with the responding police stations. This demonstrates how to combine data from different feature classes.
SpiderNetwork Output
simple examples, corresponding to chapters in the Developers Guide, which show how to use different parts of the API more complex examples, showing how a finished application might work
In addition, Autodesk MapGuide Studio, a separate product designed to work with Autodesk MapGuide Enterprise, includes a set of samples showing how to load data into the MapGuide site repository using the Studio API.
Hello Viewer
This sample shows different ways of calling MapGuide Viewer API functions.
Custom buttons are added to the tool bar, task list, and context menu. When the user clicks the button, the sample calls the Viewer APIs ZoomToView() method to reposition the map to a specific location. The sample also shows how to call the same method from links in the task pane beside the map.
Layer Visibility This sample shows how to retrieve information about a maps layers. When the user clicks a link, it lists the maps layers and their current visibility status.
Rename Roads Layer This shows how to manipulate layers. When the user clicks a link the sample renames one of the maps layers.
Query Features Shows how to list particular features, for example all the properties owned by a specified person. Set Active Selection Shows how to select certain features, just as if the user had selected them manually. For example, select all the properties owned by a specified person. List Selected Features Lists information about the currently selected features.
Change Layers via DOM Shows how to create a layer by using the Document Object Model. For example, color code all the buildings build after 1980. Create Square Footage Layer Shows how to create a new layer with color coding styles (theming) applied to areas. For example, how to create a layer color coding parcels by square footage. Create Hydro Line Layer Shows how to create a new layer with theming applied to lines. For example, how to create a layer showing rivers. Create Points of Interest Layer Shows how to create a new layer with theming a applied to points. For example, how to create a layer with marker icons at particular points of interest.
Analyzing Features
This example show various ways you can analyze the maps data.
Create Buffer Creates a buffer around a selected parcel. The buffer is drawn on the map and shows all the parcels within a specified distance from the selected parcel. Find Features In Buffer Lists information, such as the name of the property owner, for all the parcels in the buffer.
Digitizing Shows how to convert a users mouse clicks to map coordinates. Redlining Shows how to enable the user to draw lines on a map.
Custom Output
This sample shows how to prepare versions of the map ready for printing or electronic distribution.
Property Report Shows how to create a printable page with an image insert of a selected property. eMap Shows how to create and display an eMap, which is a form of DWF that contains metadata that allows a DWF viewer to connect to the MapGuide server to display the map. An eMap is a compact format, but it requires access to the MapGuide map agent via the Internet or a company intranet. ePlot Shows how to create and display an ePlot, which is designed for offline viewing and printing. Each map sheet in an ePlot is a complete map image that can be viewed offline using Autodesk Design Review. Multi Plot
Shows how to create and display a multi-plot, which is an ePlot with multiple map sheets.
Viewer Samples
The Viewer samples are more complex than the Developer Guide samples. They show some techniques for application development using Autodesk MapGuide Enterprise. Functionally, these three samples are the same, but they demonstrate different Viewer technology. The samples are:
Using DWF Viewer Using Ajax Viewer Using Tiled Ajax Viewer
Connect to a MapGuide site and create a session. Query feature data and work with geometry. Change the view of a map from server-side script. Read and manipulate XML based resources. Store temporary resources within a session. Plot a map as an ePlot DWF.
DwfLoadProcedure Class DwgComponent.Children Property DwgLoadProcedure Class RasterLoadProcedure Class SdfLoadProcedure Class ShpLoadProcedure Class
Autodesk Topobase
The Topobase Developer's Guide describes the purpose and the operation of over 75 samples. The samples are available in both the C# and VB.NET
languages and show you various aspects of the Topobase API including how to perform the following tasks:
Creating users Connecting to and communicating with the database Customizing the user interface Creating workflows
To work with the Topobase API samples in Microsoft Visual Studio, open the solution files in either the Development\Samples\CSharp directory or in the Development\Samples\VB.Net directory of the Topobase Client installation.
creatent shows how to build a simple console application that creates an AcDbDatabase, adds an entity to it, and writes it to a DWG file dumpdwg is a console application that reads DWG files and reports information on their contents dotnet/dumpdwg shows how to create a VB .NET host application with the same capabilities as the C++ dumpdwg sample application polysamp demonstrates how to create a custom object enabler and wrap it in an ActiveX Automation wrapper
Index
A
AcDb entities, in AutoCAD Map 3D 32 AJAX Viewer 20 annotation 4 APIs 23 application programming interfaces, see APIs asset management 5 attached DWG files 15 attributes, of a feature 12 AutoCAD 3, 11, 29 drawing objects 11 ObjectARX APIs 29 SDK 29 AutoCAD entities 11 AutoCAD Map 3D 2, 4, 1718, 26, 28 29, 32 ActiveX API 29 APIs 26 architecture 17 AutoLISP API 29 drawing tools 32 extensions to AutoCAD 18 FDO API 28 Geospatial Platform API 28 Map 3D Platform API 28 ObjectARX APIs 29 Resource Service 32 SDK 2829 AutoCAD OEM 3 AutoCAD Raster Design 3, 6, 22, 37 API 37 architecture 22 Autodesk Design Review 3, 7, 14, 22, 37 API 37 architecture 22 Autodesk DWF Toolkit 3, 9, 39 API 39 Autodesk MapGuide Enterprise 2, 4, 18 20, 2930 AJAX Viewer 20 APIs 29 architecture 18 client tier 20 DWF Viewer 20 Viewer API 30 Web API 19, 30 Autodesk MapGuide Studio 5, 20, 30 Studio API 30 Autodesk RealDWG 3, 8, 38 API 38 Autodesk Topobase 2, 5, 2021, 3336 API components 21 APIs 33 architecture 20 client API 34 data layer 34 feature rules 35 map layer 35 plug-ins 34 server-side API 36 support for Oracle Spatial 34 user interface layer 35 vertical modules 35 workflows API 35
C
CAD data 15 CAD layers 11 client API, in Autodesk Topobase 34 client tier, in Autodesk MapGuide Enterprise 20 collaboration, with drawing files 7 coordinate systems 31 customization options 23
D
data layer, in Autodesk Topobase data sources 14 data types, for FDO 36 34
Index | 57
DEM 13 Design Review 3 Design Web Format (DWF) 7 digital elevation models (DEM) 7 drawing files, marking up 7 drawing objects 11 drawing objects, in AutoCAD Map 3D 4 drawing tools, in AutoCAD Map 3D 32 DWF files, creating from DWG files 7 DWF files, reading and writing 9, 39 DWF Toolkit 3 DWF Viewer 20, 38 DWF, description 14 DWG files 7, 11, 15 attached 15 multiple 15 DWG files, in AutoCAD Map 3D 4 DWG files, reading and writing 8, 38 DWG objects 11 DWG TrueView 7 DXF files 7 DXF files, reading and writing 8, 38
geometry, API for 31 georeferencing 13 geospatial data, in AutoCAD Map 3D 18 Geospatial Platform API 28, 3031 AutoCAD Map 3D 28 Resource Service 31 GIF 15 GIS feature data 12
I
infrastructure design 5 Internet Explorer, embedding Autodesk Design Review 37 Internet mapping 5
J
JPEG 15
L
LayerDefinition resource type 31 layers, in AutoCAD Map 3D 18
E
entities, AutoCAD 11
M F
FDO 2, 28, 36 API 28, 36 data types 36 providers 28, 36 FDO, in AutoCAD Map 3D 4 feature class 12 Feature Data Objects, see FDO feature rules, in Autodesk Topobase feature, definition 12 FeatureSource resource type 31 file-based data 15 Map 3D 2 map layer, in Autodesk Topobase 35 MapDefinition resource type 31 MapGuide Enterprise 2 MapGuide Open Source 2, 4, 18, 29 APIs 29 architecture 18 MapGuide Studio, see Autodesk MapGuide Studio MapGuide Web Studio 20 maps, in AutoCAD Map 3D 18 Microsoft Internet Explorer, embedding Autodesk Design Review 37 Microsoft Office, embedding Autodesk Design Review 37 multiple DWG files 15
35
G
geographic information system, see GIS geometric analysis, API for 31
58 | Index
O
object classification 4 ObjectARX 8 ObjectARX, differences with RealDWG 38 ObjectDBX 8 objects 11 Open Source Geospatial Foundation 5, 28, 37 Oracle Spatial 15, 31 Oracle Spatial database, in Autodesk Topobase 20 Oracle Spatial, in Autodesk Topobase 34
scanned paper drawings 7 SDF files 15, 31 server-side API, in Autodesk Topobase 36 SHP files 31 site server, in Autodesk MapGuide Enterprise 19 spatial data format, see SDF files spatial databases 15 Studio, see Autodesk MapGuide Studio style, for displaying GIS data 12 styling, in AutoCAD Map 3D 18
T
theming 12 TIFF 15 Topobase 2 Topobase Administrator Topobase Client 6 Topobase modules 6 Topobase Web 6
P
paper drawings, scanned 7 plug-ins, in Autodesk Topobase PNG 15 properties, of a feature 12 providers, FDO 28 providers, for FDO 36 34
U
user interface layer, in Autodesk Topobase 35
R
raster data 15 raster data, analysis and conversion 7 raster data, in GIS applications 13 Raster Design 3 raster images 7 RealDWG 3, 38 differences with ObjectARX 38 licensing 38 relational databases 15 Resource Service 32 in AutoCAD Map 3D 32 Resource Service, in Geospatial Platform API 31
V
vertical modules, in Autodesk Topobase 35
W
Web API, in Autodesk MapGuide Enterprise 19 Web Feature Service (WFS) 16 Web Map Service (WMS) 16 web services 16 web tier, in Autodesk MapGuide Enterprise 19 workflows API, in Autodesk Topobase 35
S
satellite data 7
Index | 59
60