/// <inheritdoc /> public double Noise(INoise3D sourceNoise, double x, double y, double z) { INoiseDistorter3DContracts.Noise(sourceNoise); return(this.distorter.Noise(sourceNoise, x, y, z).ConvertRange( this.sourceNoiseStart, this.sourceNoiseEnd, this.resultNoiseStart, this.resultNoiseEnd)); }
/// <inheritdoc /> public double Noise(INoise3D sourceNoise, double x, double y, double z) { INoiseDistorter3DContracts.Noise(sourceNoise); double result = 0; foreach (var distorter in this.distorters) { result += distorter.Noise(sourceNoise, x, y, z); } return(result); }
/// <inheritdoc /> public double Noise(INoise3D sourceNoise, double x, double y, double z) { INoiseDistorter3DContracts.Noise(sourceNoise); double result = this.distorter.Noise(sourceNoise, x, y, z); int weight = 2; for (int octave = 2; octave <= this.numberOfOctaves; octave++) { result += this.distorter.Noise(sourceNoise, x * weight, y * weight, z * weight) / weight; weight *= 2; } return(result); }
/// <inheritdoc /> public double Noise(INoise3D sourceNoise, double x, double y, double z) { INoiseDistorter3DContracts.Noise(sourceNoise); return(this.distorter.Noise(sourceNoise, x + this.xShift, y + this.yShift, z + this.zShift)); }
/// <inheritdoc /> public double Noise(INoise3D sourceNoise, double x, double y, double z) { INoiseDistorter3DContracts.Noise(sourceNoise); return(this.distorter.Noise(sourceNoise, x, y, z) * this.amplitude); }
/// <inheritdoc /> public double Noise(INoise3D sourceNoise, double x, double y, double z) { INoiseDistorter3DContracts.Noise(sourceNoise); return(this.distorter.Noise(sourceNoise, x * this.xFrequency, y * this.yFrequency, z * this.zFrequency)); }
/// <inheritdoc /> public double Noise(INoise3D sourceNoise, double x, double y, double z) { INoiseDistorter3DContracts.Noise(sourceNoise); return(sourceNoise.Noise(x, y, z)); }
/// <inheritdoc /> public double Noise(INoise3D sourceNoise, double x, double y, double z) { INoiseDistorter3DContracts.Noise(sourceNoise); return(this.distorter.Noise(sourceNoise, x, y, z).Clamp(this.min, this.max)); }