Teaching Solid Modelling



8.  A decade of teaching geometry: a New York experience

Jai Menon and Vijay Srinivasan


Abstract

We summarize our experiences in teaching geometric modelling to undergraduate, graduate, and professional students at Columbia, Cornell and New York Polytechnic Universities and at several international conferences, such as Siggraph. We categorize our courses as regular or short, each category having its own distinct characteristics. In our experience, we have found hands-on model building exercises to be extremely valuable; we summarize two examples here. We conclude with a series of observations and remarks that, in addition to our historical account, may be helpful in structuring and improving the way solid modelling is taught today.


Introduction

Principles of solid modelling are being taught in various forms as part of courses in computational geometry, computer-aided design, computer-aided manufacturing, computer graphics, geometric modelling, and so forth. Sometimes, there are even entire courses dedicated to solid modelling. This paper attempts to summarize the experiences and views of the authors, thus providing a perspective of teaching while working at an industrial research laboratory. We summarizes our teaching history, and outline the two kinds of courses-regular and short-that we have been teaching. Then we describe some examples of hands-on model-building exercises, and highlight their benefits. The paper then concludes with observations and remarks on what we perceive are the key lessons we have learned in teaching these topics.


History

Vijay Srinivasan (Srini), the senior author, has been teaching undergraduate and graduate level courses in geometric modelling and Computational Geometry at Columbia University. Srini is an Adjunct Professor in the Mechanical Engineering department at Columbia and has been teaching there for a decade now. He has had three phases of course refinements:

Phase 1 (1987-91):
take-home assignments and exams were set, but no group projects.
Phase 2 (1991-94):
mid-terms and finals were group projects and presentations, or both.
Phase 3 (1994-present):
new topics were introduced-computational metrology in the Computational Geometry course and geometric product specifications in the Geometric Modeling course.

Jai Menon (Menon) has taught part of the geometric modelling courses at Cornell University, conducted by his advisor, Professor Herb Voelcker. He has also taught in several short courses at Cornell on solid modelling, PADL-2, and NC machining. Menon has chaired and taught courses at several conferences, such as ACM Siggraph, IEEE SMI. In addition, he is an adjunct professor at New York Polytechnic University, where he teaches summer courses.


Course formats

We can categorize the courses as regular or short.

Regular

Regular courses are covered in an entire semester. These are attended by a mixture of seniors (final-year undergraduates) and graduate students. The course is taught using usually a blackboard and sometimes foils. Copies of foils, if used, are usually made available to the students. The text books [e.g. 4, 3, 2] are often provided as reference material. The number of students ranges typically from 10 to 25. The students are usually given homework assignments and are assigned a grade for their course.

At Columbia, the Geometric Modeling course covers topics in a progression of increasing dimensionality, i.e. curves, surfaces, and then solids. Thus, solid modelling, per se, forms approximately a third of the course. This is then followed by lectures on applications of geometric modelling. Recently, topics in tolerancing and metrology have begun to be covered in this course, especially as the international tolerancing standards committees (ASME Y14.5 ISO) are working vigorously to get a better handle on the practice of geometric variations.

The Computational Geometry course focuses on the design and implementation of algorithms on points, lines, and planes. This covers topics of convex hulls, triangulations, Voronoi diagrams, and Minkowski operations. There is almost no overlap between the Geometric Modeling and Computational Geometry courses. At Cornell, the Geometric Modeling course follows the math representation algorithm principle. This covers algebraic and combinatorial topology, mathematical models and representations for rigid solids, generic algorithms (e.g. set-membership classification) and applications (e.g. mass properties). The emphasis has been on understanding the mathematical foundations. More recent courses and their ramifications have also begun to cover the dimensioning, tolerancing, and metrology topics.

The course at the Polytechnic University is one-half devoted to solid modelling, and essentially follows the Cornell style of presentation. The course, in fact, plans to use the function, form, fabrication triad approach to motivate the importance of modelling from a design and manufacturing standpoint. But the University administrators requested some "snazzy" technology to be covered as well ... so topics in computer-supported collaborative working, the World Wide Web etc. are included!

