| 
| 
  | LayerStack () | 
|   | Create an empty terrain. 
  | 
|   | 
|   | LayerStack (const Box2 &, int, int) | 
|   | Create a terrain with different material layers.  
  | 
|   | 
|   | LayerStack (const ScalarField2 &) | 
|   | Create terrain.  
  | 
|   | 
|   | LayerStack (const ScalarField2 &, const ScalarField2 &) | 
|   | Create terrain.  
  | 
|   | 
|   | LayerStack (const ScalarField2 &, const ScalarField2 &, const ScalarField2 &, const ScalarField2 &, const ScalarField2 &, const ScalarField2 &, const ScalarField2 &, const ScalarField2 &) | 
|   | Create a layered terrain model.  
  | 
|   | 
| 
  | ~LayerStack () | 
|   | Empty. 
  | 
|   | 
| 
void  | Subdivide () | 
|   | Double the resolution of the terrain. 
  | 
|   | 
| Box  | GetBox () const | 
|   | Compute the bounding box of the terrain.  
  | 
|   | 
| double  | Vegetation (const Vector2 &) const | 
|   | Return the vegetation density.  
  | 
|   | 
| double  | Vegetation (int, int) const | 
|   | Return the vegetation density.  
  | 
|   | 
| double  | Grass (const Vector2 &) const | 
|   | Return the grass elevation.  
  | 
|   | 
| double  | Grass (int, int) const | 
|   | Return the grass elevation.  
  | 
|   | 
| double  | Water (const Vector2 &) const | 
|   | Return the water elevation.  
  | 
|   | 
| double  | Water (int, int) const | 
|   | Return the water elevation.  
  | 
|   | 
| double  | Rocks (const Vector2 &) const | 
|   | Return the rocks elevation.  
  | 
|   | 
| double  | Rocks (int, int) const | 
|   | Return the rocks elevation.  
  | 
|   | 
| 
ScalarField2 &  | GetRock () | 
|   | Access to the rock scalar field. 
  | 
|   | 
| 
ScalarField2 &  | GetWater () | 
|   | Access to the water scalar field. 
  | 
|   | 
| 
ScalarField2 &  | GetSnow () | 
|   | Access to the snow scalar field. 
  | 
|   | 
| 
ScalarField2 &  | GetGrass () | 
|   | Access to the grass scalar field. 
  | 
|   | 
| 
ScalarField2 &  | GetVegetation () | 
|   | Access to the vegetation scalar field. 
  | 
|   | 
| 
ScalarField2 &  | GetAlpha () | 
|   | Access to the alpha scalar field. 
  | 
|   | 
| HeightField  | GetHeightField (bool=true, bool=true) const | 
|   | Convert the layered model into a simple heightfield.  
  | 
|   | 
| void  | UpdateHeightField (HeightField &, const QRect &=QRect(), bool=true, bool=true) const | 
|   | Convert the layer model into a simple heightfield.  
  | 
|   | 
| bool  | Intersect (const Ray &, double &, Vector &) const | 
|   | Compute the intersection between a ray and the surface of the terrain.  
  | 
|   | 
| LayerStack  | Crop (const QPoint &, const QPoint &) const | 
|   | Crops a rectangular region in the terrain.  
  | 
|   | 
| void  | WaterFlood (const double &) | 
|   | Fill the terrain with a water body.  
  | 
|   | 
| void  | WaterFlood (const Vector2 &, const double &) | 
|   | Flood fills a region with water.  
  | 
|   | 
| void  | WaterDry (const Vector2 &) | 
|   | Dries a connex region, removing water using a flood fill algorithm.  
  | 
|   | 
| void  | SandOverall (const double &) | 
|   | Add sand over the terrain.  
  | 
|   | 
| void  | RockOverall (const double &) | 
|   | Add rock over the terrain.  
  | 
|   | 
| 
QVector< Vector >  | GetTrees () const | 
|   |  <FONT COLOR="AA2222"><B>Warning</B></FONT> 
  | 
|   | 
| Vector  | Vertex (int, int) const | 
|   | Compute the vertex corresponding to a given sample.  
  | 
|   | 
| Vector  | Vertex (const Vector2 &) const | 
|   | Compute the elevation of a point, which is the sum of the bedrock, sand and rocks layers.  
  | 
|   | 
| Vector  | Normal (int, int) const | 
|   | Compute the normal at a given sample.  
  | 
|   | 
| Color  | GetColorVector (int, int) const | 
|   | Compute the vertex corresponding to a given sample.  
  | 
|   | 
| double  | Height (const Vector2 &) const | 
|   | Compute the elevation of a point, which is the sum of the bedrock, sand and rocks layers.  
  | 
|   | 
| Vector  | Normal (const Vector2 &, bool=false) const | 
|   | Compute the normal for a given position on the terrain.  
  | 
