VedaLib3DEngine/ModifierObject3DDisplace.h

Go to the documentation of this file.
00001 /*! \file 
00002     \author victorien ferry & www.m4nkind.com
00003     \brief This file applies the GNU LESSER GENERAL PUBLIC LICENSE Version 2.1 , read file COPYING.
00004 */
00005 #ifndef COM_M4NKIND_ModifierObject3DDisplace_H
00006 #define COM_M4NKIND_ModifierObject3DDisplace_H
00007 #include "ModifierObject3DVirtual.h"
00008 //#include "PackDynamicFloat.h"
00009 #include "PackObjectReference.h"
00010 
00011 /*!
00012     \class  ModifierObject3DDisplace
00013     \ingroup BaseObjectInherited_VedaLib3DEngine
00014     \brief  Modifier able to deform an object in realtime.
00015 */
00016 
00017 class ModifierObject3DDisplace : public ModifierObject3DVirtual
00018 {
00019 /*==================================================================
00020                                 PUBLIC
00021 ==================================================================*/
00022 public:
00023     /*!
00024         \brief  Constructor. There should only be members initialisation there.
00025     */
00026     ModifierObject3DDisplace(void);
00027 
00028     /*!
00029         \brief  Class Inheritance Descriptors. Also forces a destructor. See BASEOBJECT_DECLARE_... in .cpp
00030     */
00031     BASEOBJECT_DEFINE_CLASS(ModifierObject3DDisplace);
00032 
00033     /*
00034         \brief  Apply a modification on a vertex (shape or color or anything).
00035         \param  _pVertexList first vertex to modify
00036         \param  _NbVertex number of vertex in list.
00037         \param  _framedate  date in seconds.
00038     */
00039     virtual void Modify( VirtualMachine::InternalVertex *_pVertexList,
00040                             const unsigned int _NbVertex,
00041                             float _framedate);
00042 
00043 /*==================================================================
00044                                 PROTECTED
00045 ==================================================================*/
00046 protected:
00047     //! reference to displacing equation 
00048     PackObjectReference mSer_Equation;
00049 
00050     //! a center to scroll.(X,Y,Z)
00051     //PackDynamicFloat  mSer_Center;
00052     //! the distance frequence for modifying.(X,Y,Z)
00053     //PackDynamicFloat  mSer_Frequence;
00054     //!  the distance frequence for modifying.(X,Y,Z)
00055     //PackDynamicFloat  mSer_Amplitude;
00056     //! optimization
00057     //float m_LastComputedDate;
00058 /*  //! computed result
00059     float   m_Center[4];
00060     //! computed result
00061     float   m_Freq[4];
00062     //! computed result
00063     float   m_Amp[4];*/
00064 
00065 };
00066 
00067 #endif

      /\/\        4         N         k         !         N         D
                      _______  _ __ ___  _____            ___ _ _  ____
     ___________  __//___   /________  |/    / ___________\_______/    \
    /   _   _   \/   _     /    _   /      _/_/____/    _       __     /
   /    /   /       /     /    /    \      \/     /    /    \   \     /
  \\___/___/___/    ¯    _____/_____/       ______\___/_____/\________\\
               \________/_ ___ __ l____\      /elD!  
                 http://www.m4nkind.com \____/