Principles of 2D and 3D Computational Geometry
Course
Inhouse
Description
-
Type
Course
-
Methodology
Inhouse
-
Duration
3 Days
Suitable for: The course will be useful to a wide range of interests related to using and applying 2D and 3D geometry to software applications. The course is intended for programmers, engineers, computer game developers and teachers who need to refresh and extend their knowledge of geometry and who also need to acquire a good understanding of the computational aspects of both 2D and 3D geometry. computer game programmers. graphics artists with an interest in "computer.
Reviews
Course programme
The purpose of this course is to provide a sound foundation in the techniques and theory underlying 2D and 3D computational geometry. In addition to covering the course also overviews
- applying structured programming techniques
- applying computational geometry principles in OpenGL
- applied interactive graphics programming using event models and widget sets
- Note: this course can be tailored to use other programming languages such as Java or C# ( please inquire )
Course Contents
Overview of 2D and 3D Computational Geometry
- Points in Euclidean Space
- Vectors and Directions
- Vector Orthogonality, Linear Dependence and Basis Sets
- Planes and Lines
- Sidedness Predicates
- Affine transformations - basic definition
- Properties and composition of affine transformations
- Viewport mapping
- Representation of Affine transformations using matrices
- Orthogonal transformations
- Rotations in space and Euler angles
- Line and Segment intersections
- Clipping and splitting of segments and polygons
- Classes, objects, data structures, modules, components and interfaces
- Overview of UML2 diagrams
- Devising suitable classes and class hierarchies for computational geometry applications
- Collections, containers, iteration and iterators
- Spherical geometry
- Rotations and quaternions
- Projective geometry
- Intersections, clipping and splitting
- pixels, raster images and segment rasterisation
- rays and polygon point containment
- illuminations and shading
- ray tracing
- boundary representation
- indexed face sets
- Platonic solids
- graphs of solids
- halfedge data structures and Euler operators
- Binary Space Partitioning (BSP) trees
- basics of Constructive Solid Geometry (CSG)
- Event driven software programming
- Widgets and widget sets
- working with OpenGL
- working with the GLOW toolkit
Principles of 2D and 3D Computational Geometry