Python
Sierpinski II


main index


Sierpinski Gasket - 100,000 RenderMan Points


Introduction

This page describes the requirements for the completion of the second part of the "Sierpinski" assignment. The cloud of points shown above form a fractal called a Sierpinski gasket. You are to implement the following algorithm to generate an arbitary number of points (or other geometry such as spheres) to create a Sierpinski gasket.

Algorithm

  1   set four points that define the vertices of a tetrahedron,
  2   choose an arbitary location (seed point) within the tetrahedron,
  3   pick one vertex of the tetrahedron at random,
  4   find the mid point between the random vertex and the seed point,
  5   store the mid point in a list.

Steps 1 to 5 generate the first point of the gasket. To generate the entire cloud steps 2 to 5 are repeated with the output of step 4 used as the input (seed point) of step 2.


Graphics

You are to extend the functionality of your script so that it generates an archive rib file containing a Pixar RenderMan Points primitive that, when referenced by Maya, will render a Sierpinski gasket.

Creative Challenge

After you have rendered a "standard" representation of a Sierpinski gasket you should modify your script so that you can experiment with the Sierpinski algorithm. For example, the procedure named halfstep can be edited so that it returns values other than the mid-point.



Chao Luo (Vsrx705 Fall 2014)


Using values based on the use of noise can dramatically effect the visual appearance of a Sierpinski gasket.



Jared Broddle (Tech312 Winter 2013)



Technical Breakdown

Collect your rendered images/animation and the edited versions of your script(s) and present what you have developed as a technical breakdown.