文档库 最新最全的文档下载
当前位置:文档库 › An object-oriented approach for integrating 3D visualization systems and GIS

An object-oriented approach for integrating 3D visualization systems and GIS

An object-oriented approach for integrating 3D visualization systems and GIS
An object-oriented approach for integrating 3D visualization systems and GIS

An object-oriented approach for integrating 3D

visualization systems and GIS

Ju rgen Do

llner*,Klaus Hinrichs FB 15,Institut fu èr Informatik,Westfa èlische Wilhelms-Universita èt,48149Mu ènster,Germany Received 15February 1998;received in revised form 30September 1998;accepted 30September 1998

Abstract

Visualization has become an integral part in many applications of GIS.Due to the rapid development of

computer graphics,visualization and animation techniques,general-purpose GIS can no longer satisfy the multitude of visualization demands.Therefore,GIS have to utilize independent visualization toolkits.This article examines how visualization systems can be used with and integrated into GIS.We analyze several key characteristics visualization toolkits should satisfy in order to be used e ciently by GIS.We show how GIS can provide visualization and animation features for geo objects by embedding the visualization system using object-oriented techniques.The concepts are described along with a new visualization and animation toolkit which provides extensible object-oriented technology for the development of visualization components for 2D,3D and time-varying data.The design of this visualization toolkit concentrates on a seamless integration of application-speci?c geo-data into visualization components,an open interface for di erent rendering techniques and an advanced management of data dynamics.#2000Elsevier Science Ltd.All rights reserved.

Keywords:ViSC;Visualization framework;Object-oriented visualization;Computer animation

1.Introduction

Visualization has become an integral part in many GIS and their applications.New advanced applications of GIS,e.g.in exploratory cartographic visualization,meteorological simulations,or seismic exploration,process three-dimensional and time-varying data.Inter-active 3D visualization evolves as a main stream tech-nology both in science and industry and is available even on low-cost PCs.

General-purpose GIS were originally designed for the classical 2D application areas and,hence,do often

not reˉect the state of the art in visualization.More-over,if a GIS implements its own visualization subsys-tem,it will be di cult or even impossible to integrate cutting-edge visualization technology.For example,state of the art visualization toolkits support real-time volume rendering for 3D data sets based on a clever usage of textures.Since the 3D graphics library OpenGL (Woo et al.,1997),the de facto industry stan-dard for 3D graphics,is available on most of today's machines,high-level visualization techniques are no longer restricted by graphic software limitations.

A few new,innovative toolkits for visualization and 3D graphics have been developed in the past,for example vtk (Schroeder et al.,1998),OpenInventor (Wernecke,1994)and MAM/VRS (Do llner and Hin-richs,1997a).These toolkits consist of sets of classes which can be included and compiled into application

Computers &Geosciences 26(2000)67±76

0098-3004/00/$-see front matter #2000Elsevier Science Ltd.All rights reserved.PII:S 0098-3004(99)00038-

2

*Corresponding author.Fax:+49-251-83-33755.

E-mail addresses:dollner@uni-muenster.de (J.Do llner),khh@uni-muenster.de (K.Hinrichs).

programs.In contrast to closed visualization systems such as AVS(Upson et al.,1989;for an overview see Slocum,1994)these toolkits provide the prerequisites for being extended and enriched by new visualization components due to their object-oriented architecture. In contrast to more monolithic GIS such as ARC/ INFO(Morehouse,1989),GIS should be based on a software architecture which allows developers to use or to integrate independent visualization toolkits and to extend the visualization capabilities with respect to the application domain by customized,application-speci?c visualization components.The GIS architecture should ensure that the application developer can choose the most appropriate visualization library and switch to another visualization toolkit if necessary.

There exist di erent strategies for coupling a visual-ization toolkit with a GIS.If the visualization toolkit has to be used as an independent system,e.g.Geom-view(Phillips et al.,1993),the GIS has to communi-cate with the visualization system by import and export?les(loose coupling).The main disadvantage of this approach is that visualization features are restricted by the?le exchange format and that dynamic or large data sets can hardly be transferred.Alterna-tively,the visualization toolkit could be integrated as part of the GIS(tight coupling),communicating either through shared data structures at the object level,or by object communication services(e.g.CORBA,Acti-veX).The main disadvantage of this approach is that the GIS has to link visualization objects and geo objects by customized software components.However, this approach allows for a direct and e cient com-munication between visualization toolkit and GIS.

