AlphaFramework API  1.0.3
Public Member Functions | Protected Member Functions | List of all members
AlphaFramework.Editor.World.TerrainModifiers.Height Class Referenceabstract

Abstract base class for interactivley changing the height of an area on a ITerrain. More...

Inheritance diagram for AlphaFramework.Editor.World.TerrainModifiers.Height:
AlphaFramework.Editor.World.TerrainModifiers.Base AlphaFramework.Editor.World.TerrainModifiers.HeightNoise AlphaFramework.Editor.World.TerrainModifiers.HeightPlateau AlphaFramework.Editor.World.TerrainModifiers.HeightShift AlphaFramework.Editor.World.TerrainModifiers.HeightSmooth

Public Member Functions

override void Apply (Vector2 terrainCoords, TerrainBrush brush)
 Applies and accumulates a modification to the Terrain.
 
override IUndoCommand GetCommand ()
 Creates a pre-executed undo command representing the accumulated Apply calls to this instance.
 

Protected Member Functions

 Height (ITerrain terrain, Terrain engineTerrain, Action refreshHandler)
 Creates a new terrain height modifier. More...
 
abstract void ModifyTerrain (Point offset, TerrainBrush brush, byte[,] oldData, byte[,] newData)
 Modifies the ITerrain and fills arrays with undo/redo data. More...
 
- Protected Member Functions inherited from AlphaFramework.Editor.World.TerrainModifiers.Base
 Base (ITerrain terrain)
 Creates a new Terrain modifier. More...
 

Additional Inherited Members

- Protected Attributes inherited from AlphaFramework.Editor.World.TerrainModifiers.Base
readonly ExpandableRectangleArray< byte > OldData = new ExpandableRectangleArray<byte>()
 Used to collect data as it was before the modifications. More...
 
readonly ExpandableRectangleArray< byte > NewData = new ExpandableRectangleArray<byte>()
 Used to collect data as it is after the modifcations. More...
 
readonly ITerrain Terrain
 The Terrain to modify. More...
 

Detailed Description

Abstract base class for interactivley changing the height of an area on a ITerrain.

Constructor & Destructor Documentation

◆ Height()

AlphaFramework.Editor.World.TerrainModifiers.Height.Height ( ITerrain  terrain,
Terrain  engineTerrain,
Action  refreshHandler 
)
inlineprotected

Creates a new terrain height modifier.

Parameters
terrainThe ITerrain to modify.
engineTerrainThe OmegaEngine.Graphics.Renderables.Terrain to live-update while modifying.
refreshHandlerCalled when the presenter needs to be reset.

Member Function Documentation

◆ ModifyTerrain()

abstract void AlphaFramework.Editor.World.TerrainModifiers.Height.ModifyTerrain ( Point  offset,
TerrainBrush  brush,
byte  oldData[,],
byte  newData[,] 
)
protectedpure virtual

Modifies the ITerrain and fills arrays with undo/redo data.

Parameters
offsetThe ITerrain.HeightMap index that corresponds to the top-left corner of the area to modify.
brushThe shape and size of the area to the lower-right of offset to modify.
oldDataAn array to be filled with data from ITerrain.HeightMap before the modification. Both dimensions must be equal to TerrainBrush.Size.
newDataAn array to be filled with data from ITerrain.HeightMap after the modification. Both dimensions must be equal to TerrainBrush.Size.

Implemented in AlphaFramework.Editor.World.TerrainModifiers.HeightNoise, AlphaFramework.Editor.World.TerrainModifiers.HeightShift, AlphaFramework.Editor.World.TerrainModifiers.HeightSmooth, and AlphaFramework.Editor.World.TerrainModifiers.HeightPlateau.


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