8560bc5cae
- cambiato nome da Invalidate a Reset a metodo di Obj*Graphics.
53 lines
2.0 KiB
C++
53 lines
2.0 KiB
C++
//----------------------------------------------------------------------------
|
|
// EgalTech 2014-2014
|
|
//----------------------------------------------------------------------------
|
|
// File : ObjNewGraphics.h Data : 13.02.14 Versione : 1.5b1
|
|
// Contenuto : Dichiarazione della classe grafica di un oggetto geometrico.
|
|
//
|
|
//
|
|
//
|
|
// Modifiche : 13.02.14 DS Creazione modulo.
|
|
//
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
#include "ObjEGrGraphics.h"
|
|
|
|
//----------------------------------------------------------------------------
|
|
class ObjNewGraphics : public ObjEGrGraphics
|
|
{
|
|
public :
|
|
ObjNewGraphics( void) : m_pScene( nullptr), m_bValid( false), m_nMode( 0), m_nCount( 0) {}
|
|
virtual ~ObjNewGraphics( void) ;
|
|
virtual void Reset( void) ;
|
|
|
|
public :
|
|
virtual bool IsValid( void)
|
|
{ return m_bValid ; }
|
|
virtual void SetScene( Scene* pScene)
|
|
{ m_pScene = pScene ; }
|
|
virtual Scene* GetScene( void)
|
|
{ return m_pScene ; }
|
|
virtual bool AddPolyLine( const PolyLine& PL) ;
|
|
virtual bool Draw( void) ;
|
|
|
|
private :
|
|
bool DeleteVaoVbo( void) ;
|
|
|
|
private :
|
|
Scene* m_pScene ; // puntatore alla scena
|
|
bool m_bValid ; // flag
|
|
int m_nMode ; // modo di utilizzo dei vertici
|
|
int m_nCount ; // numero di vertici nel VBO
|
|
unsigned int m_nVaoId ; // Id del VAO
|
|
unsigned int m_nVboId ; // Id del VBO
|
|
} ;
|
|
|
|
//----------------------------------------------------------------------------
|
|
inline const ObjNewGraphics* GetObjNewGraphics( const IGeoObj* pGObj)
|
|
{ return (dynamic_cast<const ObjNewGraphics*>(pGObj->GetObjGraphics())) ; }
|
|
inline ObjNewGraphics* GetObjNewGraphics( IGeoObj* pGObj)
|
|
{ return (dynamic_cast<ObjNewGraphics*>(pGObj->GetObjGraphics())) ; }
|