Umasoft
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Classes | Macros | Typedefs | Enumerations
Dynamic Terrain (CLOD)

Classes

class  BruteTerrain
 
class  DemeterTerrain
 
class  vtDynTerrainGeom
 
class  BinTri
 
class  Block
 
class  SMTerrain
 
class  SRTerrain
 
class  TiledDatasetDescription
 
class  vtTiledGeom
 
struct  TriIndex
 
class  TVTerrain
 

Macros

#define INTEGER_HEIGHT   1
 
#define STORE_FRUSTUM   0
 
#define FAST_ALLOC   0
 
#define USE_FP8   1
 
#define SetFrust(t, i)
 
#define FRUST_OUT   0
 
#define FRUST_PARTIN   1
 
#define FRUST_ALLIN   2
 
#define PI   3.1415926535897932385
 
#define ABS(x)   (((x)<0)?(-(x)):(x))
 
#define ROUND(a)   ((int)((a)+0.5))
 
#define MAXERR   USHRT_MAX /* maximum scaled triangle error */
 
#define SMALLER1   1 /* Is neighbor 1 smaller? */
 
#define SMALLER2   2 /* Is neighbor 2 smaller? */
 
#define BIGGER3   4 /* Is neighbor 3 larger? */
 
#define SURFACE   8 /* on surface? */
 
#define ALLINFOV   16 /* completely in field of view? */
 
#define PARTINFOV   32 /* partially in field of view? */
 
#define ALLINROD   64 /* completely in rectangle of definition? */
 
#define PARTINROD   128 /* partially in rectangle of definition? */
 
#define BORDER(t)   (m_info[(t)->s] & PARTINROD)
 
#define INROD(t)   (m_info[(t)->s] & ALLINROD)
 
#define PUTONSURFACE(t)   m_info[(t)->s] = (m_info[(t)->s]&(ALLINROD|PARTINROD))|SURFACE
 
#define ONSURFACE(t)   (m_info[(t)->s] & SURFACE)
 
#define INFOV(t)   (m_info[(t)->s] & (ALLINFOV | PARTINFOV))
 
#define SMALLN1(t)   (m_info[(t)->s] & SMALLER1)
 
#define SMALLN2(t)   (m_info[(t)->s] & SMALLER2)
 
#define BIGN3(t)   (m_info[(t)->s] & BIGGER3)
 
#define ISLEAF(t)   ((t)->depth >= m_depth)
 
#define IAMLEFTCHILD(t)
 
#define TRIEQUATE(a, b)
 
#define IERRTHRESH   0.001
 
#define IERRTHRESHINC   0.00005
 
#define IDISTTHRESH   700.0
 
#define IDISTTHRESHINC   50.0
 
#define IVEXAGGER   1.0
 
#define IVEXAGGERINC   0.1
 

Typedefs

typedef osg::ref_ptr
< vtDynTerrainGeom
vtDynTerrainGeomPtr
 
typedef short HeightType
 
typedef uchar VarianceType
 
typedef int MathType
 
typedef BlockBlockPtr
 
typedef uchar * ucharptr
 
typedef bool(* ProgFuncPtrType )(int)
 
typedef osg::ref_ptr< vtTiledGeomvtTiledGeomPtr
 
typedef int Coord2d [2]
 

Enumerations

enum  DTErr {
  DTErr_OK, DTErr_EMPTY_EXTENTS, DTErr_NOTSQUARE, DTErr_NOTPOWER2,
  DTErr_NOMEM
}
 

Detailed Description

These classes are used for dynamically rendered terrain surfaces, including implementations of Continuous Level of Detail (CLOD).

Macro Definition Documentation

#define IAMLEFTCHILD (   t)
Value:
((((t)->depth&1)&&(((t)->orient^(t)->x)&1)) || \
((((t)->depth&1)==0)&&(((t)->orient^(t)->x^(t)->y)&1)))
#define TRIEQUATE (   a,
 
)
Value:
(a)->x=(b)->x; \
(a)->y=(b)->y; \
(a)->depth=(b)->depth; \
(a)->orient=(b)->orient; \
(a)->s=(b)->s