GRE::LAYERVIEW Class Reference

Container for layer information retained for each view. More...

#include <gre/layerview.h>

Inheritance diagram for GRE::LAYERVIEW:

Inheritance graph
GRE::LAYERVIEW_GEOMETRICGRE::LAYERVIEW_LABELED
[legend]
List of all members.

Public Types

enum  RENDERTYPE { RENDERTYPE_Layer = 0, RENDERTYPE_Labels = 1, RENDERTYPE_Highlight = 2 }

Public Member Functions

void CheckRendered ()
void ClearAllDrawnSets (bool UseHighlighted)
void ClearLabelPlacement ()
ERRVALUE ComputeTrans ()
ERRVALUE DrawElementsToBuffer (ELEMTYPE ElemType, const UINT8 *ElemSet, GRE::LAYERVIEW::RENDERTYPE RenderType, GRE::DRAWFLAGS drawflags)
ERRVALUE DrawElementsToDevice (ELEMTYPE ElemType, const UINT8 *ElemSet, MGD::DEVICE *pDevice, GRE::DRAWFLAGS drawflags)
ERRVALUE DrawElementToBuffer (ELEMTYPE ElemType, INT32 ElemNum, GRE::LAYERVIEW::RENDERTYPE RenderType, GRE::DRAWFLAGS drawflags)
ERRVALUE DrawElementToDevice (ELEMTYPE ElemType, INT32 ElemNum, MGD::DEVICE *pDevice, GRE::DRAWFLAGS drawflags)
double Get3dDepthScale () const
double Get3dSurfaceIncrement () const
const GRE::VIEWPOINT3DGet3dViewPoint () const
double Get3dZScale () const
double GetDesignScale () const
const LRECT2DGetDeviceRectUsed () const
BITSETGetElemDrawnSet (ELEMTYPE ElemType, bool UseHighlighted)
const BITSETGetElemDrawnSet (ELEMTYPE ElemType, bool UseHighlighted) const
LABELPLACEMENTGetLabelPlacement (bool ReturnNullIfEmpty=true)
GRE::LAYERGetLayer () const
RENDERBUFFERGetRenderBuffer (RENDERTYPE RenderType)
const RENDERBUFFERGetRenderBuffer (RENDERTYPE RenderType) const
GRE::LAYER_SURFACEGetSurfaceLayer () const
const TRANS2D_MAPGENGetTransLayerDevice () const
const TRANS2D_MAPGENGetTransLayerSurface () const
const TRANS2D_MAPGENGetTransLayerView () const
GRE::VIEWGetView () const
bool HasSurfaceNulls () const
bool Is3D () const
bool Is3dStereo () const
bool IsLayerOverlappedDevice () const
bool IsSurfaceUsed () const
bool OverlayBufferIfRendered (RENDERTYPE RenderType, MGD::DEVICE *pDevTarget, const LRECT2D *pClipRect=0)
void ResetAllDrawnSets ()
void ResetRendered (GRE::RENDERTARGET target=GRE::RENDERTARGET_LayerAll)
virtual ~LAYERVIEW ()

Protected Member Functions

 LAYERVIEW (GRE::LAYER *layer, GRE::VIEW *view)

Private Member Functions

virtual BITSETv_GetElemDrawnSet (ELEMTYPE ElemType, bool UseHighlighted)
virtual LABELPLACEMENTv_GetLabelPlacement ()

Detailed Description

Container for layer information retained for each view.

Definition at line 73 of file layerview.h.


Member Enumeration Documentation

enum GRE::LAYERVIEW::RENDERTYPE

Rendering buffer types.

Enumerator:
RENDERTYPE_Layer 
RENDERTYPE_Labels 
RENDERTYPE_Highlight 

Definition at line 77 of file layerview.h.


Constructor & Destructor Documentation

virtual GRE::LAYERVIEW::~LAYERVIEW (  )  [virtual]

GRE::LAYERVIEW::LAYERVIEW ( GRE::LAYER layer,
GRE::VIEW view 
) [protected]

Constructor.


Member Function Documentation

