Page principale Liste des namespaces Hiérarchie des classes Liste par ordre alphabétique Liste des composants Liste des fichiers Membres des namespaces Composants Déclarations

# Référence de la classe ExCModel

`#include <ExCModel.h>`

Graphe d'héritage de la classe ExCModel

## Membres publics
| ExCModel ()
| ~ExCModel ()
void | Draw (void)
void | NextFrame (void)
void | PreviousFrame (void)
void | SetCurrentFrame (int frame)
void | SetInterpolationPourcentage (float inter)
float | GetInterpolationPourcentage (void)
void | SetManagerTexture (ExManagerTexture *Texture)
virtual void | StopRun (void)
virtual void | StartRun (void)
virtual void | StartAction (std::string Action)
virtual void | StopAction (void)
void | Forward (void)
void | Process (std::string Action)
## Attributs Protégés
ExManagerTexture * | ManagerTexture
int | m_CurrentFrames
int | m_NextFrame
int | m_numFrames
float | m_InterpolationPourcentage
bool | m_Transition
float | m_Interpolation
int | m_KeyFrameStartAction
int | m_KeyFrameStopAction
std::string | m_CurrentAction

## Documentation des contructeurs et destructeurs

ExCModel | ( |  | ) |

| Définition à la ligne 26 du fichier ExCModel.cpp. Références ExCModel(), et Guard. Référencé par ExCModel(), et ~ExCModel().
    00027 {
    00028 Guard(ExCModel::ExCModel())
    00029 UnGuard
    00030 }

~ExCModel | ( |  | ) |

| Définition à la ligne 32 du fichier ExCModel.cpp. Références ExCModel(), et Guard.
    00033 {
    00034 Guard(ExCModel::~ExCModel())
    00035 UnGuard
    00036 }

## Documentation des méthodes

void Draw | ( | void |  | ) | `[virtual]`

| Redéfinie à partir de ExCObject. Redéfinie dans ExCModel3DS, ExCModelASC, ExCModelMD2, ExCModelMD3, et ExCModelOBJ. Définition à la ligne 45 du fichier ExCModel.cpp. Références DegreesToRadians(), Draw(), GetCrossProduct(), ExCVec3D::GetX(), ExCVec3D::GetY(), ExCVec3D::GetZ(), Guard, ExCObject3D::m_AngleX, ExCObject3D::m_AngleY, ExCObject3D::m_AngleZ, ExCObject3D::m_Position, ExCObject3D::m_Target, ExCObject3D::m_Up, ExCVec3D::SetX(), ExCVec3D::SetY(), et ExCVec3D::SetZ(). Référencé par ExCModelMD2::Draw(), ExCModelASC::Draw(), ExCModel3DS::Draw(), et Draw().
    00046 {
    00047 Guard(void ExCModel::Draw(void))
    00048         //move objet to position
    00049         glRotatef(-90,1,0,0);//just for align with 3ds max cord
    00050         glTranslatef(m_Position.GetX(),m_Position.GetY(),m_Position.GetZ());
    00051         //rotate object
    00052         glRotatef(m_AngleX,1,0,0);
    00053         glRotatef(m_AngleY,0,1,0);
    00054         glRotatef(m_AngleZ,0,0,1);
    00055
    00056         //m_AngleX-=90;
    00057         if(m_AngleX<0){m_AngleX=360-m_AngleX;}
    00058     if(m_AngleX>359)m_AngleX=0;
    00059         if(m_AngleY<0)m_AngleY=359;
    00060         if(m_AngleY>359)m_AngleY=0;
    00061         if(m_AngleZ<0)m_AngleZ=359;
    00062         if(m_AngleZ>359)m_AngleZ=0;
    00063
    00064         float cosY,cosP,cosR;
    00065         float sinY,sinP,sinR;
    00066
    00067         cosY=cosf(DegreesToRadians(m_AngleY));
    00068         cosP=cosf(DegreesToRadians(m_AngleX));
    00069         cosR=cosf(DegreesToRadians(m_AngleZ));
    00070
    00071         sinY=sinf(DegreesToRadians(m_AngleY));
    00072         sinP=sinf(DegreesToRadians(m_AngleX));
    00073         sinR=sinf(DegreesToRadians(m_AngleZ));
    00074
    00075         ExCVec3D fwd,side,vtmp;
    00076
    00077         fwd.SetX(sinY*cosP);
    00078         fwd.SetY(sinP);
    00079         fwd.SetZ(cosP*-cosY);
    00080
    00081     m_Up.SetX((-cosY*sinR)-(sinY*sinP*cosR));
    00082         m_Up.SetY(cosP*cosR);
    00083         m_Up.SetZ((-sinY*sinR)-(sinP*cosR*-cosY));
    00084
    00085         //m_Position=m_Position+((m_Target-m_Position)*m_speed);
    00086         side=GetCrossProduct(fwd,m_Up);
    00087
    00088         /*
    00089         vtmp=side;
    00090         side=fwd;
    00091         fwd=vtmp;
    00092         */
    00093
    00094
    00095         m_Target=fwd+m_Position;
    00096         //Draw force vector
    00097         /*glDisable(GL_LIGHTING);
    00098         glLineWidth(20);
    00099         glColor3f(0,0,1);
    00100         glBegin(GL_LINES);
    00101                 glVertex3f(0,0,0);
    00102                 glVertex3f(m_Up.GetX()*5,m_Up.GetY()*5,m_Up.GetZ()*5);
    00103         glEnd();
    00104
    00105         glColor3f(0,1,0);
    00106         glBegin(GL_LINES);
    00107                 glVertex3f(0,0,0);
    00108                 glVertex3f(fwd.GetX()*5,fwd.GetY()*5,fwd.GetZ()*5);
    00109         glEnd();
    00110
    00111         glColor3f(1,0,0);
    00112         glBegin(GL_LINES);
    00113                 glVertex3f(0,0,0);
    00114                 glVertex3f(side.GetX()*5,side.GetY()*5,side.GetZ()*5);
    00115         glEnd();
    00116
    00117
    00118         glColor3f(1,1,1);
    00119         glBegin(GL_LINES);
    00120                 glVertex3f(0,0,0);
    00121                 glVertex3f(m_Target.GetX(),m_Target.GetY(),m_Target.GetZ());
    00122         glEnd();*/
    00123         /*glColor3f(0.5,0,0.5);
    00124         glBegin(GL_LINES);
    00125                 glVertex3f(0,0,0);
    00126                 glVertex3f(m_Position.GetX(),m_Position.GetY(),m_Position.GetZ());
    00127         glEnd();
    00128         glColor3f(0.0,0.5,0.5);
    00129         glBegin(GL_LINES);
    00130                 glVertex3f(m_Target.GetX(),m_Target.GetY(),m_Target.GetZ());
    00131                 glVertex3f(m_Position.GetX(),m_Position.GetY(),m_Position.GetZ());
    00132         glEnd();*/
    00133         glLineWidth(1.5);
    00134         glColor3f(1,1,1);
    00135 UnGuard
    00136 }

