Files
Include/EGkSurfFlatRegion.h
T
Dario Sassi bcab2c29e0 Include :
- aggiunta SurfFlatRegion.
2015-08-07 10:48:59 +00:00

52 lines
2.3 KiB
C++

//----------------------------------------------------------------------------
// EgalTech 2015-2015
//----------------------------------------------------------------------------
// File : EgkSurfFlatRegion.h Data : 05.08.15 Versione : 1.6h2
// Contenuto : Dichiarazione della interfaccia ISurfFlatRegion.
//
//
//
// Modifiche : 05.08.15 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
#pragma once
#include "/EgtDev/Include/EGkSurf.h"
#include "/EgtDev/Include/EGkIntersCurves.h"
class ISurfTriMesh ;
//----------------------------------------------------------------------------
class __declspec( novtable) ISurfFlatRegion : public ISurf
{
public :
virtual bool CopyFrom( const IGeoObj* pGObjSrc) = 0 ;
virtual bool Clear( void) ;
virtual bool SetExtLoop( const ICurve& cCrv) = 0 ;
virtual bool SetExtLoop( ICurve* pCrv) = 0 ;
virtual bool AddIntLoop( const ICurve& cCrv) = 0 ;
virtual bool AddIntLoop( ICurve* pCrv) = 0 ;
virtual ICurve* GetLoop( int nLoop) const = 0 ; // nLoop=0 esterno, successivi interni
virtual int GetIntLoopNumber( void) const = 0 ;
virtual const ISurfTriMesh* GetAuxSurf( void) const = 0 ;
virtual bool GetCurveClassification( const ICurve& Crv, CRVCVECTOR& ccClass) const = 0 ;
} ;
//-----------------------------------------------------------------------------
inline ISurfFlatRegion* CreateSurfFlatRegion( void)
{ return (static_cast<ISurfFlatRegion*>( CreateGeoObj( SRF_FLATRGN))) ; }
inline ISurfFlatRegion* CloneSurfFlatRegion( const IGeoObj* pGObj)
{ if ( pGObj == nullptr || pGObj->GetType() != SRF_FLATRGN)
return nullptr ;
return (static_cast<ISurfFlatRegion*>(pGObj->Clone())) ; }
inline const ISurfFlatRegion* GetSurfFlatRegion( const IGeoObj* pGObj)
{ if ( pGObj == nullptr || pGObj->GetType() != SRF_FLATRGN)
return nullptr ;
return (static_cast<const ISurfFlatRegion*>(pGObj)) ; }
inline ISurfFlatRegion* GetSurfFlatRegion( IGeoObj* pGObj)
{ if ( pGObj == nullptr || pGObj->GetType() != SRF_FLATRGN)
return nullptr ;
return (static_cast<ISurfFlatRegion*>(pGObj)) ; }