Mercator
Public Member Functions | Protected Attributes | Private Member Functions
Mercator::SlopeTerrainMod< Shape > Class Template Reference

Terrain modifier that defines an area of sloped height. More...

#include <TerrainMod.h>

Inheritance diagram for Mercator::SlopeTerrainMod< Shape >:
Mercator::ShapeTerrainMod< Shape > Mercator::TerrainMod Mercator::Effector

List of all members.

Public Member Functions

 SlopeTerrainMod (float level, float dx, float dy, const Shape< 2 > &s)
 Constructor.
virtual void apply (float &point, int x, int y) const
 Apply this modifier on a terrain segment.
virtual TerrainModclone () const
 Create a copy of this modifier.
void setShape (float level, float dx, float dy, const Shape< 2 > &s)

Protected Attributes

float m_level
 The height of the centre point.
float m_dx
 The rate of change of the height along X.
float m_dy
 The rate of change of the height along Y.

Private Member Functions

 SlopeTerrainMod (SlopeTerrainMod &)
 Copy constructor.

Detailed Description

template<template< int > class Shape>
class Mercator::SlopeTerrainMod< Shape >

Terrain modifier that defines an area of sloped height.

This modifier creates a sloped area. The center point is set to a level and all other points are set based on specified gradients.


Constructor & Destructor Documentation

template<template< int > class Shape>
Mercator::SlopeTerrainMod< Shape >::SlopeTerrainMod ( float  level,
float  dx,
float  dy,
const Shape< 2 > &  s 
) [inline]

Constructor.

Parameters:
levelthe height of the centre point.
dxthe rate of change of the height along X.
dythe rate of change of the height along Y.
sshape of the modifier.

Member Function Documentation

template<template< int > class Shape>
void Mercator::SlopeTerrainMod< Shape >::apply ( float &  point,
int  x,
int  y 
) const [virtual]

Apply this modifier on a terrain segment.

The segment is at x,y in local coordinates. Output is placed into point.

Implements Mercator::TerrainMod.


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