GRE::GEOMETRIC3D Class Reference

Base class for 3D geometric models. More...

#include <gre/3dgeomet.h>

Inheritance diagram for GRE::GEOMETRIC3D:
Inheritance graph
[legend]

List of all members.

Classes

class  IMPL_FACTORY

Public Types

enum  MODEL {
  MODEL_Default = 0, MODEL_Vector = 0, MODEL_CAD = 1, MODEL_Shape = 2,
  MODEL_Pinmap = 3, MODEL_TIN = 4, MODEL_Count = 5
}

Public Member Functions

virtual ~GEOMETRIC3D ()
ERRVALUE Build (const GRE::LAYER *layer)
GEOMETRIC3DCreateInstance ()
ERRVALUE DrawScene (CONTROLLER &controller, DRAWINGCONTEXT3D &drawing, TERRAIN *terrain, const bool wireframe=false)
void Free ()
const SPATREF::COORDREFSYS GetCoordRefSys ()
const char * GetDescription () const
const DRECT3DGetExtents ()
const MODEL GetModel () const
const char * GetName () const
const TRANS2D_MAPGENGetTransformationInternalToModel ()
bool IsBuilt ()
virtual bool IsPointsFieldNeeded ()
virtual bool IsTerrainNeeded ()
void SetCoordRefSys (const SPATREF::COORDREFSYS &CoordRefSys)
void SetScene (SCENE3D &scene)

Static Public Member Functions

static const char * GetDescription (MODEL model)
static GEOMETRIC3DGetInstance (MODEL model)
static const char * GetName (MODEL model)
static void Register (IMPL_FACTORY *factory, const MODEL model)

Protected Member Functions

 GEOMETRIC3D (const char *name, const char *desc, const MODEL model)
void AppendElements (GEOMETRIC3D_ELEMENTS *elements)
void ClearElements ()
double ComputeScaleForPoint (const DPOINT2D &point)
void SetBuilt (const bool built)

Private Member Functions

virtual void OnDrawBegin (GRE::GEOMETRIC3D_BUILDER *builder, const bool wireframe=false)
virtual void OnDrawEnd ()
virtual ERRVALUE v_Build (const GRE::LAYER *layer)=0
virtual GEOMETRIC3Dv_CreateInstance ()=0
virtual void v_Free ()=0
virtual const SPATREF::COORDREFSYS v_GetCoordRefSys ()=0
virtual const DRECT3Dv_GetExtents ()=0
virtual const TRANS2D_MAPGENv_GetTransformationInternalToModel ()=0
virtual void v_SetCoordRefSys (const SPATREF::COORDREFSYS &CoordRefSys)=0

Detailed Description

Base class for 3D geometric models.


Member Enumeration Documentation

Enumerator:
MODEL_Default 
MODEL_Vector 
MODEL_CAD 
MODEL_Shape 
MODEL_Pinmap 
MODEL_TIN 
MODEL_Count 

Constructor & Destructor Documentation

virtual GRE::GEOMETRIC3D::~GEOMETRIC3D (  )  [virtual]
GRE::GEOMETRIC3D::GEOMETRIC3D ( const char *  name,
const char *  desc,
const MODEL  model 
) [protected]

Member Function Documentation

void GRE::GEOMETRIC3D::AppendElements ( GEOMETRIC3D_ELEMENTS elements  )  [inline, protected]
ERRVALUE GRE::GEOMETRIC3D::Build ( const GRE::LAYER layer  )  [inline]

Build internal structures for geometric construction for given drape layer.

Returns:
0 if built or < 0 if an error
void GRE::GEOMETRIC3D::ClearElements (  )  [protected]
double GRE::GEOMETRIC3D::ComputeScaleForPoint ( const DPOINT2D point  )  [protected]
GEOMETRIC3D* GRE::GEOMETRIC3D::CreateInstance (  )  [inline]

Create new instance of geometric model.

Returns:
instance of geometric model
ERRVALUE GRE::GEOMETRIC3D::DrawScene ( CONTROLLER controller,
DRAWINGCONTEXT3D drawing,
TERRAIN terrain,
const bool  wireframe = false 
)