In this paper,we describe how to integrate a GIS with a visualization toolkit by embedding visualization objects into the GIS and by specializing visualization classes by object-oriented techniques such as subclas-sing.In order to adapt the visualization system to the requirements of the GIS,visualization objects have to provide aˉexible,e cient and adaptable interface. The tight coupling of application-speci?c data manage-ment and the visualization objects is realized by view classes which use the concept of iterators to directly exploit data structures for specifying visualization pri-mitives.Since the application data structures are inte-grated with the visualization toolkit,data redundancies between the components are prevented and the seman-tics of application-speci?c data is available in all parts of the system.

2.GIS requirements for visualization toolkits

Visualization toolkits used by GIS must meet the requirements of the visualization of typical geo data and typical manipulation tasks.We identi?ed several key characteristics visualization toolkits should satisfy in order to be used e ciently by GIS.These character-istics include an e cient incorporation of geo data in visualization objects;an integrated management of data dynamics;high-level3D interactive manipulation features;exchangeable rendering systems and facilities for designing and recording animation sequences. These characteristics are discussed in the following.We have designed and implemented these concepts in an object-oriented manner in a new,prototype visualiza-tion toolkit,called MAM/VRS,which serves as a cus-tomizable visualization subsystem of any GIS.

3.Realization of GIS visualization requirements in MAM/VRS

The visualization toolkit MAM/VRS is an open framework for developing components for geo-based visualization and animation.MAM,the modeling and animation machine,supports high-level modeling of3D geometry and its dynamics.VRS,the virtual rendering system,is an object-oriented3D rendering system which provides a variety of graphics primitives and rendering techniques.

3.1.Application data structures for graphics primitives

Geo objects provided and maintained by GIS have to be transformed or linked to visualization objects in order to provide data to the visualization toolkit.Both the implementation e ort and the e ciency depend on the type of coupling.In MAM/VRS,visualization objects use application data as much as possible with-out copying the data into internal data structures. Most MAM/VRS visualization objects require so called iterator objects provided by the application and use these iterators to embed the necessary data.A3D point set object,for example,does not maintain an array of coordinates.It is associated with an iterator object and uses that iterator to inquire the coordinates each time the point set is rendered.It is up to the itera-tor's implementation to de?ne how that data is calcu-lated or how and where the data is stored.

3.2.Integrated and sophisticated management of time

Data dynamics encoded in time-variant geo data can be visualized by temporal animation.However,time can be used also to visualize features other than time. Non-temporal animations,for example,can be used to visualize spatial data uncertainty.For a detailed dis-cussion of the dynamic variables see MacEachren (1994)who points out that time as``powerful variable

J.Doèllner,K.Hinrichs/Computers&Geosciences26(2000)67±76 68

[F F F ]is likely to make the most substantial impact on

maps as visualization tool in GIS''.Thus,the visualiza-tion toolkit has to provide mechanisms for controlling and manipulating time in geo objects and for modeling the global time ˉow.

MAM/VRS models the geometry of a visualization and its dynamics symmetrically by two types of graphs:geometry graphs and behavior graphs .A geo-metry graph represents hierarchically nested 3D scenes in analogy to VRML scene graphs.A behavior graph complements a scene description by representing its dynamic aspects such as animations or user interaction capabilities.More abstract,behavior graphs model the time and event ˉows of a visualization.MAM/VRS provides high-level time building blocks which deform or distribute time according to time layouts.They are useful to build complex animations,such as a seman-tic-guided ˉight across a landscape (e.g.the virtual camera could control its acceleration with respect to the wind information at its current position).3.3.Integrated 3D interaction capabilities

3D interaction is important for the direct manipu-lation of geo objects.For example,in order to place a new building into a virtual landscape,the user needs a precise control mechanism in 3D space.3D interaction represents also the technical foundation for intelligent

