#include "FlattenNoise.h" FlattenNoise::FlattenNoise(Noise* base, double factor, double minValue) : Noise(), base(base), factor(factor), minValue(minValue) {} FlattenNoise::~FlattenNoise() { base->release(); } int FlattenNoise::getSeed() const { return base->getSeed(); } double FlattenNoise::getNoise(double x, double y, double z) { double value = (base->getNoise(x, y, z) - 0.5) * factor + 0.5 + minValue; return MAX(MIN(value, 1.0), 0.0); }