Draw given geometric.

Returns:
>= 0 if set is done
void GRE::GEOMETRIC3D::Free (  )  [inline]

Free internal structures for geometric construction.

const SPATREF::COORDREFSYS GRE::GEOMETRIC3D::GetCoordRefSys (  )  [inline]

Get map projection be used for output data.

const char* GRE::GEOMETRIC3D::GetDescription (  )  const

GetDescription returns a description of the model.

Returns:
char pointer of the description
static const char* GRE::GEOMETRIC3D::GetDescription ( MODEL  model  )  [static]

GetDescription returns a description of the given model enum.

Returns:
char pointer of the description
const DRECT3D& GRE::GEOMETRIC3D::GetExtents (  )  [inline]

Get extents in map projection coordinates.

Returns:
extents
static GEOMETRIC3D* GRE::GEOMETRIC3D::GetInstance ( MODEL  model  )  [static]

GetInstance returns a new instance of the given model enum.

Returns:
pointer to new model
const MODEL GRE::GEOMETRIC3D::GetModel (  )  const [inline]

GetModel returns an enum of the model.

Returns:
enum of the model
const char* GRE::GEOMETRIC3D::GetName (  )  const

GetName returns a name of the model.

Returns:
char pointer of the name
static const char* GRE::GEOMETRIC3D::GetName ( MODEL  model  )  [static]

GetName returns a name of the given model enum.

Returns:
char pointer of the name
const TRANS2D_MAPGEN& GRE::GEOMETRIC3D::GetTransformationInternalToModel (  )  [inline]

Get transformation from object coordinates to specifyed map projection.

Returns:
TRANS2D_MAPGEN&
bool GRE::GEOMETRIC3D::IsBuilt (  ) 

Is internal structures for geometric construction built?

Returns:
true if built or false if an error
virtual bool GRE::GEOMETRIC3D::IsPointsFieldNeeded (  )  [virtual]

Is points field needed for geometric construction.

Returns:
true id needed or false if not
virtual bool GRE::GEOMETRIC3D::IsTerrainNeeded (  )  [virtual]

Is terrain needed for geometric construction.

Returns:
true id needed or false if not
virtual void GRE::GEOMETRIC3D::OnDrawBegin ( GRE::GEOMETRIC3D_BUILDER builder,
const bool  wireframe = false 
) [private, virtual]
virtual void GRE::GEOMETRIC3D::OnDrawEnd (  )  [private, virtual]
static void GRE::GEOMETRIC3D::Register ( IMPL_FACTORY factory,
const MODEL  model 
) [static]
void GRE::GEOMETRIC3D::SetBuilt ( const bool  built  )  [protected]

Set built state?

void GRE::GEOMETRIC3D::SetCoordRefSys ( const SPATREF::COORDREFSYS CoordRefSys  )  [inline]

Set model map projection be used for output data.

void GRE::GEOMETRIC3D::SetScene ( SCENE3D scene  )  [inline]

Draw given geometric.

Returns:
>= 0 if set is done
virtual ERRVALUE GRE::GEOMETRIC3D::v_Build ( const GRE::LAYER layer  )  [private, pure virtual]
virtual GEOMETRIC3D* GRE::GEOMETRIC3D::v_CreateInstance (  )  [private, pure virtual]
virtual void GRE::GEOMETRIC3D::v_Free (  )  [private, pure virtual]
virtual const SPATREF::COORDREFSYS GRE::GEOMETRIC3D::v_GetCoordRefSys (  )  [private, pure virtual]
virtual const DRECT3D& GRE::GEOMETRIC3D::v_GetExtents (  )  [private, pure virtual]
virtual const TRANS2D_MAPGEN& GRE::GEOMETRIC3D::v_GetTransformationInternalToModel (  )  [private, pure virtual]
virtual void GRE::GEOMETRIC3D::v_SetCoordRefSys ( const SPATREF::COORDREFSYS CoordRefSys  )  [private, pure virtual]

The documentation for this class was generated from the following file:

Generated on Sun Oct 7 21:34:13 2012 for TNTsdk 2012 by  doxygen 1.6.1