dynamic maps.MAM/VRS supports 3D interaction by an internal ray-tracer.The ray-tracer calculates dis-tances and positions of 3D rays and 3D objects.For example,one could simulate a ˉight across a landscape and constrain the ˉight path to a certain altitude above the ground;the virtual camera would send out test rays in order to check and adjust its altitude.Note that ray-tracing does not refer to the image synthesis process:here,ray-tracing is an analytical tool applied to geo objects.Since all visual objects can be associ-ated with tag objects,the GIS can annotate any type of information it needs for identifying geo objects in virtual scenes.

3.4.Multiple 3D rendering techniques

GIS applications have di erent rendering require-ments:real-time rendering for interactive GIS appli-cations must use a di erent rendering technology than high-quality image productions used for computer gen-erated videos.VRS ensures that the same visualization application can change the underlying 3D rendering library without having to recode the application because of VRS's uniform and object-oriented inter-face.Currently,VRS supports OpenGL for real-time rendering and RenderMan (Upstill,1990),POV Ray (POV Team,1998)and the light simulation system Radiance (Ward,1994)for high-quality rendering

with

Fig.1.Realtime terrain visualization using OpenGL 2D textures and 2D detail textures.Lens ˉares are superimposed by transpar-ent textures.

J.Do èllner,K.Hinrichs /Computers &Geosciences 26(2000)67±7669

global illumination e ects.New rendering systems can

be integrated by implementing so called virtual render-ing engines .Fig.1shows a terrain rendered with OpenGL.To facilitate the navigation in the terrain,sun ˉares have been added.

3.5.Automated production of computer video sequences The generation of computer video sequences is a time consuming task.In particular,if data sets are large,the requirements of time and space are enor-mous.MAM/VRS facilitates the design and realization of computer animations due to its built-in time man-agement and multiple 3D rendering techniques.An animation can be planned and modi?ed with a fast real-time rendering system.To produce the ?nal video sequence,a high-quality rendering system can be plugged in without writing additional code.

4.Architecture of the MAM/VRS visualization toolkit The architecture basically consists of two layers,the MAM graphics layer and the VRS rendering layer.Fig.2shows the overall architecture of MAM/VRS.The rendering layer is responsible for the image syn-thesis based on low-level 3D rendering libraries,whereas the graphics layer is responsible for composing 3D scenes and specifying their dynamics.The virtual rendering system (Do llner and Hinrichs,1997b)provides graphics objects which represent graphical entities,e.g.colors,textures,geometric trans-formations and shapes.Shapes represent concrete 2D or 3D objects.The appearance of shapes is modi?ed by graphical attributes.Graphics objects are processed and evaluated by rendering engines which map graphics

objects to appropriate calls of the underlying 3D ren-dering systems.The application can de?ne new map-ping techniques by so called shape painters and attribute painters .Painters are objects which encapsu-late the code for the actual mapping.This way,develo-pers can add application-speci?c rendering functionality to their visualization system.

VRS is a thin object-oriented layer.Its virtual ren-dering engines do not have a signi?cant impact on the rendering performance compared to applications which access a rendering system directly.Moreover,the OpenGL rendering engine has been ?ne-tuned to achieve almost the same performance as native OpenGL programs.

The modeling and animation machine provides higher-level modeling techniques for visualization.MAM speci?es geometry nodes and behavior nodes and it is responsible for the management of geometry graphs and behavior graphs .Geometry graphs consist of geometry nodes and behavior graphs consist of behavior nodes.To visualize graphics objects,they have to be associated with geometry nodes.To ani-mate them,they are associated with behavior nodes.VRS and MAM are tightly coupled because MAM's geometry nodes and behavior nodes manipulate and operate on associated,shared graphics objects pro-vided by VRS.

The MAM/VRS toolkit is implemented as a C++https://www.wendangku.net/doc/2712043461.html,er interface bindings exist for the Microsoft Foundation Classes MFC,OSF/Motif and Tcl/Tk.On Windows platforms,visualization components can be developed as ActiveX components.

