00001 // Wild Magic Source Code 00002 // David Eberly 00003 // http://www.geometrictools.com 00004 // Copyright (c) 1998-2007 00005 // 00006 // This library is free software; you can redistribute it and/or modify it 00007 // under the terms of the GNU Lesser General Public License as published by 00008 // the Free Software Foundation; either version 2.1 of the License, or (at 00009 // your option) any later version. The license is available for reading at 00010 // either of the locations: 00011 // http://www.gnu.org/copyleft/lgpl.html 00012 // http://www.geometrictools.com/License/WildMagicLicense.pdf 00013 // The license applies to versions 0 through 4 of Wild Magic. 00014 // 00015 // Version: 4.0.0 (2006/06/28) 00016 00017 namespace Wm4 00018 { 00019 //---------------------------------------------------------------------------- 00020 template <class Real> 00021 Segment3<Real>::Segment3 () 00022 { 00023 // uninitialized 00024 } 00025 //---------------------------------------------------------------------------- 00026 template <class Real> 00027 Segment3<Real>::Segment3 (const Vector3<Real>& rkOrigin, 00028 const Vector3<Real>& rkDirection, Real fExtent) 00029 : 00030 Origin(rkOrigin), 00031 Direction(rkDirection), 00032 Extent(fExtent) 00033 { 00034 } 00035 //---------------------------------------------------------------------------- 00036 template <class Real> 00037 Vector3<Real> Segment3<Real>::GetPosEnd () const 00038 { 00039 return Origin + Extent*Direction; 00040 } 00041 //---------------------------------------------------------------------------- 00042 template <class Real> 00043 Vector3<Real> Segment3<Real>::GetNegEnd () const 00044 { 00045 return Origin - Extent*Direction; 00046 } 00047 //---------------------------------------------------------------------------- 00048 } //namespace Wm4