Exemple #1
0
        public LatticeNoiseGenerator(Random Random, LatticeNoiseSettings Settings)
            : this(Random)
        {
            _Frequency   = Settings.Frequency;
            _Lacunarity  = Settings.Lacunarity;
            _Octaves     = Settings.Octaves;
            _Persistence = Settings.Persistence;
            _Bias        = Settings.Bias;
            _Factor      = Settings.Factor;

            _Interpolator = Settings.Interpolator;
            _Evaluator    = Settings.Evaluator;

            GeneratorMode    = Settings.GeneratorMode;
            PreTreatment     = Settings.PreTreatment;
            PostTreatment    = Settings.PostTreatment;
            Turbulence       = Settings.Turbulence;
            PostModification = Settings.PostModification;
        }
Exemple #2
0
        public Brush(int Radius, Interpolator.InterpolatorFunction Interpolator, BlendFilter BlendMode, FloatingColor Color)
        {
            this.Radius = Radius;
            int Width = Radius * 2 + 1;

            this.Color     = Color;
            this.BlendMode = BlendMode;
            Matrix         = new float[Width, Width];
            for (int i = 0; i < Width; ++i)
            {
                for (int j = 0; j < Width; ++j)
                {
                    int    X    = i - Radius;
                    int    Y    = j - Radius;
                    double Dist = Math.Sqrt(X * X + Y * Y) / Radius;
                    if (Dist > 1)
                    {
                        Dist = 1;
                    }
                    Matrix[i, j] = (float)Interpolator(Dist);
                }
            }
        }