MAM/VRS objects can be used within the scripting language Tcl/Tk (Ousterhout,1994)in order to sup-port rapid prototyping of GIS applications,to take ad-vantage of the powerful and portable Tk user interface toolkit and to support interactive development and testing.The di erent application programming inter-faces ensure that the toolkit is independent of the win-dow system and the low-level 3D rendering library and that MAM/VRS is portable.The visualization toolkit can be used if at least OpenGL is available on the tar-get platform (e.g.Windows95/NT,most Unix sys-tems).

5.Integration of geo-data and visualization objects The interface between geo-data and visualization objects must be designed very carefully because the interface has a major impact on the transparency of the system and its overall performance.

If we choose a loose coupling,geo data structures and visualization objects exchange data basically in three

steps:

Fig.2.Architecture of MAM/VRS visualization toolkit.

J.Do èllner,K.Hinrichs /Computers &Geosciences 26(2000)67±76

70

1.Convert objects of the source component into an exchange format.

2.Store these intermediate objects.

3.Convert the intermediate objects into objects suit-able for the target component.

This loose coupling of components leads to pro-blems resulting from the potential data redundancy and from loss of information during the conversion processes.Hence,the semantics of the objects used by the application program is usually not accessible by the visualization component which naturally restricts visualization techniques.The loose coupling is the most popular interface provided by classical GIS.

In our approach,a tight coupling of GIS application and visualization toolkit is chosen.While most geo-data structures have been designed to meet the require-ments of GIS applications,the data model provided by MAM/VRS reˉects the needs of3D graphics and ani-mation.Of course,there is in general a certain analogy in the class hierarchies.For example,vector-based data classes provided by an application,e.g.polylines, polygonal regions and solids,can be represented by sets of line segments,triangles and simplices provided by the visualization toolkit.Furthermore,2D and3D meshes of triangles and simplices available in the visu-alization toolkit can be used directly for the visualiza-tion of the corresponding raster-based classes in most applications.However,we cannot expect to merge these class hierarchies due to their di erent semantics and requirements.The visualization toolkit should allow the GIS developer to add whatever is needed to visualize a speci?c type of geo object by subclassing existing visualization classes.In our approach,we inte-grate geo data structures and visualization by visualiza-tion view classes embedded in the visualization toolkit and by providing a uniform embedding in a scripting language.

6.Visualization view classes

Visualization view classes manage the mapping of application objects to graphics objects.By application object we mean any type of object which contains geo data,for example a DEM object.With respect to object-oriented design patterns(Gamma et al.,1995), a visualization view class is both an adapter class which converts the interface of one class into another interface clients expect and a mediator class which encapsulates how two types of objects interact.In general,a visualization view class will base the map-ping on the geometric and thematic data.In particu-lar,the tight coupling of the application objects and graphics objects is realized by specialized view objects, the iterator objects.The iterators provide an e cient way to establish a direct link between application ker-nel and visualization toolkit.An overview of the architecture of such an integrated system is given in Fig.3.

A visualization view class is associated with appli-cation classes and derives for these application classes iterator classes.These iterator subclasses are speci?c to the application classes and may take advantage of their internal data representation.The main purpose

of Fig.3.Architectural overview of integration of GIS application and visualization toolkit MAM/VRS.

J.Doèllner,K.Hinrichs/Computers&Geosciences26(2000)67±7671

iterators is the sequential access of geometric or graphics data in a form suitable for MAM/VRS.The conversion is carried out on theˉy without an inter-mediate storage.Furthermore,visualization view classes instantiate MAM/VRS graphics objects and connect them to iterators.

Visualization view classes can map application objects to graphics objects in various ways.Since most classes of graphics objects in MAM/VRS rely on embedded data provided by iterators,visualization techniques can be realized e ciently.

Example.Consider the visualization of a digital el-evation map(DEM)which could be represented in a database by the class DEM,a subclass of class Grid2D,i.e.a two-dimensional matrix of elevation information.Fig.4shows the class hierarchy described in this example.A DEM is visualized by an object of class Mesh provided by MAM/VRS. Mesh objects represent triangulated nxm meshes. The interface between Grid2D and Mesh is estab-lished by the iterator classes Grid2DVertexIterator and Grid2DNormalIterator,both are derived from class Iterator h Vector i,the base class of all MAM/ VRS iterators.Each iterator object is associated with an Grid2D object and a Mesh object.

