Beispiel #1
0
        private void LoadScaleSection()
        {
            //_eventCount = 0;
            var scaleObject = ScaleFactory.GetScalesObject(_mushraModelList.Index, _mushraModelList.ScaleName);

            _scaleSection = scaleObject.LoadScale();
        }
Beispiel #2
0
        /// <summary>
        /// Creates the scale selection list.
        /// </summary>
        /// <returns>The created list.</returns>
        private IEnumerable <ScaleItem> CreateScaleSelectionList()
        {
            var availableScales = ScaleFactory.GetSupportedScales();

            return(availableScales.Select(scaleName => new ScaleItem
            {
                ScaleId = scaleName, FriendlyName = scaleName.ToString() // TODO lookup from resource
            }).ToList());
        }
        public double GetWeight()
        {
            ScaleFactory    factory = new ScaleFactory();
            ScaleProperties prop    = new ScaleProperties();

            Scale scale = factory.CreateScale();

            scale.Tare();
            scale.UpdateWeight();
            Decimal Weight = Math.Ceiling(scale.GetWeight());

            return((double)Weight);
        }
 public AirCompModelStub()
 {
     CurrentAmplitude    = 0.5f;
     CurrentExpression   = 0.5f;
     CurrentPitch        = new Pitch(60);
     PlayingPitch        = new Pitch(50);
     CurrentPitchBend    = 0f;
     CurrentScale        = ScaleFactory.CreateScale(Tone.C, Scales.Chromatic);
     AvailableOutDevices = new List <string> {
         "My MIDI out device"
     };
     CurrentOutDevice     = AvailableOutDevices.First();
     AvailableOutChannels = new List <int> {
         1, 2, 3, 4
     };
     CurrentOutChannel = AvailableOutChannels.First();
 }
Beispiel #5
0
        private async Task KeyDetectorAsync(string file_path)
        {
            string exe_path = "";

            exe_path = @".\libKeyFinder.NET.CLI\libKeyFinder.NET.CLI.exe";  // 被调exe
            if (File.Exists(exe_path))
            {
                string param = $" -p \"{file_path}\"";
                ChordNameTextBox.Text = "Comming Soon...";
                var res = await StartProcess(exe_path, param);

                if (res.Contains("Finale"))
                {
                    var    list = res.Split().Where(r => r != "" || r != string.Empty).ToList();
                    string info = list[list.Count() - 2].Trim();
                    bool   isSuccessful;
                    var    targetScale = ScaleFactory.GenerateScaleFromDetectorString(info, out isSuccessful);
                    if (!isSuccessful)
                    {
                        MessageBox.Show("Unknown Error!", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                    else
                    {
                        var tmp         = Common.Key2ScaleDict[info];
                        var scaleSuffix = tmp[1] == "Nature_Major" ? "Major" : "Minor";
                        ChordNameTextBox.Text = $"{tmp[0]}_{scaleSuffix}";
                        DisplayScaleCore(targetScale);
                    }
                }
                else
                {
                    if (res == "")
                    {
                        res = "Unknown Error!";
                    }
                    MessageBox.Show(res, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
            else
            {
                MessageBox.Show("没有找到KeyFinder.exe!", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
Beispiel #6
0
 /// <summary>
 /// Changes the current scale.
 /// </summary>
 /// <param name="baseTone">The base tone.</param>
 /// <param name="scaleName">Name of the scale.</param>
 public void ChangeScale(Tone baseTone, Scales scaleName)
 {
     CurrentScale = ScaleFactory.CreateScale(baseTone, scaleName);
 }