float GetNewHeight(SurfacePoint point, double deltaTime) { float average = 0; foreach (var item in point.Neightbours) { average += item.Height * (float)deltaTime / 1000; } average /= point.Neightbours.Count(); float difference = average - point.Height; return(point.Height + difference * 0.8f); }
public float Distance(SurfacePoint a, SurfacePoint b) { return((float)Math.Sqrt(Math.Pow((b.X - a.X), 2) + Math.Pow((b.Y - a.Y), 2))); }
public void AddSource(SurfacePoint source) { Sources.Add(source); }