Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[MANTA] r989 - trunk/Model/Primitives


Chronological Thread 
  • From: jsimkins@sci.utah.edu
  • To: manta@sci.utah.edu
  • Subject: [MANTA] r989 - trunk/Model/Primitives
  • Date: Tue, 14 Mar 2006 17:14:01 -0700 (MST)

Author: jsimkins
Date: Tue Mar 14 17:14:00 2006
New Revision: 989

Modified:
   trunk/Model/Primitives/Cylinder.cc
Log:
Updates to Cylinder for new Vector class


Modified: trunk/Model/Primitives/Cylinder.cc
==============================================================================
--- trunk/Model/Primitives/Cylinder.cc  (original)
+++ trunk/Model/Primitives/Cylinder.cc  Tue Mar 14 17:14:00 2006
@@ -10,7 +10,6 @@
                    Real radius)
   : PrimitiveCommon(mat, this), bottom(bottom), top(top), radius(radius) 
 {
-  throw BadPrimitive("Cylinder class's implementation is not finished");
 }
 
 Cylinder::~Cylinder()
@@ -28,9 +27,9 @@
 void Cylinder::intersect(const RenderContext&, RayPacket& rays) const
 {
   for(int i=rays.begin(); i<rays.end(); i++) {
-    Vector v(xform * rays.getDirection(i));
+    Vector v(xform.multiply_vector(rays.getDirection(i)));
     double dist_scale=v.normalize();
-    Ray xray(xform * rays.getOrigin(i), v);
+    Ray xray(xform.multiply_point(rays.getOrigin(i)), v);
     double dx=xray.direction().x();
     double dy=xray.direction().y();
     double a=dx*dx+dy*dy;
@@ -70,9 +69,9 @@
 {
   rays.computeHitPositions();
   for(int i=rays.begin(); i < rays.end(); i++) {
-    Vector xn(xform * Vector(rays.getHitPosition(i)));
+    Vector xn(xform.multiply_vector(rays.getHitPosition(i)));
     xn[2]=0.0;
-    Vector v=ixform * xn;
+    Vector v=ixform.multiply_vector(xn);
     v.normalize();
     rays.setNormal(i, v);
   }
@@ -83,7 +82,7 @@
                             RayPacket& rays) const
 {
   for(int i=rays.begin();i<rays.end();i++)
-    rays.setTexCoords(i, rays.scratchpad<Point>(i));
+    rays.setTexCoords(i, rays.scratchpad<Vector>(i));
   rays.setFlag(RayPacket::HaveTexture2|RayPacket::HaveTexture3);
 }
 
@@ -91,6 +90,6 @@
                                      RayPacket& rays) const
 {
   for(int i=rays.begin();i<rays.end();i++)
-    rays.setTexCoords(i, rays.scratchpad<Point>(i));
+    rays.setTexCoords(i, rays.scratchpad<Vector>(i));
   rays.setFlag(RayPacket::HaveTexture2|RayPacket::HaveTexture3);
 }




  • [MANTA] r989 - trunk/Model/Primitives, jsimkins, 03/14/2006

Archive powered by MHonArc 2.6.16.

Top of page