diff options
author | Robert Adams | 2013-09-25 17:21:20 -0700 |
---|---|---|
committer | Robert Adams | 2013-09-28 07:33:56 -0700 |
commit | 8c1d80fdfd104b94cb7a4fd247b3baa2a9988ea1 (patch) | |
tree | 0423a4cd16f354f21d12162eaa351d9e13ba52fd /OpenSim/Region/Framework/Interfaces/ITerrainChannel.cs | |
parent | Remove time based terrain storage in SQLite so revision number can be used (diff) | |
download | opensim-SC_OLD-8c1d80fdfd104b94cb7a4fd247b3baa2a9988ea1.zip opensim-SC_OLD-8c1d80fdfd104b94cb7a4fd247b3baa2a9988ea1.tar.gz opensim-SC_OLD-8c1d80fdfd104b94cb7a4fd247b3baa2a9988ea1.tar.bz2 opensim-SC_OLD-8c1d80fdfd104b94cb7a4fd247b3baa2a9988ea1.tar.xz |
varregion: serious rework of TerrainChannel:
-- addition of varaible region size in X and Y
-- internal storage of heightmap changed from double[] to short[]
-- helper routines for handling internal structure while keeping existing API
-- to and from XML that adds region size information (for downward compatibility,
output in the legacy XML format if X and Y are 256)
Updated and commented Constants.RegionSize but didn't change the name for compatibility.
Diffstat (limited to 'OpenSim/Region/Framework/Interfaces/ITerrainChannel.cs')
-rw-r--r-- | OpenSim/Region/Framework/Interfaces/ITerrainChannel.cs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Interfaces/ITerrainChannel.cs b/OpenSim/Region/Framework/Interfaces/ITerrainChannel.cs index e467701..3c060a4 100644 --- a/OpenSim/Region/Framework/Interfaces/ITerrainChannel.cs +++ b/OpenSim/Region/Framework/Interfaces/ITerrainChannel.cs | |||
@@ -29,15 +29,21 @@ namespace OpenSim.Region.Framework.Interfaces | |||
29 | { | 29 | { |
30 | public interface ITerrainChannel | 30 | public interface ITerrainChannel |
31 | { | 31 | { |
32 | int Height { get; } | 32 | int Width { get;} // X dimension |
33 | int Height { get;} // Y dimension | ||
34 | int Altitude { get;} // Z dimension | ||
35 | |||
33 | double this[int x, int y] { get; set; } | 36 | double this[int x, int y] { get; set; } |
34 | int Width { get; } | ||
35 | 37 | ||
36 | /// <summary> | 38 | /// <summary> |
37 | /// Squash the entire heightmap into a single dimensioned array | 39 | /// Squash the entire heightmap into a single dimensioned array |
38 | /// </summary> | 40 | /// </summary> |
39 | /// <returns></returns> | 41 | /// <returns></returns> |
40 | float[] GetFloatsSerialised(); | 42 | float[] GetFloatsSerialised(); |
43 | // Get version of map as a single dimensioned array and each value compressed | ||
44 | // into an int (compressedHeight = (int)(floatHeight * Constants.TerrainCompression);) | ||
45 | // This is done to make the map smaller as it can get pretty larger for variable sized regions. | ||
46 | short[] GetCompressedMap(); | ||
41 | 47 | ||
42 | double[,] GetDoubles(); | 48 | double[,] GetDoubles(); |
43 | bool Tainted(int x, int y); | 49 | bool Tainted(int x, int y); |