void GRE::LAYERVIEW::CheckRendered (  ) 

Check if existing renderings are still valid.

void GRE::LAYERVIEW::ClearAllDrawnSets ( bool  UseHighlighted  ) 

Clear all 'drawn element' sets.

Does not resize the sets.

void GRE::LAYERVIEW::ClearLabelPlacement (  ) 

Clear label placement if any.

ERRVALUE GRE::LAYERVIEW::ComputeTrans (  ) 

Compute all transformations.

ERRVALUE GRE::LAYERVIEW::DrawElementsToBuffer ( ELEMTYPE  ElemType,
const UINT8 ElemSet,
GRE::LAYERVIEW::RENDERTYPE  RenderType,
GRE::DRAWFLAGS  drawflags 
)

Draw set of elements to specified rendering buffer.

ERRVALUE GRE::LAYERVIEW::DrawElementsToDevice ( ELEMTYPE  ElemType,
const UINT8 ElemSet,
MGD::DEVICE pDevice,
GRE::DRAWFLAGS  drawflags 
)

Draw set of elements to specified rendering device.

ERRVALUE GRE::LAYERVIEW::DrawElementToBuffer ( ELEMTYPE  ElemType,
INT32  ElemNum,
GRE::LAYERVIEW::RENDERTYPE  RenderType,
GRE::DRAWFLAGS  drawflags 
)

Draw single element to specified rendering buffer.

ERRVALUE GRE::LAYERVIEW::DrawElementToDevice ( ELEMTYPE  ElemType,
INT32  ElemNum,
MGD::DEVICE pDevice,
GRE::DRAWFLAGS  drawflags 
)

Draw single element to specified rendering device.

double GRE::LAYERVIEW::Get3dDepthScale (  )  const [inline]

Get depth scaling, multiplied by depth to get drawing scale.

Definition at line 136 of file layerview.h.

double GRE::LAYERVIEW::Get3dSurfaceIncrement (  )  const [inline]

Get increment in layer relative to once cell in surface layer.

Definition at line 140 of file layerview.h.

const GRE::VIEWPOINT3D* GRE::LAYERVIEW::Get3dViewPoint (  )  const [inline]

Get 3D viewpoint.

Definition at line 144 of file layerview.h.

double GRE::LAYERVIEW::Get3dZScale (  )  const [inline]

Get 3D Z scaling.

Definition at line 148 of file layerview.h.

double GRE::LAYERVIEW::GetDesignScale (  )  const [inline]

Get design scale.

Definition at line 152 of file layerview.h.

const LRECT2D& GRE::LAYERVIEW::GetDeviceRectUsed (  )  const [inline]

Get device rectangle used for rendering.

This is a nominal rectangle based on layer extents and may not account for symbology and marginalia. Returned rectangle may not be suitable for clipping during drawing, but will be suitable for selection of source object elements.

Definition at line 159 of file layerview.h.

BITSET* GRE::LAYERVIEW::GetElemDrawnSet ( ELEMTYPE  ElemType,
bool  UseHighlighted 
) [inline]

Get set for elements drawn in view (non-const).

Returns:
NULL if no elements of specified type supported by layer. The set returned by this method should only contain the elements which are actually visible in the view. Normally when checking for highlighted elements, the GRE::LAYER::GetElemHighlightSet method should be used.
Parameters:
UseHighlighted  Element type True to return set for visible elements drawn as 'highlighted'

Definition at line 175 of file layerview.h.

const BITSET* GRE::LAYERVIEW::GetElemDrawnSet ( ELEMTYPE  ElemType,
bool  UseHighlighted 
) const [inline]

Get set for elements drawn in view (const).

Returns:
NULL if no elements of specified type supported by layer. The set returned by this method only contains the elements which are actually visible in the view. Normally when checking for highlighted elements, the GRE::LAYER::GetElemHighlightSet method should be used.
Parameters:
UseHighlighted  Element type True to return set for visible elements drawn as 'highlighted'

Definition at line 166 of file layerview.h.

LABELPLACEMENT* GRE::LAYERVIEW::GetLabelPlacement ( bool  ReturnNullIfEmpty = true  ) 

