Abstract | Full Paper | PDF | Printer Friendly Format

Page 2 of 3
| Previous | Next |


Design and Implementation of a COM-based Electronic Map System


Here TeleMapBase is the component of data organization and management, which organizes and manages the multi-scale vector and raster map and their attribute data, and implements the merging and precise positioning of maps, the overlapping of vector and raster maps, and the visualization of multi-scale maps. The general idea of multi-scale maps is to put the same scale data into one layer interface: TMGeoLayer, then set the attribute values of Minimum and Maximum Scale(MMS) in order to control the visual range of layer. During the zooming in or zooming out of the maps, the system can dynamically control how to visualize the different scale layers orderly according to their attribute values of MMS, so as to visualize multi-scale maps.

GeometryObject2D is the component of geometry elements, which manages all kinds of geometry element interfaces. Designing geometry element interfaces refers to the standard interface of OpenGIS, and geometry element interfaces provide the functions and algorithms of editing and analyzing the geometry data spatially.

TransportNetwork is the component of public bus line query, which gains the bus line data from the component of geometry elements firstly, then spatially queries and searches the best route of minimum transfer times and minimum distance.

VehicleNavigation is the component of road navigation. It refers to the road navigation data format GDF to construct one format which is made up of node, arc, route and many attributes such as pass, single direction, double direction and so on. It provides the function of querying the best route of minimum time and minimum distance in order to meet the different users’ need.

TeleMapDisplay is the component of map visualization, which visualize the vector and raster map data, draw the dynamic annotations, map symbols and so on. It can implement the projection visualization and symbolization of map by the component of map projection and symbolization. TeleMapSave is the component of database storage. Its function is to save the graphic data, attribute data and other descriptive data into database as the different formats such as Access, SQLServer or Oracle. When needing to use the saved data, we can open the database file by the interfaces of TeleMapSave, and obtain the information of database.

TeleMapTransferData is the component of transferring map data. Considering the variety of data, TeleMapTransferData provides one public transferring interface, which transfers the different data source to the customized data format in order to assure the security and utilizability of data.

TeleMapSymbol is the component of map symbolization, whose function is to symbolize topographic map and thematic map, and manage their symbol library.

TeleMapProject is the component of map projection, which implements the transform of most map projection, and can transform the geographic coordinate to the planar coordinate according to the different projection. It is called by TeleMapDisplay so as to visualize the map.

TeleMap, electronic map COM, is in charge of the other nine components and their communications of each other, which makes that the other nine components are not quoted by each other explicitly. Thus the other nine components can couple each other loosely to assure that they can not only be related with each other, but also take changes alone. At the same time, TeleMap can obtain all kinds of mouse and keyboard message, manage and implement the editing functions related with operation.

Component Structure
In TeleMap, different components are composed of different inner interfaces. Each component is taken as an independent module to some extent. At the same time, there are relations between those components. Now, take TeleMapBase and GeometryObject2D for instance, which illustrates their inner interfaces design and how to relate with each other.

TeleMapBase
TeleMapBase is the more complicated one in the nine components. It uses the structure Workspace-Map-Layer-Feature, to manage the data of electronic map. As in Figure 2, TMGeoWorkspace is the interface of workspace, which manages the collection of map: TMGeoMaps (TMGeoMaps is the collection of TMGeoMap); TMGeoMap is the interface of map, which manages the collection of layer:TMGeoLayers ( TMGeoLayers is the collection of TMGeoLayer), TMGeoLayer is the interface of Layer, which manages TMGeoFeatures (TMGeoFeatures is the collection of TMGeoFeature). TMGeoFeature represents one map feature, which manages the collection of field: TMFields(TMFields is the collection of TMField, and represents the collection of attribute data and geometry data). Each interface provides its own attribute interface, by which all kinds of attributes can be set and obtained.

GeometryObject2D
GeometryObject2D is the component of geometry elements, which manages the interfaces of geometry elements. There are all kinds of geometry elements, such as point, poly-line, Bezier line, polygon, rectangle, arc and route etc. They implement the basic interfaces: IGeometry2D, ISpatialRelation2D, ISpatialOperator2D, IWks, IGeometryTransform2D.

IGeometry2D is the interface of geometry, which provides the methods and attributes that are common to all geometry elements, such as dimension of geometry element, type of geometry element, clone of geometry element and bound rectangle of geometry element etc.

ISpatialRelation2D represents the interface of spatial relation in geometry elements. It provides the methods of spatial relations, such as contains, crosses, disjoint, equals, intersects, overlaps, touches and within etc.

ISpatialOperator2D is the interface of spatial operation in geometry elements. It includes the methods of usual spatial operations, such as distance, buffer, difference, intersection, union, symmetric-difference.

IWks is the input and output interface of geometry elements. It provides two major functions, one is to make the data of geometry element output one data block by the means of binary or text, the other is to interpret one data


Figure2: component structure



Figure 3 Derived relation of interface


block to the data structure of geometry element. IGeometryTransform2D is the interface of matrix transform. It includes the usual matrix transforms such as: move, scale, rotation. And it refers also to the complicated matrix transform. Generally, geometry elements must implement the basic interfaces above, As in Figure 3, it is the interface derived relation from Polygon2D class.

Page 2 of 3
| Previous | Next |