If the DEM is requested to render itself,the Mesh object actually uses the iterator objects to inquire the coordinates and the color data.Both types of iterators perform a row-by-row scan of the DEM's elevation matrix.Iterator objects of class Grid2DVertexIterator return Vector objects,the3D point and3D vector class of MAM/VRS.Iterator objects of class Grid2-DNormalIterator return Vector objects which represent surface normal vectors of a DEM entry.The compu-tation of the normal vectors can be based on di erent rules,e.g.geometric normals.Iterators perform their computations on theˉy,i.e.no data storage or dupli-cation is required.

So far,the geometry of application objects has been linked to graphics objects.The thematic part of the ap-plication objects can be mapped either by additional graphics objects or by color information applied to existing graphics objects.It is up to the visualization strategy how to map thematic data.

Example.Consider again the visualization of a DEM.We have described how spatial coordinates and the normal vectors are embedded in graphics objects by Grid2DVectorIterator objects and Grid2-DNormalIterator objects.To visualize the landuse in-formation for a DEM,we assign colors to the mesh based on a thematic color scale.Colors are assigned to a mesh by a color iterator.In the example,we derive a color iterator class Landuse-ColorIterator which has to return Color objects.

A Color object contains the RG

B coe cients and the transparency coe cient.The color iterator will actually use the associated land use geo object to inquire land use information for a spatial pos-ition.

Alternatively,we could color the mesh with respect to the height of DEM entries,whereby the colors

are

Fig.4.Class diagram for DEM visualization.

J.Doèllner,K.Hinrichs/Computers&Geosciences26(2000)67±76

72

calculated based on a color scale.This approach can be implemented by the iterator subclass DEMHeight-ColorIterator.

Both land use and height information layers are visualized by the same paradigm:color iterators in?l-trate directly application semantics in MAM/VRS objects.We could also design an appropriate texture coordinate iterator to map an additional information layer onto the mesh.

Obviously,the concept of embedded data in graphics objects does not require explicit conversion of data between application and visualization subsystem and thereby an erroneous data redundancy between both components is prevented.The visualization directly accesses the objects of the application and transfers the information contained in the application into a format which can be processed by the low-level rendering engines underlying the visualization toolkit. This transfer is done each time an application object is rendered on the screen.To provide smooth animations and to speed up user-interaction(e.g.interactive exploration of3D scenes)graphics objects can be cached.However,the visualization view classes keep track of modi?cations to the application objects such that cached data is always updated if application objects have been modi?ed.

The tight coupling of application and visualization subsystem o ers extensible and customizable visualiza-tion techniques to GIS applications.For an application of our approach,see Bernard et al.(1998)who describes an interoperable object-oriented GIS-frame-work for managing,modeling and visualizing high-dimensional spatio-temporal data by an integrated sys-tem based on MAM/VRS and the iterator concept. Fig.5shows sample visualizations taken from this ap-plication.

7.Interactive modi?cation of geo objects

As a consequence of the tight coupling of GIS and visualization subsystem,it is easy to implement interac-tive modi?cation techniques for geo objects.The visu-alization toolkit MAM/VRS provides tag objects to assign application-speci?c identi?ers and group identi-?ers to visual objects.Tags represent the hooks for any type of geo object editor.Tags are created by visu-alization view classes and are associated with the graphical representations of geo objects.The tags are used to formulate scene requests and to build object-speci?c interactions.Interaction techniques can use tags to identify the relevant objects and to report them to the geo object editor.In addition,interaction tech-niques can use the built-in ray tracer to inquire spatial relationships of3D objects.

Since geo objects and their visual representations are connected by iterators,modi?cations apply directly to the visual representation as well as to the application. Moreover,3D interaction techniques developed in computer graphics can be exploited.For example,the height of a building located in a DEM can be interac-tively modi?ed by a3D scroll bar(i.e.a cylinder erected upon the landscape with a small slider box). Fig.6illustrates the dataˉow during an interactive modi?cation of application objects.

