From 4842cb28522a89c0a6d800139b934001484fadbe Mon Sep 17 00:00:00 2001 From: Wolfgang Draxinger Date: Fri, 26 Jul 2013 11:14:54 +0200 Subject: ... --- samples/OpenGL/qt_terr/terrain.h | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'samples/OpenGL/qt_terr/terrain.h') diff --git a/samples/OpenGL/qt_terr/terrain.h b/samples/OpenGL/qt_terr/terrain.h index 0197380..3382a4c 100644 --- a/samples/OpenGL/qt_terr/terrain.h +++ b/samples/OpenGL/qt_terr/terrain.h @@ -4,17 +4,24 @@ #include "quad.h" #include +#include class Terrain : public Quad { public: - double * const z_mean() { - + double z_mean_; + double z_mean() { + if( isnan(z_mean_) ) { + return z_mean_ = + ( z[0][0] + z[0][1] + + z[1][0] + z[1][1] ) / 4.; + } + return z_mean_; }; double z[2][2]; public: - Terrain(); + Terrain(std::vector* V_) : Quad(V_) { z_mean_ = NAN; } virtual void split(); virtual void track_down(double x, double y, double nz, int levels); -- cgit v1.2.3