00001 /* 00002 ----------------------------------------------------------------------------- 00003 This source file is part of OGRE 00004 (Object-oriented Graphics Rendering Engine) 00005 For the latest info, see http://www.ogre3d.org/ 00006 00007 Copyright © 2000-2002 The OGRE Team 00008 Also see acknowledgements in Readme.html 00009 00010 This program is free software; you can redistribute it and/or modify it under 00011 the terms of the GNU Lesser General Public License as published by the Free Software 00012 Foundation; either version 2 of the License, or (at your option) any later 00013 version. 00014 00015 This program is distributed in the hope that it will be useful, but WITHOUT 00016 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 00017 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. 00018 00019 You should have received a copy of the GNU Lesser General Public License along with 00020 this program; if not, write to the Free Software Foundation, Inc., 59 Temple 00021 Place - Suite 330, Boston, MA 02111-1307, USA, or go to 00022 http://www.gnu.org/copyleft/lesser.txt. 00023 ----------------------------------------------------------------------------- 00024 */ 00025 #include "OgreStableHeaders.h" 00026 00027 #include "OgreKeyFrame.h" 00028 #include "OgreAnimationTrack.h" 00029 00030 namespace Ogre 00031 { 00032 //--------------------------------------------------------------------- 00033 KeyFrame::KeyFrame(const AnimationTrack* parent, Real time) 00034 : mTime(time), mParentTrack(parent) 00035 { 00036 mTranslate = Vector3::ZERO; 00037 mScale.x = mScale.y = mScale.z = 1.0; 00038 mRotate = Quaternion::IDENTITY; 00039 } 00040 //--------------------------------------------------------------------- 00041 Real KeyFrame::getTime(void) const 00042 { 00043 return mTime; 00044 } 00045 //--------------------------------------------------------------------- 00046 void KeyFrame::setTranslate(const Vector3& trans) 00047 { 00048 mTranslate = trans; 00049 if (mParentTrack) 00050 mParentTrack->_keyFrameDataChanged(); 00051 } 00052 //--------------------------------------------------------------------- 00053 const Vector3& KeyFrame::getTranslate(void) const 00054 { 00055 return mTranslate; 00056 } 00057 //--------------------------------------------------------------------- 00058 void KeyFrame::setScale(const Vector3& scale) 00059 { 00060 mScale = scale; 00061 if (mParentTrack) 00062 mParentTrack->_keyFrameDataChanged(); 00063 } 00064 //--------------------------------------------------------------------- 00065 const Vector3& KeyFrame::getScale(void) const 00066 { 00067 return mScale; 00068 } 00069 //--------------------------------------------------------------------- 00070 void KeyFrame::setRotation(const Quaternion& rot) 00071 { 00072 mRotate = rot; 00073 if (mParentTrack) 00074 mParentTrack->_keyFrameDataChanged(); 00075 } 00076 //--------------------------------------------------------------------- 00077 const Quaternion& KeyFrame::getRotation(void) const 00078 { 00079 return mRotate; 00080 } 00081 00082 } 00083
Copyright © 2002-2003 by The OGRE Team
Last modified Fri May 14 23:22:18 2004