From ca3087eac54c642f71354a3948ee8208292b1167 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Wed, 28 Jan 2009 15:06:48 +0000 Subject: [PATCH] shapes returning transformed normals git-svn-id: svn://anubis/fart/trunk@60 7f9b0f55-74a9-4bce-be96-3c2cd072584d --- shapes/Plane.cc | 3 ++- shapes/Sphere.cc | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/shapes/Plane.cc b/shapes/Plane.cc index a3c3468..513e7f4 100644 --- a/shapes/Plane.cc +++ b/shapes/Plane.cc @@ -46,5 +46,6 @@ Shape::IntersectList Plane::intersect(const Ray & ray) Vector Plane::getNormalAt(const Vector & pt) { Vector normal(m_a, m_b, m_c); - return normal.normalize(); + normal.normalize(); + return m_transform.transform_normal(normal); } diff --git a/shapes/Sphere.cc b/shapes/Sphere.cc index f0f383e..045a681 100644 --- a/shapes/Sphere.cc +++ b/shapes/Sphere.cc @@ -41,5 +41,7 @@ Vector Sphere::getNormalAt(const Vector & pt) Vector pt_inv = m_inverse.transform_point(pt); Vector normal = pt_inv; - return normal.normalize(); + normal.normalize(); + + return m_transform.transform_normal(normal); }