Get pointer to label placement instance.

Returns:
LABELPLACEMENT pointer or NULL if not supported.
Parameters:
ReturnNullIfEmpty  Return NULL pointer if no labels

GRE::LAYER* GRE::LAYERVIEW::GetLayer (  )  const [inline]

Get associated GRE::LAYER.

Definition at line 187 of file layerview.h.

RENDERBUFFER& GRE::LAYERVIEW::GetRenderBuffer ( RENDERTYPE  RenderType  )  [inline]

Get rendering buffer for specified rendering type (non-const).

Parameters:
RenderType  Rendering type

Definition at line 196 of file layerview.h.

const RENDERBUFFER& GRE::LAYERVIEW::GetRenderBuffer ( RENDERTYPE  RenderType  )  const [inline]

Get rendering buffer for specified rendering type (const).

Parameters:
RenderType  Rendering type

Definition at line 191 of file layerview.h.

GRE::LAYER_SURFACE* GRE::LAYERVIEW::GetSurfaceLayer (  )  const [inline]

Get surface layer for 3D draping.

Definition at line 201 of file layerview.h.

const TRANS2D_MAPGEN& GRE::LAYERVIEW::GetTransLayerDevice (  )  const [inline]

Get transformation from layer to device coordinates.

Definition at line 205 of file layerview.h.

const TRANS2D_MAPGEN& GRE::LAYERVIEW::GetTransLayerSurface (  )  const [inline]

Get transformation from 'layer' to 'surface' coordinates.

Definition at line 209 of file layerview.h.

const TRANS2D_MAPGEN& GRE::LAYERVIEW::GetTransLayerView (  )  const [inline]

Get transformation from layer to view coordinates.

Definition at line 213 of file layerview.h.

GRE::VIEW* GRE::LAYERVIEW::GetView (  )  const [inline]

Get associated GRE::VIEW.

Definition at line 217 of file layerview.h.

bool GRE::LAYERVIEW::HasSurfaceNulls (  )  const [inline]

Determine if surface has nulls.

Definition at line 221 of file layerview.h.

bool GRE::LAYERVIEW::Is3D (  )  const [inline]

Determine if drawing in 3D.

Definition at line 225 of file layerview.h.

bool GRE::LAYERVIEW::Is3dStereo (  )  const

Determine if drawing 3D in stereo.

bool GRE::LAYERVIEW::IsLayerOverlappedDevice (  )  const [inline]

Determine if layer overlaps view device display area.

Definition at line 237 of file layerview.h.

bool GRE::LAYERVIEW::IsSurfaceUsed (  )  const [inline]

Determine if surface (layer or flat) is being used.

Definition at line 233 of file layerview.h.

bool GRE::LAYERVIEW::OverlayBufferIfRendered ( RENDERTYPE  RenderType,
MGD::DEVICE pDevTarget,
const LRECT2D pClipRect = 0 
)

Overlay rendering buffer on device if it has been rendered.

Returns:
true if did overlay, false if not.
Parameters:
RenderType  Render type
pDevTarget  Target device
pClipRect  Optional clip rectangle

void GRE::LAYERVIEW::ResetAllDrawnSets (  ) 

Reset all 'drawn element' sets to have no entries.

void GRE::LAYERVIEW::ResetRendered ( GRE::RENDERTARGET  target = GRE::RENDERTARGET_LayerAll  ) 

Reset rendered status so redraws.

virtual BITSET* GRE::LAYERVIEW::v_GetElemDrawnSet ( ELEMTYPE  ElemType,
bool  UseHighlighted 
) [private, virtual]

Get set for elements drawn in view.

Returns:
NULL if no elements of specified type supported by layer.

virtual LABELPLACEMENT* GRE::LAYERVIEW::v_GetLabelPlacement (  )  [private, virtual]

Get pointer label placement manager.

Returns:
NULL if labels not supported.


The documentation for this class was generated from the following file:
Generated on Thu Apr 26 04:48:06 2007 for TNTsdk by  doxygen 1.5.2