8.Embedding in an object-oriented scripting language

In general,scripting languages o er many advan-tages for high-level programming compared to system programming languages because they are easier to learn and understand,provide a tight binding to user interfaces and allow for rapid and interactive prototyp-ing(Ousterhout,1998).Their main disadvantage is that they cannot implement large object-oriented sys-tems.The interpretative tool command language Tcl (Ousterhout,1994),its GUI toolkit Tk and the object-oriented Tcl extension[incr Tcl](McLennan,1997) together represent a widely used and one of the most powerful object-oriented scripting languages.

The visualization toolkit MAM/VRS is implemented by C++libraries.To integrate the system at the appli-cation programming interface level,we have embedded it into the object-oriented scripting language[incr Tcl]. Our approach for embedding C++classes in[incr Tcl]is based on the following concept.For each C++ class there is one`mirror class'in[incr Tcl]whose class members have a one-to-one relationship to their C++ counterparts.For each object created in the C++ world,there is a`mirror object'in the[incr Tcl]world.

A mirror object delegates all requests to its corre-sponding C++object.That delegation guarantees op-timalˉexibility and performance.The complete functionality of the visualization toolkit is available through the[incr Tcl]interface.However,there is no lack of performance since the visualization functional-ity is not executed in the interpretative scripting language but in the native C++code.

If the application developer extends the visualization toolkit by new classes derived from the existing class hierarchies,these classes must be available to the[incr Tcl]interface as well.The same applies to application-dependent classes developed independently of MAM/ VRS which should also be available to the[incr Tcl] interface.To support the automatic integration of ap-plication-speci?c classes,a generator has been devel-

J.Doèllner,K.Hinrichs/Computers&Geosciences26(2000)67±7673

oped which creates the [incr Tcl]classes from infor-mation obtained by parsing the corresponding C++

header ?les.

The interpretative object-oriented scripting language [incr Tcl]also proved to be a valuable tool for devel-oping user https://www.wendangku.net/doc/2712043461.html, o ers a platform-independent collection of easy to customize user interface com-ponents.Due to the nature of a scripting language,user interface design can be done interactively.New parts of an application can also be developed in the scripting language,can be tested within the interpret-ative environment and can later be ported to C+

+.

Fig.5.Sample DEM visualization.(A)Hypsometric color tinting applied to terrain.Flight path is visualized by polyline.(B)Visu-alization of forest land use;trees are visualized by transparent textures.

J.Do èllner,K.Hinrichs /Computers &Geosciences 26(2000)67±76

74

9.Conclusions

GIS application development can pro?t from the in-tegration of object-oriented visualization toolkits.This

integration saves development and implementation e ort and ensures that up-to-date visualization tech-niques are available to GIS applications.

We identi?ed customizability as one of the main cri-teria for choosing a visualization toolkit.Most likely,no visualization toolkit will o er all the primitives or techniques required for a concrete GIS application.Therefore,the ability to customize the toolkit by means of object-oriented techniques such as subclas-sing and template instantiation represents an important characteristic a visualization toolkit should provide.Geo objects and their visual representations are best linked by coupling both types of objects using me-diators,e.g.iterator objects.In this way,both types of objects remain independent and can be developed within their own class hierarchy,but can communicate e ciently.In our experience,writing iterator classes can be easily implemented since they are just wrappers for existing GIS and visualization classes.

Time management features and animation features play a central role when visualizing the dynamics of data.The visualization toolkit should provide building blocks for specifying time ˉows and animation pro-cesses,otherwise animations have to be realized by the GIS developer.

Visualization toolkits for GIS should be able to use di erent rendering systems.Although today OpenGL represents a stable and powerful platform,this might change in the future due to the development of new rendering techniques.The exchange of a rendering sys-tem should not cause major code revisions but should

be supported by the visualization toolkit like in the case of the Virtual Rendering System VRS.

