| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- /**
- * Contains code for planes.
- * \file IcePlane.cpp
- * \author Pierre Terdiman
- * \date April, 4, 2000
- */
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- /**
- * Plane class.
- * \class Plane
- * \author Pierre Terdiman
- * \version 1.0
- */
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // Precompiled Header
- #include "Stdafx.h"
- using namespace IceMaths;
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- /**
- * Computes the plane equation from 3 points.
- * \param p0 [in] first point
- * \param p1 [in] second point
- * \param p2 [in] third point
- * \return Self-reference
- */
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- Plane& Plane::Set(const Point& p0, const Point& p1, const Point& p2)
- {
- Point Edge0 = p1 - p0;
- Point Edge1 = p2 - p0;
- n = Edge0 ^ Edge1;
- n.Normalize();
- d = -(p0 | n);
- return *this;
- }
|