CGS2032: Math, Art and Computing

 

Course outline

1.      Pointillism and digital image (about 4 periods)

 

Instead of drawing objects by objects, artists also paint small, distinct dots of pure color to form an image.  This technique requires artists to view color independent of spatial relations within objects.  And the viewer is able to blend the color spots into a fuller range of tones and understand the art work.   Similarly, when storing an image in a computer, we use thousands of pixels.

Knowledge points:

A.      Pointillism: history and examples

B.      Digital image:

a.      Color space and color representation

b.      Coordinate system and image coordinates

C.      Shapes: point, rectangle, ellipses

Homework:

·         Design a pattern using rectangles and ellipses with proper color

 

 

2.      Vanishing point and perspective camera model (about 5 periods)

 

Vanishing points exist in many natural scene drawings for correct perspective geometry.  A perspective camera model is also widely used in computer graphics, so objects in the distance appear smaller than objects close by.

trans

 
Knowledge points:

A.      Vanishing points in drawings:

a.      One vanishing point: up, down, Frontal

b.      Multiple vanishing points

B.      Perspective camera model

a.      Perspective projection calculation

b.      Change coordinate system

                                                                                      i.      Scale

                                                                                    ii.      Translate

                                                                                  iii.      Rotate

C.      Other 2D elements: lines, curves, quad, etc.

Homework:

·         Design a logo with 2D shapes

·         Draw a frontal perspective image

 

 

3.       Golden ratio, Fibonacci number and loop (about 2 weeks)

 

Artists believe that art work and architecture in the form of the golden rectangle is aesthetically pleasing.   The golden ratio has also been used to analyze the proportions of natural objects for a long time.  Fibonacci sequence is an interesting with linear recurrence whose closed form solution is represented using golden ratio.

 
Knowledge points:

A.      Golden ratio in images and architectures

B.      Golden proportion in music

C.      Golden spiral

D.     Fibonacci sequences

E.      Programming concepts:

a.      Conditions

b.      For loop

Homework:

·         Design a pattern using golden spiral

·         Calculating Fibonacci sequences

 

 

4.      Periodic tessellation and Wallpaper (about 5 periods)

 

angels&devils

 
People use decorative patterns, periodic or aperiodic, as floor or wall covering.  Artists also created many interesting artworks with tessellations.  When using computer to generate such a patter, we just need to specify proper variables and use nested loops

Knowledge points:

A.      Tessellation

B.      Work from M. C. Escher

C.      Repetitive pattern creation

a.      Tile design and implementation

b.      Nested loops

D.     Café wall illusion

Homework:

·         Design a wallpaper, or poster with periodic tessellation

 

 

5.      Asymmetric pattern and polar coordinate system (about 3 periods)

 

PenroseTilesStarSun3

 
An asymmetric pattern does not contain large periodic patches.  Many approaches have been proposed to generate asymmetric patterns.  Some of the patterns can be easily described in polar coordinate system.

Knowledge  points:

A.      Polar coordinate system

B.      Radial and Spiral Tilings

C.      Penrose Tiles

D.     Random number and noise

Homework:

·         Design a penrose style asymmetric tiling

·         Texturing an umbrella

 

 

6.      Kaleidoscope and image manipulation (about 3 periods)

 

kaleidoscopeLine.tif

 
A kaleidoscope uses mirrors to form beautiful symmetrical designs.  We can use a computer to generate kaleidoscope images.

Knowledge points:

A.      Image representation

B.      Rotating part of an image

C.      Transparent setting

D.     Image composition

Homework:

·         Create an kaleidoscope image

 

 

7.      Fractal and recursive function (about 4 periods)

 

Mandelbrot.tif

 
A fractal is a mathematical set that typically displays self-similar patterns. Modern computing power makes it possible to show these beautiful patterns.  The idea of fractals started with the notion of recursion, which naturally can be implemented through recursive functions.

Knowledge points:

A.      The idea of fractal

B.      Fractal patterns

C.      Fractal music

D.     L-system

E.      Recursive function

Homework:

·         Create a tree using a recursive function

·         Modify parameters of some fractal formulas to see the change of pattern

 

 

8.      Encryption (about 3 periods)

 

Encryption is to encode information so that un-authorized may not understand.  Two simple methods, Caesar's method and substitution cipher, replace plain text according to a regular system.  Using arrays to store the conversion table and implement these methods. 

Knowledge points:

A.      Encryption and commonly used methods

B.      Array and multi-dimensional arrays

C.      String class

D.     Caesar's method, substitution cipher and its implementation

Homework:

·         Design your own substitution cipher and implement it