GIS development can further be facilitated by an object-oriented scripting language which interfaces both GIS objects and visualization objects.It allows for interactive and rapid prototyping of database,visu-alization and user interface components.The complete functionality of the visualization toolkit is accessible within the scripting language without a signi?cant loss of performance if the scripting language extension is based on delegation to the C++implementation.

Our future work includes the design and implemen-tation of a geo visualization toolkit and the develop-ment of visualization strategies for high-dimensional dynamic geo-data.Along with this project,the MAM/VRS visualization library will be extended and pro-vided under the GNU library public license (http://wwwmath.uni-muenster.de/~mam).

Acknowledgements

The authors would like to express their appreciation to Oliver Kersting and Tobias Gloth for their contri-butions to the MAM/VRS toolkit.

References

Bernard,L.,Schmidt,B.,Streit,U.,Uhlenku ken,C.,1998.Managing,modeling and visualizing high-dimensional spa-tio-temporal data in an integrated system.GeoInformatica 2(1),59±77.Do llner,J.,Hinrichs,K.,1997b.The design of a 3D rendering meta system.In:Proceedings of Eurographics

Workshop

Fig.6.Interaction between geo objects and their visual representations.

J.Do èllner,K.Hinrichs /Computers &Geosciences 26(2000)67±7675

on Programming Paradigms for Graphics'97,Budapest, Hungary.

Do llner,J.,Hinrichs,K.,1997a.Object-oriented3D model-ing,animation.Journal of Visualization and Computer Animation8(1),33±64.

Gamma, E.,Helm,R.,Johnson,R.,Vlissides,J.,1995.

Design Patterns.Elements of Reusable Object-Oriented Software.Addison-Wesley,Reading,MA. MacEachren,A.,1994.Time as A Cartographic Variable.In: Hearnshaw,H.,Unwin, D.J.(Eds.),Visualization in Geographical Information Systems.John Wiley and Sons, Chichester,pp.115±130.

McLennan,M.,1997.Object-Oriented Programming with [incr Tcl].In:Harrison,M.(Ed.).O'Reilly and Associates, Sebastopol,CA,pp.7±66.

Morehouse,S.,1989.The architecture of ARC/INFO.In: Proceeding Auto-Carto9Conference,pp.266±277. Ousterhout,J.,1994.Tcl and the Tk Toolkit.Addison-Wesley,Reading,MA.

Ousterhout,J.,1998.Scripting:higher level programming for the21st century.IEEE Computer31(3),23±30. Phillips,M.,Levy,S.,Munzner,T.,1993.Geomview:an interactive geometry viewer.Notices American Mathematical Society40(8),985±988.

POV Team,1998.Persistency of Vision Ray Tracer(POV-

Ray),Version 3.0.Technical report.https://www.wendangku.net/doc/2712043461.html,.

Schroeder,W.,Martin,K.,Lorensen, B.,1998.The Visualization Toolkit,2nd ed.Prentice Hall,Englewood Cli s,NJ.

Slocum,T.,1994.Visualization software tools.In: MacEachren,A.M.,Taylor,D.R.(Eds.),Visualization in Modern Cartography.Pergamon Press,Oxford,pp.91±96. Upson, C.,Faulhaber,Th.,Kamins, D.,Laidlaw, D., Schlegel,D.,Vroom,J.,Gurwitz,R.,van Dam,A.,1989.

The application visualization system:a computational en-vironment for scienti?c visualization.IEEE Computer Graphics and Applications9(4),30±42.

Upstill,St.,1990.The RenderMan Companion.A Programmers's Guide to Realistic Computer Graphics.

Addison-Wesley,Reading,MA.

Ward,G.,1994.The radiance lighting simulation and render-ing https://www.wendangku.net/doc/2712043461.html,puter Graphics(Proceedings of SIGGRAPH'94)28(2),459±472.

Wernecke,J.,1994.The Inventor Mentor:Programming Object-Oriented3D Graphics with Open Inventor.

Addison-Wesley,Reading,MA.

Woo,M.,Neider,J.,Davis,T.,1997.OpenGL Programming Guide,2nd ed.Addison Wesley,Reading,MA.

J.Doèllner,K.Hinrichs/Computers&Geosciences26(2000)67±76 76

相关文档