292 IEEE TRANSACTIONS ON EDUCATION, VOL. 49, NO. 2, MAY2006 SURFMOD: Teaching Tool for Parametric Curve and Surface Methods in CAGD Based on Comparison and Analysis Nikola Guid, Member, IEEE, Simon Kolmaniˇ c, and Damjan Strnad Abstract—Parametric curves and surfaces are topics usually in- cluded in different disciplines, such as computer graphics, geo- metric modeling, computer-aided design (CAD), computer-aided geometric design (CAGD), etc. These rapidly emerging and exten- sive fields require students to understand a wide range of methods. In this context, SURFMOD, a teaching tool for parametric curves and surfaces, was constructed. SURFMOD enables interactive in- vestigation, different quality analyses, and simultaneous studies of various methods using the same data, while, at the same time, ad- justing the control parameters. Index Terms—Computer-aided geometric design (CAGD), learning, parametric curves, parametric surfaces, quality analysis. I. INTRODUCTION P ARAMETRIC curves and surfaces play an important role in the construction of different products, such as cars, ships, airplanes, shoes; in the building of three-dimensional (3-D) games; in the description of geological, physical, medical phenomena, etc. Basic theories, geometrical properties, and the numerical algorithms of curves and surfaces are subjects re- quiring a particular discipline called computer-aided geometric design (CAGD). These items are normally included in different courses, such as geometric modeling, computer-aided design (CAD), and computer graphics. There are numerous books concerning curve and surface modeling, but each of them considers this subject from a dif- ferent viewpoint, thus confusing students, especially beginners [1]–[17]. Teaching difficulties are increased by relatively dif- ficult mathematics and algorithms, resulting in students being less motivated to learn curves and surfaces. Teaching becomes more efficient if formulas and algorithms can be demonstrated by an appropriate pedagogical tool, which helps students both to understand the basic theory and to learn curve and surface design. Experience confirms that students can easily absorb one or two methods, but to learn the remaining methods, stu- dents need an effective comparative means, enabling different methods to be observed simultaneously on the same data, while the students are changing control parameters. Furthermore, learning is more productive with the use of different tools for curve and surface analysis. Manuscript received September 15, 2005; revised February 14, 2006. The authors are with the Faculty of Electrical Engineering and Computer Sci- ence, University of Maribor, 2000 Maribor, Slovenia (e-mail: guid@uni-mb.si). Digital Object Identifier 10.1109/TE.2006.873981 All the above mentioned reasons have motivated the creation of a capable programming tool. First, a program package was written for curve methods in CAGD, named CURVMOD [18]. CURVMOD was followed by a package for surface methods, entitled SURFMOD [19], [20]. Both programs were written in Pascal and ran under the MS-DOS operating system. In 1996, SURFMOD 2.0 was developed in C++ and ran under the MS Windows. This version was bought by Jackson Libri, one of the leading Italian publishing companies from Milan, and distributed on the Italian market [21], [22]. Some years ago, CURVMOD and SURFMOD 2.0 were unified into a completely new program package, called SURFMOD 3.0. Naturally, SURFMOD 3.0 has been continuously expanded and improved each year. Thus, SURFMOD 3.0, which enables modeling, comparison, and analysis of both parametric curve and surface methods, is written in C++, applies X Windows System, and runs under the UNIX operating system. Some multimedia tutorials [23]–[33] on CAGD can be found in literature and on the Internet, but none of them is as compre- hensive and complex as SURFMOD 3.0. SURFMOD is based upon statements from the most popular textbooks for computer graphics and CAGD [1]–[17] and the experience of many years teaching computer graphics. After SURFMOD has been introduced into the computer graphics course, both the teaching and learning processes have been fundamentally improved. The motivation of the students has significantly increased, and the quality of students’ course work at the conclusion of the course has been of a higher standard and, in many cases, quite impressive. Even though the same number of lessons for curve and surface methods are given as before, students claim the introduction of SURFMOD into the learning process is proving very stimulating. Further- more, the number of students who deepen their knowledge in this subject has increased. This paper consists of several sections. After a brief in- troduction, related researches are overviewed in Section II. Then, a general description of SURFMOD is given in Sec- tion III. In Sections IV and V, the curve and surface methods of SURFMOD are described, respectively. Section VI considers curve analysis, which is followed by Section VII describing surface analysis. Section VIII presents fundamental geometric algorithms for curve and surface design. Section IX considers experiences in teaching and learning curve and surface methods using SURFMOD, also introducing ideas for future research. 0018-9359/$20.00 © 2006 IEEE