|   | 
| void  | Scale (const double &) | 
|   | Scale the layer-field.  
  | 
|   | 
| void  | Translate (const Vector2 &) | 
|   | Translate the layer-field.  
  | 
|   | 
| void  | Save (const QString &) const | 
|   | Save structure as a set of images.  
  | 
|   | 
| 
Mesh  | CreateWaterGeometry () const | 
|   | Create the geometry of the water on the terrain. 
  | 
|   | 
| void  | CreateCubes (Box &, QVector< FrameScaled > &, QVector< FrameScaled > &, QVector< FrameScaled > &, QVector< FrameScaled > &, QVector< FrameScaled > &, QVector< FrameScaled > &, bool=true, bool=true, bool=true, bool=true, bool=true, bool=true) const | 
|   | Create a material stack representation of the model.  
  | 
|   | 
| 
  | HeightFieldSediment () | 
|   | Create an empty terrain. 
  | 
|   | 
|   | HeightFieldSediment (const Box2 &, int, int) | 
|   | Create a flat terrain with no sediments.  
  | 
|   | 
|   | HeightFieldSediment (const ScalarField2 &) | 
|   | Create a terrain with no sediments from an elevation field.  
  | 
|   | 
|   | HeightFieldSediment (const ScalarField2 &, const ScalarField2 &) | 
|   | Create a terrain with sediments.  
  | 
|   | 
| 
  | ~HeightFieldSediment () | 
|   | Empty. 
  | 
|   | 
| 
Array2  | GetArray () const | 
|   | Return the array representing the grid domain. 
  | 
|   | 
| 
ScalarField2  | AlphaBlend () const | 
|   | Compute the alpha blending between sand and bedrock. 
  | 
|   | 
| 
HeightField  | GetHeightField () const | 
|   | Convert the layered model into a simple heightfield. 
  | 
|   | 
| bool  | Intersect (const Ray &, double &, Vector &) const | 
|   | Compute the intersection between a ray and the surface of the terrain.  
  | 
|   | 
| void  | SmoothRock (int=1) | 
|   | Smoothes the bedrock layer.  
  | 
|   | 
| 
HeightField &  | GetBedrock () | 
|   | Access to the bedrock scalar field. 
  | 
|   | 
| 
ScalarField2 &  | GetSand () | 
|   | Access to the sand scalar field. 
  | 
|   | 
| double  | Bedrock (const Vector2 &) const | 
|   | Compute the bedrock elevation.  
  | 
|   | 
| double  | Bedrock (int, int) const | 
|   | Return the bedrock elevation.  
  | 
|   | 
| double  | Sand (const Vector2 &) const | 
|   | Compute the sand thickness.  
  | 
|   | 
| double  | Sand (int, int) const | 
|   | Return the sand thickness.  
  | 
|   | 
| 
void  | Subdivide () | 
|   | Double the resolution of the terrain. 
  | 
|   | 
| void  | BedrockFlatten (const Vector2 &, const double &, const double &=0.25) | 
|   | Flatten the bedrock around the target point.  
  | 
|   | 
| void  | BedrockLevel (const Vector2 &, const double &, const double &) | 
|   | Level the bedrock to the target elevation.  
  | 
|   | 
| void  | BedrockUplift (const double &) | 
|   | Modify the bedrock using a uniform uplift.  
  | 
|   | 
| void  | BedrockUplift (const ScalarField2 &) | 
|   | Uplift.  
  | 
|   | 
| void  | ThermalImpact (const double &) | 
|   | Globally transform a thin layer of bedrock into sediments.  
  | 
|   | 
| void  | ThermalImpactSlope (const double &) | 
|   | Globally transform a thin layer of bedrock into sediments.  
  | 
|   | 
| void  | Stabilize (const double &, const double &=0.84) | 
|   | Stabilizes sediments over the entire terrain.  
  | 
|   | 
| bool  | StabilizeStep (int, int, const double &, ScalarField2 &) | 
|   | Perform a stabilization step on the given layered cell.  
  | 
|   | 
| int  | CheckFlowSlope (const QPoint &, FlowStruct &) const | 
|   | Compute the flow directions at a given point.  
  | 
|   | 
| int  | CheckFlowDirectionsAngle (const QPoint &, const double &, QPoint *, double *, double *, double *) const | 
|   | Compute the flow directions at a given point.  
  | 
|   | 
| bool  | SelectFlowDirection (const QPoint &, QPoint &, double &) const | 
|   | Select flow direction.  
  | 
|   | 
| 
void  | TRUC (const QPoint &q, const double &slope, const double &V_T, double &V_T_S, double &V_E_R, double &V_E_S, double &V_D_S) | 
|   | Compute eroded material. 
  | 
|   | 
This class implements a layered heightfield.