From f4c4584d2b6a7d49187a5bda5442b6fa82f1f5e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9D=D0=B8=D0=BA=D0=B8=D1=82=D0=B0?= Date: Mon, 29 Oct 2018 14:22:40 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B2=D1=8B=D0=B9=20=D0=BA?= =?UTF-8?q?=D0=BE=D0=BC=D0=BC=D0=B8=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Signal Generator/AddSignalWindow.xaml | 12 +++++++ Signal Generator/AddSignalWindow.xaml.cs | 27 +++++++++++++++ Signal Generator/App.config | 2 ++ Signal Generator/App.xaml.cs | 1 + Signal Generator/FmSignal.cs | 42 +++++++++++++++++++++++ Signal Generator/IAnalogSignalModel.cs | 14 ++++++++ Signal Generator/MainWindow.xaml | 24 +++++++++++-- Signal Generator/MainWindow.xaml.cs | 13 +++++++ Signal Generator/MultiSignal.cs | 39 +++++++++++++++++++++ Signal Generator/Settings.cs | 28 +++++++++++++++ Signal Generator/Signal Generator.csproj | 19 +++++++++++ Signal Generator/SinusoidalSignal.cs | 43 ++++++++++++++++++++++++ Signal Generator/TaskWindow.xaml | 28 +++++++++++++++ Signal Generator/TaskWindow.xaml.cs | 27 +++++++++++++++ 14 files changed, 317 insertions(+), 2 deletions(-) create mode 100644 Signal Generator/AddSignalWindow.xaml create mode 100644 Signal Generator/AddSignalWindow.xaml.cs create mode 100644 Signal Generator/FmSignal.cs create mode 100644 Signal Generator/IAnalogSignalModel.cs create mode 100644 Signal Generator/MultiSignal.cs create mode 100644 Signal Generator/Settings.cs create mode 100644 Signal Generator/SinusoidalSignal.cs create mode 100644 Signal Generator/TaskWindow.xaml create mode 100644 Signal Generator/TaskWindow.xaml.cs diff --git a/Signal Generator/AddSignalWindow.xaml b/Signal Generator/AddSignalWindow.xaml new file mode 100644 index 0000000..122ce9b --- /dev/null +++ b/Signal Generator/AddSignalWindow.xaml @@ -0,0 +1,12 @@ + + + + + diff --git a/Signal Generator/AddSignalWindow.xaml.cs b/Signal Generator/AddSignalWindow.xaml.cs new file mode 100644 index 0000000..d89e66d --- /dev/null +++ b/Signal Generator/AddSignalWindow.xaml.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Shapes; + +namespace Signal_Generator +{ + /// + /// Логика взаимодействия для AddSignalWindow.xaml + /// + public partial class AddSignalWindow : Window + { + public AddSignalWindow() + { + InitializeComponent(); + } + } +} diff --git a/Signal Generator/App.config b/Signal Generator/App.config index 731f6de..b157b72 100644 --- a/Signal Generator/App.config +++ b/Signal Generator/App.config @@ -1,5 +1,7 @@  + + diff --git a/Signal Generator/App.xaml.cs b/Signal Generator/App.xaml.cs index 43963f8..0da5a06 100644 --- a/Signal Generator/App.xaml.cs +++ b/Signal Generator/App.xaml.cs @@ -13,5 +13,6 @@ namespace Signal_Generator /// public partial class App : Application { + } } diff --git a/Signal Generator/FmSignal.cs b/Signal Generator/FmSignal.cs new file mode 100644 index 0000000..5fc38ef --- /dev/null +++ b/Signal Generator/FmSignal.cs @@ -0,0 +1,42 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Signal_Generator +{ + class FmSignal : IAnalogSignal + { + private double ampl = 0; + private double freq = 0; + private IAnalogSignal modSignal; + + public string ParamsToString + { + get + { + return this.ToString() + + " | А = " + ampl + + " | f = " + freq; + } + } + + public override string ToString() + { + return "FM signal"; + } + + public FmSignal(double ampl, double freq, IAnalogSignal modSignal) + { + this.ampl = ampl; + this.freq = freq; + this.modSignal = modSignal; + } + + public double currentAmplitude(double t) + { + return ampl * Math.Sin(2 * Math.PI * freq * t + modSignal.currentAmplitude(t)); + } + } +} diff --git a/Signal Generator/IAnalogSignalModel.cs b/Signal Generator/IAnalogSignalModel.cs new file mode 100644 index 0000000..aec1757 --- /dev/null +++ b/Signal Generator/IAnalogSignalModel.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Signal_Generator +{ + interface IAnalogSignal + { + string ParamsToString { get; } + double currentAmplitude(double t); + } +} diff --git a/Signal Generator/MainWindow.xaml b/Signal Generator/MainWindow.xaml index 7cc5cda..2b137af 100644 --- a/Signal Generator/MainWindow.xaml +++ b/Signal Generator/MainWindow.xaml @@ -5,8 +5,28 @@ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:Signal_Generator" mc:Ignorable="d" - Title="MainWindow" Height="450" Width="800"> + Title="MainWindow" Height="450" Width="489"> - + + + + + + + + + + + + + +