Пример #1
0
        ///////////////////
        public void AddNoise(Noise noise)
        {
            noise.sourceMicrophone = this;
            noise.FormNoise();

            for (int i = 0; i < noise.noiseArray.Count; i++)
            {
                double directivityPlotValue = directivityValuesList[i];
                double valueFromDB = ConvertFromDB(directivityPlotValue);
                double resultValue = valueFromDB - noise.noiseArray[i];
                double resultValueDB = ConvertToDB(resultValue);
                directivityValuesList[i] = resultValueDB;
            }
        }
        // add noise
        private void button2_Click(object sender, EventArgs e)
        {
            // пройти по всем микрофонам, рассчитать зависимость величины шума от направления для каждого
            double noiseLevel = Convert.ToDouble(noiseLevelTextFiels.Text);
            UInt32 noiseDirection = Convert.ToUInt32(noiseDirectionalTextField.Text);

            foreach (Microphone microphone in microphonesList)
            {
                Noise noise = new Noise(NoiseType.NoiseTypeBrown);
                noise.rate = noiseLevel;
                noise.noiseDirection = noiseDirection;
                microphone.AddNoise(noise);
            }

            RebuildGraph();
        }