diff options
Diffstat (limited to 'Project/SyncMotor.cpp')
-rw-r--r-- | Project/SyncMotor.cpp | 73 |
1 files changed, 61 insertions, 12 deletions
diff --git a/Project/SyncMotor.cpp b/Project/SyncMotor.cpp index 13ea5e4..18252c1 100644 --- a/Project/SyncMotor.cpp +++ b/Project/SyncMotor.cpp @@ -1,8 +1,15 @@ #include "SyncMachineForm.h" #include "SyncMotor.h" -SyncMotor::SyncMotor() : Machines() {} -SyncMotor::SyncMotor(wxString name) : Machines() { m_electricalData.name = name; } +SyncMotor::SyncMotor() + : Machines() +{ +} +SyncMotor::SyncMotor(wxString name) + : Machines() +{ + m_electricalData.name = name; +} SyncMotor::~SyncMotor() {} void SyncMotor::DrawSymbol() const { DrawArc(m_position, 12, 30, 330, 10, GL_LINE_STRIP); } bool SyncMotor::GetContextMenu(wxMenu& menu) @@ -28,9 +35,9 @@ bool SyncMotor::ShowForm(wxWindow* parent, Element* element) SyncMotorElectricalData SyncMotor::GetPUElectricalData(double systemPowerBase) { - SyncMotorElectricalData data = m_electricalData; - - switch(data.activePowerUnit) { + SyncMotorElectricalData data = m_electricalData; + + switch(data.activePowerUnit) { case UNIT_W: { data.activePower = data.activePower / systemPowerBase; data.activePowerUnit = UNIT_PU; @@ -62,7 +69,7 @@ SyncMotorElectricalData SyncMotor::GetPUElectricalData(double systemPowerBase) default: break; } - switch(data.maxReactiveUnit) { + switch(data.maxReactiveUnit) { case UNIT_VAr: { data.maxReactive = data.maxReactive / systemPowerBase; data.maxReactiveUnit = UNIT_PU; @@ -78,7 +85,7 @@ SyncMotorElectricalData SyncMotor::GetPUElectricalData(double systemPowerBase) default: break; } - switch(data.minReactiveUnit) { + switch(data.minReactiveUnit) { case UNIT_VAr: { data.minReactive = data.minReactive / systemPowerBase; data.minReactiveUnit = UNIT_PU; @@ -94,13 +101,55 @@ SyncMotorElectricalData SyncMotor::GetPUElectricalData(double systemPowerBase) default: break; } - - return data; + + return data; } Element* SyncMotor::GetCopy() { - SyncMotor* copy = new SyncMotor(); - *copy = *this; - return copy; + SyncMotor* copy = new SyncMotor(); + *copy = *this; + return copy; +} + +wxString SyncMotor::GetTipText() const +{ + wxString tipText = m_electricalData.name; + tipText += "\n"; + tipText += _("\nP = ") + wxString::FromDouble(m_electricalData.activePower, 5); + switch(m_electricalData.activePowerUnit) { + case UNIT_PU: { + tipText += _(" p.u."); + } break; + case UNIT_W: { + tipText += _(" W"); + } break; + case UNIT_kW: { + tipText += _(" kW"); + } break; + case UNIT_MW: { + tipText += _(" MW"); + } break; + default: + break; + } + tipText += _("\nQ = ") + wxString::FromDouble(m_electricalData.reactivePower, 5); + switch(m_electricalData.reactivePowerUnit) { + case UNIT_PU: { + tipText += _(" p.u."); + } break; + case UNIT_VAr: { + tipText += _(" VAr"); + } break; + case UNIT_kVAr: { + tipText += _(" kVAr"); + } break; + case UNIT_MVAr: { + tipText += _(" MVAr"); + } break; + default: + break; + } + + return tipText; } |