# Geometric Modelling: 2024-2025

| |

| Schedule A2(CS&P) — Computer Science and Philosophy Schedule B1 (CS&P) — Computer Science and Philosophy Schedule A2 — Computer Science Schedule B1 — Computer Science Schedule A2(M&CS) — Mathematics and Computer Science |

| Michaelmas Term 2024 (16 lectures) |

## Overview

This is an introductory course in modelling techniques for 3D objects. It covers a wide range of different ways of representing the geometry of real objects, depending on their functionality and application. The emphasis in this course will be on the theory and basic principles of constructing models; hence the practicals will not use CAD-specific software, but rather a programming environment suitable for reasoning about the mathematics of models.

## Learning outcomes

At the end of the course, the student will:

- understand the need for, and the different applications of geometric modelling techniques
- understand some of the technical solutions
- be able to reason about the range of solutions to problems involving 3D objects

## Prerequisites

Knowledge of basic matrix and vector algebra is assumed, as is basic set theory.

The course does not deal with the rendering of such models: this is left to Computer Graphics. Neither does it deal with any of the applications once the models have been created: this is left to Computer Animation (if available). Whilst there are obvious links between these three courses, they have been designed to be independent of each other.

## Synopsis

- Introduction. Points and relative positions [1]
- Line segments; Polygons, convex and concave; polyhedron; convex hull [1]
- Data Structures: different kinds of geometric modellers [1]
- Boundary representation modelling and canonical operations [2]
- Constructive Solid Geometry introduction; interval arithmetic [1]
- Constructive Solid Geometry tree pruning; blends; integral properties [1]
- Splines introduction; Bézier curves [1]
- Drawing splines; degree elevation [1]
- Sculptured surface patches: applications [1]
- B-splines; interpolation splines [1]
- Non-uniform splines, rational splines, and NURBS [1]
- Catmull-Rom splines [1]
- Voronoi diagram; Delaunay triangulation [2]
- Largest empty circle; Voronoi generalisations [1]

## Syllabus

- Point, line and line segment; relative positions; polyline
- Polygon, convex and concave; polyhedron; convex hull
- Different kinds of geometric modellers
- Boundary representation modelling
- Boundary representation operations
- Constuctive solid geometry (CSG) introduction; interval arithmetic
- CSG tree pruning; blends; integral properties
- Splines introduction; Bézier curves
- Drawing splines; degree elevation
- Sculptured surface patches: applications
- General splines; constructing splines from Bézier curves
- B-splines; interpolation splines
- Catmull-Rom (Cardinal) splines
- Voronoi diagram; Delaunay triangulation
- Largest empty circle; Voronoi diagram generalisation(s)

## Reading list

There is no single textbook that covers the syllabus. The following have been part of reading lists for past courses and might be **useful** (though not **necessary**):

For positions of points, lines and segments, also for convex hull and Voronoi diagrams:

- O'Rourke, J
*Computational Geometry in C*, Cambridge University Press, 1994. (classic in computational geometry)

For a summary of various topics:

- J D Foley, A Van Dam, S K Feiner, J F Hughes and R L Phillips,
*Introduction to Computer Graphics*, Addison-Wesley 1996. (chapters on B-rep and CSG, also rigid body transforms) - T H Cormen, C E Leiserson and R L Rivest,
*Introduction to Algorithms*, MIT Press, 1990. (general algorithms and complexity)

For constructive solid geometry (CSG))

- The svlis manual contains a very good introduction to CSG and related issues

**Only for much deeper reading in** B-rep modelling

- Ian Stroud,
*Boundary Representation Modelling Techniques*, Springer Verlag, 2006

**Only for much deeper reading in** CSG

- J R Woodwark,
*Blends in geometric modelling*, in The Mathematics of Surfaces (R.R. Martin, ed.) (Proceedings of the 2nd IMA Conference on the Mathematics of Surfaces, Cardiff, 1986) (255--297), Oxford University Press, 1987 - A J P Gomes, I Voiculescu, J Jorge, B Wyvill, C Galbraith,
*Implicit Curves and Surfaces: Mathematics, Data Structures and Algorithms*, Springer 2009, ISBN 978-1-84882-405-8

**Only for much deeper reading in** parametric curves, splines and NURBS

- E Cohen, R Riesenfeld, G Elber,
*Geometric Modelling with Splines: an introduction*, A K Peters 2001. (thorough, but theoretical) - Les Piegl, Wayne Tiller,
*The NURBS Book*, Springer 1997. (B-splines and NURBS) - G Farin,
*Curves and surfaces for computer aided geometric design*, Academic Press, 1990. (practical applications)

## Taking our courses

**This form is not to be used by students studying for a degree in the
Department of Computer Science, or for Visiting Students who are registered for
Computer Science courses**

Other matriculated University of Oxford students who are interested in taking this, or other, courses in the Department of Computer Science, must complete this online form by 17.00 on Friday of 0th week of term in which the course is taught. Late requests, and requests sent by email, will not be considered. All requests must be approved by the relevant Computer Science departmental committee and can only be submitted using this form.