Our Approach
Our tentative schedule became interrupted when one of my math
professors announced a delayed due date for an assignment because
he thought it was too long. He made it due last Friday but I
managed to finish it on Tuesday night.
My first meeting with Ian was the day after the proposal was due.
I gave him an overview of my program, and we uploaded our initial
project into CVS. Our second meet was two days later, and it
quickly became apparent to me that I had forgotten to schedule in
time for us to just communicate with each other and for us to
familiarize ourselves with the existing project. I sat with Ian
for a few hours and together we made regular file reading work.
When I started working on my part, I realized that it would be
much better if I produced my demos first. On one hand, it will
produce an interface for visual testing and retro-testing. On the
other, it will provide a simple, expandable paradigm for adding
more demos.
We found this interface immensely helpful for debugging purposes.
Several times, we made some error coding and the errors were
reflected upon retro-testing. I made an especially obscure error
in declaring one of my tetrahedra in the 6-fold subdivision, and
had I not added in the demos it would have taken me a lot longer
to find the problem.
The implementation of the 6-fold subdivision was otherwise fairly
straight forward. Besides salvaging and integrating demos from my
old code, I devoted a good portion of my time helping Ian
implement his parts, because I figured that way, we could get much
more done as a team.
Ian decided to read in vuVolume transfer functions to go along
with the data that we read in even though that was not part of our
original proposal. He built a color table to store the transfer
functions, and that speeds up color calculations which amounts to
table lookups.
Because it was desirable to display larger data sets, we needed to
find a way to render them in a reasonable amount of time. We
discussed two alternatives. One was to "mipmap" the data set so
that it only ever displays up to a sixty-four cubed data set
(which renders about 5 million polygons per frame and takes about
15 seconds to show up). The other way was to display only portions
of the data set at once. We went with the second way and the
resulting controls allow the user to specify the size of the
portion to be displayed and the starting location of that portion.
|