void Forward | ( | void |  | ) |

| Définition à la ligne 38 du fichier ExCModel.cpp. Références Forward(), Guard, ExCObject3D::m_Position, et ExCObject3D::m_Target. Référencé par Forward().
    00039 {
    00040 Guard(void ExCModel::Forward(void))
    00041         m_Position=m_Position+m_Target;
    00042 UnGuard
    00043 }

float GetInterpolationPourcentage | ( | void |  | ) | `[inline]`

| Définition à la ligne 78 du fichier ExCModel.h. Références m_InterpolationPourcentage.
    00078 {m_InterpolationPourcentage=inter;}

void NextFrame | ( | void |  | ) |

| Définition à la ligne 138 du fichier ExCModel.cpp. Références Guard, m_CurrentFrames, m_numFrames, et NextFrame(). Référencé par ExManagerModel::InputAction(), et NextFrame().
    00139 {
    00140 Guard(void ExCModel::NextFrame(void))
    00141         m_CurrentFrames++;
    00142         if(m_CurrentFrames>m_numFrames)m_CurrentFrames=1;
    00143 UnGuard
    00144 }

void PreviousFrame | ( | void |  | ) |

| Définition à la ligne 146 du fichier ExCModel.cpp. Références Guard, m_CurrentFrames, m_numFrames, et PreviousFrame(). Référencé par PreviousFrame().
    00147 {
    00148 Guard(void ExCModel::PreviousFrame(void))
    00149         m_CurrentFrames--;
    00150         if(m_CurrentFrames<1)m_CurrentFrames=m_numFrames;
    00151 UnGuard
    00152 }

void Process | ( | std::string | Action | ) |

| Redéfinie dans ExCModelMD2.

void SetCurrentFrame | ( | int | frame | ) |

| Définition à la ligne 154 du fichier ExCModel.cpp. Références Guard, m_CurrentFrames, m_numFrames, et SetCurrentFrame(). Référencé par SetCurrentFrame().
    00155 {
    00156 Guard(void ExCModel::SetCurrentFrame(int frame))
    00157   if(frame>0&&frame<m_numFrames)
    00158         m_CurrentFrames=frame;
    00159 UnGuard
    00160 }

void SetInterpolationPourcentage | ( | float | inter | ) | `[inline]`