Short courses

Short courses last 1-3 days. These are attended typically by industry personnel. The participants are given a set of course notes that correspond closely to the foils used in the presentation; blackboard explanations are rarely used. The number of students is greater, typically ranging from 20 to 60. The participants are usually given neither homework assignments nor a grade for the course.

At Cornell, there were a series of summer short courses organized by the Cornell Programmable Automation group, led by Professor Voelcker. These were distinct courses on solid modelling, NC machining, PADL-2, and so forth in the second half of the 1980s; and they were, in fact, a continuation of the short courses offered by the Product Automation Project at the University of Rochester in the early 1980s. These courses were well attended although attendance did begin to diminish towards the end.

At Siggraph and SMI, solid modelling principles are covered only as part (approximately 1/8th) of the Implicit Surfaces course. The course was attended by over 100 people, but their common interest lay mainly in graphics, not modelling per se.


Hands-on model building

One of the most impressive aspects of our experience has been the impact of hands-on exercises in the course. Developing software to implement the algorithms and principles of solid modelling certainly gives the students a working knowledge of the technology. However, we have seen that exercises done with their own hands, creating physical artifacts using solid modelling techniques, stir a considerable amount of interest in the students.

At Columbia, one of the typical exercises in the Geometric Modelling course, given often as a mid-term examination, is the design of a water-tank model. The students are required to construct a physical model of a water-tank comprising of a spherical tank (to hold the water) supported by three cylindrical pillars. The only constraint is that the axes of the cylinders should not pass through the centre of the tank. So, the exercise is to compute the intersection curve between the cylinder and the sphere, to trace it (say) on paper, and then to cut out and make models of the pillars. Of course, they are not expected to fill the tank with water ... but they are expected to show their model and make a short presentation on how they went about building it. The students are entirely free to choose the material for the water-tank model. They have found this to be extremely enjoyable, and sometimes even write code to plot the intersection curve parametrically before cutting the cylinders.

At Cornell, one of the typical exercises is to write a numerically controlled (NC) machining program to cut a block of wax. Students are required to use 3-axis cutter motions, and write G-codes to mill a cuboid stock using typcally linear and circular XY-cuts. Before executing their NC program on the milling machine, they are to use an automatic NC machining verifier (P2NC, based on PADL-2) to check that their NC program is error-free. The verifier does not only check for syntax errors but also detects collisions, under- or over-machining, and so forth. Of course, this also requires a solid model of the fixture, the final (target) part, and so forth, which are typically provided as generic pieces of PADL-2 code (especially for short courses). Although students now become essentially end-users of solid modelling technology, they certainly appreciate the benefits of sophisticated algorithms as they discover and correct errors in their NC code.

Regular courses typically have open-book examinations with many-day problem-sets. They may involve coding or building some physical model, and students often work in groups of two or three. Comprehensive in-class finals are rare.


Observations and remarks

Based on our experience, we would like to make the following observations and remarks, listed is no particular order. These may be helpful in refining the way solid modelling is taught today.


Acknowledgements

Menon would like to thank Professor Herb Voelcker, who introduced him to the field, served as his research advisor for solid modelling, and continues to be an invaluable source of guidance and wisdom. We also thank Pierre Darmon at IBM for his feedback on the draft manuscript.


References

  1. G. Farin, Curves and Surfaces for CAGD: A Practical Guide (3rd ed.), Academic Press, San Diego, CA, 1993.
  2. C.M. Hoffmann. Geometric and Solid Modeling, Morgan Kaufmann, San Mateo, CA, 1989.
  3. M.A Mäntylä, Solid Modeling, Computer Science Press, Rockville, MD, 1988.
  4. M.E. Mortenson, Geometric Modeling, John Wiley & Sons, New York, 1985.
  5. J. O'Rourke, Computational Geometry in C, Cambridge University Press, New York, 1994.


Back to index