예제 #1
0
 private void VariableEMF_ValueChanged(object sender, EventArgs e)
 {
     EMFValue = (sender as TrackBar).Value;
     MainCircuit.AssignEMF(EMFValue);
     CalculatePower();
     RefreshDiagram();
 }
 private void VoltageSlider_ValueChanged(object sender, EventArgs e)// When
 {
     Voltage           = (sender as TrackBar).Value;
     VoltageLabel.Text = PrefixDouble(Voltage, 'V');
     MainCircuit.AssignEMF(Voltage);
     UpdateCurrent();
     RefreshDiagram();
 }
예제 #3
0
        public void EditVoltageValue(object sender, EventArgs e)// Called only when the EMF source is changed
        {
            double value = GetUserInputAsDouble("What would you like to change the value of the EMF source to?", 'V');

            MainCircuit.AssignEMF(value);
            //Updates all things that might be changed by changing the VoltageSource
            UpdateCurrentProbeText();
            UpdateVoltageTargetText();
            RefreshDiagram();
        }
예제 #4
0
 private void PowerToggle_Click(object sender, EventArgs e)
 {
     if (MainCircuit.GetTypeOfPsource() == 'a')
     {
         MainCircuit.ChangeType('v');
         TypeMOde = "Voltage";
     }
     else
     {
         MainCircuit.ChangeType('a');
         TypeMOde = "Current";
     }
     RefreshAxisTitle();
     DrawCircuit();
 }
예제 #5
0
 public void RefreshAxisTitle()
 {
     if ((string)(GraphTypeControl.SelectedItem) == "Power - Y, EMFValue - X")
     {
         GraphMode = 1;
         PowerLawDigram.ChartAreas[0].AxisY.Title = "Power(W)";
         PowerLawDigram.ChartAreas[0].AxisX.Title = TypeMOde + "(" + MainCircuit.GetTypeOfPsource().ToString().ToUpper() + ")";
     }
     else
     {
         GraphMode = 2;
         PowerLawDigram.ChartAreas[0].AxisY.Title = "Power(W)";
         PowerLawDigram.ChartAreas[0].AxisX.Title = TypeMOde + "^2" + "(" + MainCircuit.GetTypeOfPsource().ToString().ToUpper() + "^2" + ")";
     }
     ClearGraph();
 }