| Définition à la ligne 77 du fichier ExCModel.h.
    00078 {m_InterpolationPourcentage=inter;}

void SetManagerTexture | ( | ExManagerTexture * | Texture | ) | `[inline]`

| Définition à la ligne 82 du fichier ExCModel.h. Références ManagerTexture. Référencé par ExManagerModel::Load3DS(), ExManagerModel::LoadASC(), et ExManagerModel::LoadMD2().
    00083 {ManagerTexture = Texture;}

void StartAction | ( | std::string | Action | ) | `[virtual]`

| Redéfinie dans ExCModelMD2. Définition à la ligne 178 du fichier ExCModel.cpp. Références Guard. Référencé par ExManagerModel::InputAction().
    00179 {
    00180 Guard(void ExCModel::SStartAction(std::string    Action))
    00181 UnGuard
    00182 }

void StartRun | ( | void |  | ) | `[virtual]`

| Redéfinie dans ExCModelMD2. Définition à la ligne 162 du fichier ExCModel.cpp. Références Guard, et StartRun(). Référencé par StartRun().
    00163 {
    00164 Guard(void ExCModel::StartRun(void))
    00165         //m_CurrentFrames=40;
    00166         //m_Transition=true;
    00167 UnGuard
    00168 }

void StopAction | ( | void |  | ) | `[virtual]`

| Redéfinie dans ExCModelMD2. Définition à la ligne 184 du fichier ExCModel.cpp. Références Guard, et StopAction(). Référencé par ExManagerModel::InputAction(), et StopAction().
    00185 {
    00186 Guard(void ExCModel::StopAction(void))
    00187 UnGuard
    00188 }

void StopRun | ( | void |  | ) | `[virtual]`

| Redéfinie dans ExCModelMD2. Définition à la ligne 170 du fichier ExCModel.cpp. Références Guard, et StopRun(). Référencé par StopRun().
    00171 {
    00172 Guard(void ExCModel::StopRun(void))
    00173         //m_CurrentFrames=1;
    00174         //m_Transition=false;
    00175 UnGuard
    00176 }

## Documentation des données imbriquées

std::string m_CurrentAction`[protected]`

| Définition à la ligne 62 du fichier ExCModel.h. Référencé par ExCModelMD2::Draw(), ExCModelMD2::Process(), et ExCModelMD2::StartAction().

int m_CurrentFrames`[protected]`

| Définition à la ligne 54 du fichier ExCModel.h. Référencé par ExCModelMD2::Draw(), ExCModelMD2::ExCModelMD2(), NextFrame(), PreviousFrame(), SetCurrentFrame(), ExCModelMD2::StartAction(), ExCModelMD2::StopAction(), et ExCModelMD2::StopRun().

float m_Interpolation`[protected]`

| Définition à la ligne 59 du fichier ExCModel.h. Référencé par ExCModelMD2::Draw(), et ExCModelMD2::ExCModelMD2().

float m_InterpolationPourcentage`[protected]`

| Définition à la ligne 57 du fichier ExCModel.h. Référencé par ExCModelMD2::Draw(), ExCModelMD2::ExCModelMD2(), et GetInterpolationPourcentage().

int m_KeyFrameStartAction`[protected]`

| Définition à la ligne 60 du fichier ExCModel.h. Référencé par ExCModelMD2::Draw(), et ExCModelMD2::StartAction().

int m_KeyFrameStopAction`[protected]`

| Définition à la ligne 61 du fichier ExCModel.h. Référencé par ExCModelMD2::Draw(), et ExCModelMD2::StartAction().

int m_NextFrame`[protected]`

| Définition à la ligne 55 du fichier ExCModel.h. Référencé par ExCModelMD2::Draw(), et ExCModelMD2::ExCModelMD2().

int m_numFrames`[protected]`

| Définition à la ligne 56 du fichier ExCModel.h. Référencé par ExCModelMD2::Load(), NextFrame(), PreviousFrame(), et SetCurrentFrame().

bool m_Transition`[protected]`

| Définition à la ligne 58 du fichier ExCModel.h. Référencé par ExCModelMD2::ExCModelMD2(), ExCModelMD2::StartAction(), ExCModelMD2::StartRun(), ExCModelMD2::StopAction(), et ExCModelMD2::StopRun().

ExManagerTexture* ManagerTexture`[protected]`

| Définition à la ligne 53 du fichier ExCModel.h. Référencé par ExCModelASC::BuildList(), ExCModel3DS::BuildList(), ExCModelMD2::Draw(), ExCModelMD2::Load(), et ExCModel3DS::ReadFace().

La documentation associée à cette classe a été générée à partir des fichiers suivants :

- ExCModel.h
- ExCModel.cpp