GeoBuilder: A Geometric Algorithm Visualization and Debugging System for 2D and 3D Geometric Computing

Algorithm visualization is a unique research topic that integrates engineering skills such as computer graphics, system programming, database management, computer networks, etc., to facilitate algorithmic researchers in testing their ideas, demonstrating new findings, and teaching algorithm design in the classroom. Within the broad applications of algorithm visualization, there still remain performance issues that deserve further research, e.g., system portability, collaboration capability, and animation effect in 3D environments. Using modern technologies of Java programming, we develop an algorithm visualization and debugging system, dubbed GeoBuilder, for geometric computing. The GeoBuilder system features Java's promising portability, engagement of collaboration in algorithm development, and automatic camera positioning for tracking 3D geometric objects. In this paper, we describe the design of the GeoBuilder system and demonstrate its applications.

[1]  Kiyoko F. Aoki,et al.  DAViD: A Distributed Algorithm Visualization and Debugging System for Geometric Computing , 2000 .

[2]  John T. Stasko,et al.  Algorithm Animation - Introduction , 2001, Software Visualization.

[3]  Joseph ORourke,et al.  Computational Geometry in C Second Edition , 1998 .

[4]  J. O´Rourke,et al.  Computational Geometry in C: Arrangements , 1998 .

[5]  Umberto Ferraro Petrillo,et al.  JIVE: Java Interactive Software Visualization Environment , 2004, 2004 IEEE Symposium on Visual Languages - Human Centric Computing.

[6]  D. T. Lee,et al.  Geosheet: A Distributed Visualization Tool for Geometric Algorithms , 1998, Int. J. Comput. Geom. Appl..

[7]  Stefan Näher,et al.  GeoWin - A Generic Tool for Interactive Visualization of Geometric Algorithms , 2001, Software Visualization.

[8]  Marc Najork Web-based algorithm animation , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[9]  Saul Greenberg,et al.  GROUPKIT: a groupware toolkit for building real-time conferencing applications , 1992, CSCW '92.

[10]  Peter S. Pacheco Parallel programming with MPI , 1996 .

[11]  Chengzheng Sun,et al.  Consistency maintenance in real-time collaborative graphics editing systems , 2002, TCHI.

[12]  Barry F. Smith,et al.  Developing a Geodynamics Simulator with PETSc , 2006 .

[13]  Joseph O'Rourke,et al.  Computational Geometry in C. , 1995 .

[14]  Daniela di Serafino,et al.  Advanced environments for parallel and distributed applications: a view of current status , 2002, Parallel Comput..

[15]  J. J. Garcia-Luna-Aceves,et al.  Floor control for multimedia conferencing and collaboration , 1997, Multimedia Systems.

[16]  Essi Lahtinen,et al.  Targeting program visualizations , 2007, ITiCSE '07.

[17]  David P. Dobkin,et al.  GAWAIN: visualizing geometric algorithms with Web-based animation , 1998, SCG '98.

[18]  Jyh-Da Wei,et al.  A Visualization Tool for the Sitemap of a Knowledge Portal and the Concept Map of Group Knowledge , 2005 .

[19]  Li-Te Cheng,et al.  Introducing collaboration into an application development environment , 2004, CSCW.

[20]  Marc Najork,et al.  Algorithm animation using 3D interactive graphics , 1993, UIST '93.

[21]  Saul Greenberg,et al.  Building real-time groupware with GroupKit, a groupware toolkit , 1996, TCHI.

[22]  Aslak Tveito,et al.  Numerical solution of partial differential equations on parallel computers , 2006 .

[23]  J.T. Stasko,et al.  Three-dimensional computation visualization , 1993, Proceedings 1993 IEEE Symposium on Visual Languages.

[24]  Ayellet Tal,et al.  GASP-II - A Geometric Algorithm Animation System for an Electronic Classroom , 1998, Symposium on Computational Geometry.

[25]  Dani Lischinski,et al.  Automatic camera placement for image-based modeling , 1999, Proceedings. Seventh Pacific Conference on Computer Graphics and Applications (Cat. No.PR00293).

[26]  Aybüke Aurum,et al.  Knowledge management in software engineering education , 2004, IEEE International Conference on Advanced Learning Technologies, 2004. Proceedings..

[27]  David P. Dobkin,et al.  Visualization of Geometric Algorithms , 1995, IEEE Trans. Vis. Comput. Graph..

[28]  Mo Mu PDE.Mart: A network-based problem-solving environment for PDEs , 2005, TOMS.

[29]  D. T. Lee,et al.  A portable geometric algorithm visualization system with dynamic camera positioning for tracking 3D objects , 2006, SCG '06.

[30]  D. T. Lee,et al.  Knowledge Management for Computational Problem Solving , 2003, J. Univers. Comput. Sci..

[31]  N. Rummel,et al.  Learning to Collaborate in a Computer-mediated Setting: Observing a Model Beats Learning from Being Scripted , 2006, ICLS.

[32]  Lutz Kettner,et al.  Two computational geometry libraries: LEDA and CGAL , 2004, Handbook of Discrete and Computational Geometry, 2nd Ed..

[33]  T. Dean Hendrix,et al.  An extensible framework for providing dynamic data structure visualizations in a lightweight IDE , 2004, SIGCSE.

[34]  Essi Lahtinen,et al.  Annotations for Defining Interactive Instructions to Interpreter Based Program Visualization Tools , 2007, Electron. Notes Theor. Comput. Sci..

[35]  James C. Lester,et al.  Intelligent multi-shot visualization interfaces for dynamic 3D worlds , 1998, IUI '99.

[36]  David P. Dobkin,et al.  The quickhull algorithm for convex hulls , 1996, TOMS.

[37]  Thomas L. Naps,et al.  Exploring the role of visualization and engagement in computer science education , 2003, ITiCSE-WGR '02.

[38]  S. Diehl,et al.  Software visualization , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[39]  W. Bangerth,et al.  deal.II—A general-purpose object-oriented finite element library , 2007, TOMS.

[40]  Tamara Munzner,et al.  Geomview: a system for geometric visualization , 1995, SCG '95.

[41]  Robert Sedgewick,et al.  A system for algorithm animation , 1984, SIGGRAPH.

[42]  John R. Rice,et al.  Scientific computing via the Web: the Net Pellpack PSE server , 1997 .

[43]  Tobias Lauer,et al.  Student-built algorithm visualizations for assessment: flexible generation, feedback and grading , 2005, ITiCSE '05.

[44]  M. Zancanaro,et al.  Using Cinematic Techniques in a Multimedia Museum Guide. , 2003 .

[45]  John T. Stasko,et al.  Do algorithm animations assist learning?: an empirical study and analysis , 1993, INTERCHI.

[46]  Welf Löwe,et al.  Online-configuration of software visualizations with Vizz3D , 2005, SoftVis '05.