Midterm Report for Computer Visualization in Experimental Mathematics Fall 2019


Koch Extrusions for Polyhedra

Joshua Holder October 23, 2019


Introduction

This project re-implements and extends Yuliya Semibratova's 2013 Higher-Dimensional Koch Curve's project from the original python into a web page using javascript/webgl.

Background

The 2d case is the Koch Curve. Shown in the image below, the process is:

  • Cut a line into thirds
  • Remove the middle third and extrude into an equilateral triangle
  • Repeat the process with the new lines formed
Image taken from Larry Ridle

This can be extended into three dimensions. For the tetrahedron and octahedron, it is done as follows:

  • Calculate the midpoints of of the existing triangles
  • Using those midpoints extrude a regular tetrahedron and remove the base
  • Repeat the process with the new triangles formed
This image shows the first level of the proccess highlighting the construction of the initial extrusion using the midpoints of one face of a regular octahedron.

Tools

WebGL and javascript are used to produce interactive 3d graphics on webpages.

David Eck's glSim library for WebGL is used to implement graphics

Functions of Yuliya Semibratova's project are used to help calculate triangles for extrusion.

Goals

The goal of the project is to produce RTICAs of these Koch extrusions on platonic solids and explore what shapes they may converge into. From Yuliya's project it is known that a tetrahedron converges into a cube.

The re-implementation of the tetrahedron has been completed and an extension has been made for a octahedron. As with Yuliya's project it can be seen that the tetrahedron converges into a cube. The cube remains to be re-implemented and there are other platonic solids to create.