fCraft.Noise.CalculateNormalizationParams C# (CSharp) Method

CalculateNormalizationParams() public static method

public static CalculateNormalizationParams ( float map, float &multiplier, float &constant, float low, float high ) : void
map float
multiplier float
constant float
low float
high float
return void
        public static unsafe void CalculateNormalizationParams( float[, ,] map, out float multiplier, out float constant, float low, float high )
        {
            fixed ( float* ptr = map ) {
                float min = float.MaxValue,
                      max = float.MinValue;

                for ( int i = 0; i < map.Length; i++ ) {
                    min = Math.Min( min, ptr[i] );
                    max = Math.Max( max, ptr[i] );
                }

                multiplier = ( high - low ) / ( max - min );
                constant = -min * ( high - low ) / ( max - min ) + low;

                for ( int i = 0; i < map.Length; i++ ) {
                    ptr[i] = ptr[i] * multiplier + constant;
                }
            }
        }