Mantis#2354. Thank you kindly, Tglion for a patch that:

The average-value of modify.ModifyBlock.Height in LLClientView.cs:4170 
seem to be incorrect or it isn't the average? Mhhh...
So the terrain build -> Flaten Sphere is unuseable.
I have put in a patch that contains a workaround while 
the main problem is not solved.
0.6.0-stable
Charles Krinke 2008-10-08 14:51:55 +00:00
parent 1e8533772f
commit ac443559d1
2 changed files with 25 additions and 0 deletions

View File

@ -4179,6 +4179,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
handlerModifyTerrain = OnModifyTerrain;
if (handlerModifyTerrain != null)
{
modify.ModifyBlock.Height = -1; // Hack, i don't know why the value is wrong
handlerModifyTerrain(modify.ModifyBlock.Height, modify.ModifyBlock.Seconds,
modify.ModifyBlock.BrushSize,
modify.ModifyBlock.Action, modify.ParcelData[i].North,

View File

@ -40,6 +40,30 @@ namespace OpenSim.Region.Environment.Modules.World.Terrain.PaintBrushes
int x, y;
if (rz < 0) {
double sum = 0.0;
double step2 = 0.0;
duration = 0.009; //MCP Should be read from ini file
// compute delta map
for (x = 0; x < map.Width; x++)
{
for (y = 0; y < map.Height; y++)
{
double z = TerrainUtil.SphericalFactor(x, y, rx, ry, strength);
if (z > 0) // add in non-zero amount
{
sum += map[x, y] * z;
step2 += z;
}
}
}
rz = sum / step2;
}
// blend in map
for (x = 0; x < map.Width; x++)
{