CSCE 441 Lecture 10
Jump to navigation
Jump to search
« previous | Wednesday, February 5, 2014 | next »
Fractals and Iterated Affine Transformations
A transformation is contractive if, for all compact sets ,
- compact set
- a finite set
- transformations on sets
- A set is a collection of points
- Apply point-wise transformation to all point within the set
- distance
- distance between identical sets should be 0
Hausdorff Distance
Iterated Affine Transformations
Special class of fractals where each transformation is an affine transformation:
Rotations, translation, and scaling by themselves are not contractive
Rendering Fractals
Given starting set , inductively define
Attractor is .
Serpinski's triangle: Scale by factor of 0.5 about each vertex of the large triangle
Apply transformations on previous shape again, and again, and again, etc.
Starting shape does not matter.
Perform BFS of "transformation tree"
Finding Transformations
Given a fractal built by iterated affine transformations, how do you determine the original transformation?
- Locate a shape that covers the entire fractal
- Find copies of that shape within the fractal
- Use the three-point strategy to find the transformation of each copy.
Fractal Tennis
- Start with any point on the fractal by applying several times.
- Apply random transformations to that point to get corresponding points on the fractal:
for (int i = 0; i < 100; ++i)
x = m[rand] * x;
for (int i = 0; i < 100000; ++i) {
draw(x);
x = m[rand] * x;
}