Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[MANTA] Information about new Point/Vector/AffineTranform


Chronological Thread 
  • From: Abe Stephens <abe@sci.utah.edu>
  • To: "'manta@sci.utah.edu'" <manta@sci.utah.edu>
  • Subject: [MANTA] Information about new Point/Vector/AffineTranform
  • Date: Wed, 11 May 2005 10:09:49 -0600

The newPointVector branch moves the implementation of Points, Vectors, and Transforms into Core/Geometry from SCIRun/Core/Geometry. All of the code is new and is not part of the SCIRun source tree.

The main code breaking difference between the old and new Point and Vector classes is that the asVector and asPoint methods have been removed--explicit constructors should be used instead. Also [] operators have been added to both. The classes are templated on type and dimension.

Transforming code to use the new Point and Vector classes consumed about 3% of our effort over the past two days- the other 97% involved the new AffineTransform class which replaces the SCIRun Transform class. The old class had lots of methods like "project", "unproject", "unproject_normal_inplace" etc. These have been replaced by multiplication and transpose multiplication operators/functions. The new AffineTransform class contains one transformation instead of two so the inverse must be stored separately if needed. Since the interface to AffineTransform is completely different, many changes needed to be made in the source tree, especially to the instancing code and the scene creating code.

These changes are in a stable enough form for me to continue working on the volume renderer inside the branch. Steve is going to tie up a few loose ends and I expect that this branch will be merged back into the trunk in the next day or so. This might require small changes to the Point / Vector usage in code if you are using obscure methods and will definitely require changes if you are using the old Transform class.

Abe

Rocky Rhodes wrote:

I've been watching all of this activity on this branch, but am not aware of
the big picture.  What is the plan for the "newPointVector" branch?  Is it
to be reintegrated with the main trunk once it is considered sufficiently
robust?  When might that be?

I haven't looked at the new code at all.  What is different about the new
approach?

Hope the Mt. Dew and pizza are still flowing freely there!

        Rocky







Archive powered by MHonArc 2.6.16.

Top of page