diff -r 0b8b968b42d1 -r 3763b26244f0 include/quaternion.h --- a/include/quaternion.h Sun Dec 30 00:11:47 2007 +0100 +++ b/include/quaternion.h Thu Jan 03 18:06:34 2008 +0100 @@ -1,8 +1,27 @@ /* - * Pyrit Ray Tracer - * file: quaternion.h + * quaternion.h: Quaternion class + * + * This file is part of Pyrit Ray Tracer. + * + * Copyright 2007 Radek Brich * - * Radek Brich, 2006-2007 + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. */ #ifndef QUATERNION_H @@ -22,9 +41,9 @@ Quaternion(): a(0), b(0), c(0), d(0) {}; Quaternion(const Float aa, const Float ab, const Float ac, const Float ad): a(aa), b(ab), c(ac), d(ad) {}; - Quaternion(const Vector3& v): a(1), b(v.x), c(v.y), d(v.z) {}; + Quaternion(const Vector3& v): a(0), b(v.x), c(v.y), d(v.z) {}; - Vector3 toVector() { return Vector3(b/a, c/a, d/a); }; + Vector3 toVector() { return Vector3(b, c, d); }; Quaternion normalize() {