summaryrefslogtreecommitdiffstats
path: root/Project
diff options
context:
space:
mode:
authorThales1330 <thaleslima.ufu@gmail.com>2016-12-14 21:12:05 -0200
committerThales1330 <thaleslima.ufu@gmail.com>2016-12-14 21:12:05 -0200
commit341fd025a924f779acebcfa0ffcf07f46f8240c9 (patch)
treee464a675baa606a529c257f467e38f567e1508ff /Project
parente86a20525e9838f4b3962eb267ea51dce7e8fb77 (diff)
downloadPSP.git-341fd025a924f779acebcfa0ffcf07f46f8240c9.tar.gz
PSP.git-341fd025a924f779acebcfa0ffcf07f46f8240c9.tar.xz
PSP.git-341fd025a924f779acebcfa0ffcf07f46f8240c9.zip
Many elements open implemented
Diffstat (limited to 'Project')
-rw-r--r--Project/Element.h1
-rw-r--r--Project/FileHanding.cpp270
-rw-r--r--Project/Project.mk2
-rw-r--r--Project/Release/Branch.cpp.obin33983 -> 35888 bytes
-rw-r--r--Project/Release/Bus.cpp.obin42552 -> 44473 bytes
-rw-r--r--Project/Release/BusForm.cpp.obin119004 -> 119004 bytes
-rw-r--r--Project/Release/Capacitor.cpp.obin44061 -> 45966 bytes
-rw-r--r--Project/Release/ElectricCalculation.cpp.obin74373 -> 74373 bytes
-rw-r--r--Project/Release/Element.cpp.obin156634 -> 158555 bytes
-rw-r--r--Project/Release/FileHanding.cpp.obin138603 -> 164105 bytes
-rw-r--r--Project/Release/GeneratorStabForm.cpp.obin104202 -> 104202 bytes
-rw-r--r--Project/Release/IndMotor.cpp.obin36909 -> 38830 bytes
-rw-r--r--Project/Release/IndMotorForm.cpp.obin87116 -> 87116 bytes
-rw-r--r--Project/Release/Inductor.cpp.obin43966 -> 45871 bytes
-rw-r--r--Project/Release/Line.cpp.obin163921 -> 164723 bytes
-rw-r--r--Project/Release/LineForm.cpp.obin101112 -> 101112 bytes
-rw-r--r--Project/Release/Load.cpp.obin42597 -> 44518 bytes
-rw-r--r--Project/Release/Machines.cpp.obin39724 -> 40526 bytes
-rw-r--r--Project/Release/MainFrame.cpp.obin156024 -> 156024 bytes
-rw-r--r--Project/Release/PSP-UFU.exebin4382049 -> 4394454 bytes
-rw-r--r--Project/Release/PowerFlow.cpp.obin43132 -> 43132 bytes
-rw-r--r--Project/Release/ReactiveShuntElementForm.cpp.obin93115 -> 93115 bytes
-rw-r--r--Project/Release/Shunt.cpp.obin35607 -> 36425 bytes
-rw-r--r--Project/Release/SwitchingForm.cpp.obin107046 -> 107046 bytes
-rw-r--r--Project/Release/SyncGenerator.cpp.obin42029 -> 43934 bytes
-rw-r--r--Project/Release/SyncMachineForm.cpp.obin123729 -> 123729 bytes
-rw-r--r--Project/Release/SyncMotor.cpp.obin38299 -> 40220 bytes
-rw-r--r--Project/Release/Text.cpp.obin101167 -> 103072 bytes
-rw-r--r--Project/Release/TextForm.cpp.obin165817 -> 165817 bytes
-rw-r--r--Project/Release/Transformer.cpp.obin50721 -> 51523 bytes
-rw-r--r--Project/Release/TransformerForm.cpp.obin108670 -> 108670 bytes
-rw-r--r--Project/Release/Workspace.cpp.obin210774 -> 210774 bytes
32 files changed, 268 insertions, 5 deletions
diff --git a/Project/Element.h b/Project/Element.h
index cdad147..512fc8f 100644
--- a/Project/Element.h
+++ b/Project/Element.h
@@ -98,6 +98,7 @@ public:
void ShowPickbox(bool showPickbox = true) { m_showPickbox = showPickbox; }
void SetBorderSize(double borderSize) { m_borderSize = borderSize; }
void SetOnline(bool online = true);
+ virtual void SetPointList(std::vector<wxPoint2DDouble> pointList) { m_pointList = pointList; }
// Getters
wxRect2DDouble GetRect() const { return m_rect; }
wxPoint2DDouble GetPosition() const { return m_position; }
diff --git a/Project/FileHanding.cpp b/Project/FileHanding.cpp
index 1586aa6..2cecb40 100644
--- a/Project/FileHanding.cpp
+++ b/Project/FileHanding.cpp
@@ -134,7 +134,7 @@ void FileHanding::SaveProject(wxFileName path)
auto electricalProp = AppendNode(doc, capacitorNode, "ElectricalProperties");
auto isOnline = AppendNode(doc, electricalProp, "IsOnline");
SetNodeValue(doc, isOnline, capacitor->IsOnline());
- auto name = AppendNode(doc, capacitorNode, "Name");
+ auto name = AppendNode(doc, electricalProp, "Name");
SetNodeValue(doc, name, data.name);
auto reactivePower = AppendNode(doc, electricalProp, "ReactivePower");
SetNodeValue(doc, reactivePower, data.reactivePower);
@@ -178,7 +178,8 @@ void FileHanding::SaveProject(wxFileName path)
auto nodePosY = AppendNode(doc, nodePos, "Y");
SetNodeValue(doc, nodePosY, indMotor->GetPointList()[0].m_y);
auto parentID = AppendNode(doc, cadProp, "ParentID");
- SetNodeValue(doc, parentID, ((Bus*)indMotor->GetParentList()[0])->GetEletricalData().number);
+ Bus* parent = (Bus*)indMotor->GetParentList()[0];
+ if(parent) SetNodeValue(doc, parentID, parent->GetEletricalData().number);
IndMotorElectricalData data = indMotor->GetElectricalData();
auto electricalProp = AppendNode(doc, indMotorNode, "ElectricalProperties");
@@ -872,8 +873,8 @@ bool FileHanding::OpenProject(wxFileName path)
double nodePosY = GetNodeValueDouble(nodePosition, "Y");
int parentID = GetNodeValueInt(cadPropNode, "ParentID");
if(parentID == -1) {
- //WRONG!!!!!
- Bus* parent = new Bus();
+ //If the element has no parent, create a temporary one, remove and delete.
+ Bus* parent = new Bus(wxPoint2DDouble(nodePosX, nodePosY));
capacitor->AddParent(parent, wxPoint2DDouble(nodePosX, nodePosY));
capacitor->StartMove(capacitor->GetPosition());
capacitor->Move(wxPoint2DDouble(posX, posY));
@@ -896,9 +897,270 @@ bool FileHanding::OpenProject(wxFileName path)
}
for(int i = 0; i < numRot; i++) capacitor->Rotate(clockwise);
+ auto electricalProp = capacitorNode->first_node("ElectricalProperties");
+ if(!electricalProp) return false;
+
+ capacitor->SetOnline(GetNodeValueInt(electricalProp, "IsOnline"));
+ CapacitorElectricalData data = capacitor->GetElectricalData();
+ data.name = electricalProp->first_node("Name")->value();
+ data.reactivePower = GetNodeValueDouble(electricalProp, "ReactivePower");
+ data.reactivePowerUnit = (ElectricalUnit)GetAttributeValueInt(electricalProp, "ReactivePower", "UnitID");
+
+ SwitchingData swData;
+ auto switchingList = electricalProp->first_node("SwitchingList");
+ if(!switchingList) return false;
+ auto swNode = switchingList->first_node("Switching");
+ while(swNode) {
+ swData.swType.push_back((SwitchingType)GetNodeValueInt(swNode, "Type"));
+ swData.swTime.push_back(GetNodeValueDouble(swNode, "Time"));
+ swNode = swNode->next_sibling("Switching");
+ }
+ capacitor->SetSwitchingData(swData);
+
+ capacitor->SetElectricalData(data);
elementList.push_back(capacitor);
capacitorNode = capacitorNode->next_sibling("Capacitor");
}
+
+ //{ IndMotor
+ auto indMotorListNode = elementsNode->first_node("IndMotorList");
+ if(!indMotorListNode) return false;
+ auto indMotorNode = indMotorListNode->first_node("IndMotor");
+ while(indMotorNode) {
+ IndMotor* indMotor = new IndMotor();
+
+ auto cadPropNode = indMotorNode->first_node("CADProperties");
+ if(!cadPropNode) return false;
+
+ auto position = cadPropNode->first_node("Position");
+ double posX = GetNodeValueDouble(position, "X");
+ double posY = GetNodeValueDouble(position, "Y");
+ auto size = cadPropNode->first_node("Size");
+ double width = GetNodeValueDouble(size, "Width");
+ double height = GetNodeValueDouble(size, "Height");
+ double angle = GetNodeValueDouble(cadPropNode, "Angle");
+ auto nodePosition = cadPropNode->first_node("NodePosition");
+ double nodePosX = GetNodeValueDouble(nodePosition, "X");
+ double nodePosY = GetNodeValueDouble(nodePosition, "Y");
+ int parentID = GetNodeValueInt(cadPropNode, "ParentID");
+ if(parentID == -1) {
+ //If the element has no parent, create a temporary one, remove and delete.
+ Bus* parent = new Bus(wxPoint2DDouble(nodePosX, nodePosY));
+ indMotor->AddParent(parent, wxPoint2DDouble(nodePosX, nodePosY));
+ indMotor->StartMove(indMotor->GetPosition());
+ indMotor->Move(wxPoint2DDouble(posX, posY));
+ indMotor->RemoveParent(parent);
+ delete parent;
+ } else {
+ Bus* parent = busList[parentID];
+ indMotor->AddParent(parent, wxPoint2DDouble(nodePosX, nodePosY));
+ indMotor->StartMove(indMotor->GetPosition());
+ indMotor->Move(wxPoint2DDouble(posX, posY));
+ }
+ indMotor->SetWidth(width);
+ indMotor->SetHeight(height);
+
+ int numRot = angle / indMotor->GetRotationAngle();
+ bool clockwise = true;
+ if(numRot < 0) {
+ numRot = std::abs(numRot);
+ clockwise = false;
+ }
+ for(int i = 0; i < numRot; i++) indMotor->Rotate(clockwise);
+
+ auto electricalProp = indMotorNode->first_node("ElectricalProperties");
+ if(!electricalProp) return false;
+
+ indMotor->SetOnline(GetNodeValueInt(electricalProp, "IsOnline"));
+ IndMotorElectricalData data = indMotor->GetElectricalData();
+ data.name = electricalProp->first_node("Name")->value();
+ data.activePower = GetNodeValueDouble(electricalProp, "ActivePower");
+ data.activePowerUnit = (ElectricalUnit)GetAttributeValueInt(electricalProp, "ActivePower", "UnitID");
+ data.reactivePower = GetNodeValueDouble(electricalProp, "ReactivePower");
+ data.reactivePowerUnit = (ElectricalUnit)GetAttributeValueInt(electricalProp, "ReactivePower", "UnitID");
+
+ indMotor->SetElectricalData(data);
+ elementList.push_back(indMotor);
+ indMotorNode = indMotorNode->next_sibling("IndMotor");
+ }
+
+ //{ Inductor
+ auto inductorListNode = elementsNode->first_node("InductorList");
+ if(!inductorListNode) return false;
+ auto inductorNode = inductorListNode->first_node("Inductor");
+ while(inductorNode) {
+ Inductor* inductor = new Inductor();
+
+ auto cadPropNode = inductorNode->first_node("CADProperties");
+ if(!cadPropNode) return false;
+
+ auto position = cadPropNode->first_node("Position");
+ double posX = GetNodeValueDouble(position, "X");
+ double posY = GetNodeValueDouble(position, "Y");
+ auto size = cadPropNode->first_node("Size");
+ double width = GetNodeValueDouble(size, "Width");
+ double height = GetNodeValueDouble(size, "Height");
+ double angle = GetNodeValueDouble(cadPropNode, "Angle");
+ auto nodePosition = cadPropNode->first_node("NodePosition");
+ double nodePosX = GetNodeValueDouble(nodePosition, "X");
+ double nodePosY = GetNodeValueDouble(nodePosition, "Y");
+ int parentID = GetNodeValueInt(cadPropNode, "ParentID");
+ if(parentID == -1) {
+ //If the element has no parent, create a temporary one, remove and delete.
+ Bus* parent = new Bus(wxPoint2DDouble(nodePosX, nodePosY));
+ inductor->AddParent(parent, wxPoint2DDouble(nodePosX, nodePosY));
+ inductor->StartMove(inductor->GetPosition());
+ inductor->Move(wxPoint2DDouble(posX, posY));
+ inductor->RemoveParent(parent);
+ delete parent;
+ } else {
+ Bus* parent = busList[parentID];
+ inductor->AddParent(parent, wxPoint2DDouble(nodePosX, nodePosY));
+ inductor->StartMove(inductor->GetPosition());
+ inductor->Move(wxPoint2DDouble(posX, posY));
+ }
+ inductor->SetWidth(width);
+ inductor->SetHeight(height);
+
+ int numRot = angle / inductor->GetRotationAngle();
+ bool clockwise = true;
+ if(numRot < 0) {
+ numRot = std::abs(numRot);
+ clockwise = false;
+ }
+ for(int i = 0; i < numRot; i++) inductor->Rotate(clockwise);
+
+ auto electricalProp = inductorNode->first_node("ElectricalProperties");
+ if(!electricalProp) return false;
+
+ inductor->SetOnline(GetNodeValueInt(electricalProp, "IsOnline"));
+ InductorElectricalData data = inductor->GetElectricalData();
+ data.name = electricalProp->first_node("Name")->value();
+ data.reactivePower = GetNodeValueDouble(electricalProp, "ReactivePower");
+ data.reactivePowerUnit = (ElectricalUnit)GetAttributeValueInt(electricalProp, "ReactivePower", "UnitID");
+
+ SwitchingData swData;
+ auto switchingList = electricalProp->first_node("SwitchingList");
+ if(!switchingList) return false;
+ auto swNode = switchingList->first_node("Switching");
+ while(swNode) {
+ swData.swType.push_back((SwitchingType)GetNodeValueInt(swNode, "Type"));
+ swData.swTime.push_back(GetNodeValueDouble(swNode, "Time"));
+ swNode = swNode->next_sibling("Switching");
+ }
+ inductor->SetSwitchingData(swData);
+
+ inductor->SetElectricalData(data);
+ elementList.push_back(inductor);
+ inductorNode = inductorNode->next_sibling("Inductor");
+ }
+
+ //{ Line
+ auto lineListNode = elementsNode->first_node("LineList");
+ if(!lineListNode) return false;
+ auto lineNode = lineListNode->first_node("Line");
+ while(lineNode) {
+ Line* line = new Line();
+
+ auto cadPropNode = lineNode->first_node("CADProperties");
+ if(!cadPropNode) return false;
+
+ // Get nodes points
+ std::vector<wxPoint2DDouble> ptsList;
+ auto nodePosList = cadPropNode->first_node("NodeList");
+ if(!nodePosList) return false;
+ auto nodePos = nodePosList->first_node("Node");
+ while(nodePos) {
+ double nodePosX = GetNodeValueDouble(nodePos, "X");
+ double nodePosY = GetNodeValueDouble(nodePos, "Y");
+ ptsList.push_back(wxPoint2DDouble(nodePosX, nodePosY));
+ nodePos = nodePos->next_sibling("Node");
+ }
+
+ // Get parents IDs
+ auto parentIDList = cadPropNode->first_node("ParentIDList");
+ if(!parentIDList) return false;
+ auto parentNode = parentIDList->first_node("ParentID");
+ long parentID[2] = {-1, -1};
+ while(parentNode) {
+ long index = 0;
+ wxString(parentNode->first_attribute("ID")->value()).ToLong(&index);
+ wxString(parentNode->value()).ToCLong(&parentID[index]);
+ parentNode = parentNode->next_sibling("ParentID");
+ }
+
+ // Set parents (if have)
+ Bus* parent1, *parent2;
+ if(parentID[0] == -1) {
+ parent1 = new Bus(ptsList[0]);
+ line->AddParent(parent1, ptsList[0]);
+ } else {
+ parent1 = busList[parentID[0]];
+ line->AddParent(parent1, ptsList[0]);
+ }
+ if(parentID[1] == -1) {
+ parent2 = new Bus(ptsList[ptsList.size() - 1]);
+ line->AddParent(parent2, ptsList[ptsList.size() - 1]);
+ } else {
+ parent2 = busList[parentID[1]];
+ line->AddParent(parent2, ptsList[ptsList.size() - 1]);
+ }
+
+ // Add the others nodes (if have)
+ std::vector<wxPoint2DDouble> midPts;
+ for(int i=1; i<(int)ptsList.size() - 1; i++) midPts.push_back(ptsList[i]);
+ std::vector<wxPoint2DDouble> edgesPts = line->GetPointList();
+ edgesPts.insert(edgesPts.begin() + 2, midPts.begin(), midPts.end());
+ line->SetPointList(edgesPts);
+
+ if(parentID[0] == -1){
+ line->RemoveParent(parent1);
+ delete parent1;
+ }
+ if(parentID[1] == -1){
+ line->RemoveParent(parent2);
+ delete parent2;
+ }
+
+ auto electricalProp = lineNode->first_node("ElectricalProperties");
+ if(!electricalProp) return false;
+
+ line->SetOnline(GetNodeValueInt(electricalProp, "IsOnline"));
+ LineElectricalData data = line->GetElectricalData();
+ data.name = electricalProp->first_node("Name")->value();
+ data.nominalVoltage = GetNodeValueDouble(electricalProp, "NominalVoltage");
+ data.nominalVoltageUnit = (ElectricalUnit)GetAttributeValueInt(electricalProp, "NominalVoltage", "UnitID");
+ data.nominalPower = GetNodeValueDouble(electricalProp, "NominalPower");
+ data.nominalPowerUnit = (ElectricalUnit)GetAttributeValueInt(electricalProp, "NominalPower", "UnitID");
+ data.resistance = GetNodeValueDouble(electricalProp, "Resistance");
+ data.resistanceUnit = (ElectricalUnit)GetAttributeValueInt(electricalProp, "Resistance", "UnitID");
+ data.indReactance = GetNodeValueDouble(electricalProp, "IndReactance");
+ data.indReactanceUnit = (ElectricalUnit)GetAttributeValueInt(electricalProp, "IndReactance", "UnitID");
+ data.capSusceptance = GetNodeValueDouble(electricalProp, "CapSusceptance");
+ data.capSusceptanceUnit = (ElectricalUnit)GetAttributeValueInt(electricalProp, "CapSusceptance", "UnitID");
+ data.lineSize = GetNodeValueDouble(electricalProp, "LineSize");
+ data.useLinePower = GetNodeValueInt(electricalProp, "UseLinePower");
+
+ auto fault = electricalProp->first_node("Fault");
+ data.zeroResistance = GetNodeValueDouble(fault, "ZeroResistance");
+ data.zeroIndReactance = GetNodeValueDouble(fault, "ZeroIndReactance");
+ data.zeroCapSusceptance = GetNodeValueDouble(fault, "ZeroCapSusceptance");
+
+ SwitchingData swData;
+ auto switchingList = electricalProp->first_node("SwitchingList");
+ if(!switchingList) return false;
+ auto swNode = switchingList->first_node("Switching");
+ while(swNode) {
+ swData.swType.push_back((SwitchingType)GetNodeValueInt(swNode, "Type"));
+ swData.swTime.push_back(GetNodeValueDouble(swNode, "Time"));
+ swNode = swNode->next_sibling("Switching");
+ }
+ line->SetSwitchingData(swData);
+
+ line->SetElectricalData(data);
+ elementList.push_back(line);
+ lineNode = lineNode->next_sibling("Line");
+ }
m_workspace->SetElementList(elementList);
return true;
diff --git a/Project/Project.mk b/Project/Project.mk
index 5d7d922..d9dfca6 100644
--- a/Project/Project.mk
+++ b/Project/Project.mk
@@ -13,7 +13,7 @@ CurrentFileName :=
CurrentFilePath :=
CurrentFileFullPath :=
User :=Thales
-Date :=13/12/2016
+Date :=14/12/2016
CodeLitePath :="C:/Program Files/CodeLite"
LinkerName :=C:/TDM-GCC-64/bin/g++.exe
SharedObjectLinkerName :=C:/TDM-GCC-64/bin/g++.exe -shared -fPIC
diff --git a/Project/Release/Branch.cpp.o b/Project/Release/Branch.cpp.o
index 47cacb2..0f29378 100644
--- a/Project/Release/Branch.cpp.o
+++ b/Project/Release/Branch.cpp.o
Binary files differ
diff --git a/Project/Release/Bus.cpp.o b/Project/Release/Bus.cpp.o
index b19ebb8..41a53aa 100644
--- a/Project/Release/Bus.cpp.o
+++ b/Project/Release/Bus.cpp.o
Binary files differ
diff --git a/Project/Release/BusForm.cpp.o b/Project/Release/BusForm.cpp.o
index 62c4670..917f8b4 100644
--- a/Project/Release/BusForm.cpp.o
+++ b/Project/Release/BusForm.cpp.o
Binary files differ
diff --git a/Project/Release/Capacitor.cpp.o b/Project/Release/Capacitor.cpp.o
index 7a5cb4a..80ab190 100644
--- a/Project/Release/Capacitor.cpp.o
+++ b/Project/Release/Capacitor.cpp.o
Binary files differ
diff --git a/Project/Release/ElectricCalculation.cpp.o b/Project/Release/ElectricCalculation.cpp.o
index 9d93e51..3d144b8 100644
--- a/Project/Release/ElectricCalculation.cpp.o
+++ b/Project/Release/ElectricCalculation.cpp.o
Binary files differ
diff --git a/Project/Release/Element.cpp.o b/Project/Release/Element.cpp.o
index 3cceece..3abe5a3 100644
--- a/Project/Release/Element.cpp.o
+++ b/Project/Release/Element.cpp.o
Binary files differ
diff --git a/Project/Release/FileHanding.cpp.o b/Project/Release/FileHanding.cpp.o
index d011e30..111273d 100644
--- a/Project/Release/FileHanding.cpp.o
+++ b/Project/Release/FileHanding.cpp.o
Binary files differ
diff --git a/Project/Release/GeneratorStabForm.cpp.o b/Project/Release/GeneratorStabForm.cpp.o
index 4526373..64bbc6c 100644
--- a/Project/Release/GeneratorStabForm.cpp.o
+++ b/Project/Release/GeneratorStabForm.cpp.o
Binary files differ
diff --git a/Project/Release/IndMotor.cpp.o b/Project/Release/IndMotor.cpp.o
index e94e83a..8afaa98 100644
--- a/Project/Release/IndMotor.cpp.o
+++ b/Project/Release/IndMotor.cpp.o
Binary files differ
diff --git a/Project/Release/IndMotorForm.cpp.o b/Project/Release/IndMotorForm.cpp.o
index 75d326a..1a91d40 100644
--- a/Project/Release/IndMotorForm.cpp.o
+++ b/Project/Release/IndMotorForm.cpp.o
Binary files differ
diff --git a/Project/Release/Inductor.cpp.o b/Project/Release/Inductor.cpp.o
index 3c71fb6..36cb0b0 100644
--- a/Project/Release/Inductor.cpp.o
+++ b/Project/Release/Inductor.cpp.o
Binary files differ
diff --git a/Project/Release/Line.cpp.o b/Project/Release/Line.cpp.o
index 9b667e3..dbddeee 100644
--- a/Project/Release/Line.cpp.o
+++ b/Project/Release/Line.cpp.o
Binary files differ
diff --git a/Project/Release/LineForm.cpp.o b/Project/Release/LineForm.cpp.o
index 90e0e77..3f0094a 100644
--- a/Project/Release/LineForm.cpp.o
+++ b/Project/Release/LineForm.cpp.o
Binary files differ
diff --git a/Project/Release/Load.cpp.o b/Project/Release/Load.cpp.o
index 8dca824..8d03c53 100644
--- a/Project/Release/Load.cpp.o
+++ b/Project/Release/Load.cpp.o
Binary files differ
diff --git a/Project/Release/Machines.cpp.o b/Project/Release/Machines.cpp.o
index 7229880..68a1fc6 100644
--- a/Project/Release/Machines.cpp.o
+++ b/Project/Release/Machines.cpp.o
Binary files differ
diff --git a/Project/Release/MainFrame.cpp.o b/Project/Release/MainFrame.cpp.o
index e5afc1a..8db3bdb 100644
--- a/Project/Release/MainFrame.cpp.o
+++ b/Project/Release/MainFrame.cpp.o
Binary files differ
diff --git a/Project/Release/PSP-UFU.exe b/Project/Release/PSP-UFU.exe
index 5133fad..244920a 100644
--- a/Project/Release/PSP-UFU.exe
+++ b/Project/Release/PSP-UFU.exe
Binary files differ
diff --git a/Project/Release/PowerFlow.cpp.o b/Project/Release/PowerFlow.cpp.o
index 995810b..1da8b90 100644
--- a/Project/Release/PowerFlow.cpp.o
+++ b/Project/Release/PowerFlow.cpp.o
Binary files differ
diff --git a/Project/Release/ReactiveShuntElementForm.cpp.o b/Project/Release/ReactiveShuntElementForm.cpp.o
index a84e93f..58f30f9 100644
--- a/Project/Release/ReactiveShuntElementForm.cpp.o
+++ b/Project/Release/ReactiveShuntElementForm.cpp.o
Binary files differ
diff --git a/Project/Release/Shunt.cpp.o b/Project/Release/Shunt.cpp.o
index 6cc9830..4ad87ec 100644
--- a/Project/Release/Shunt.cpp.o
+++ b/Project/Release/Shunt.cpp.o
Binary files differ
diff --git a/Project/Release/SwitchingForm.cpp.o b/Project/Release/SwitchingForm.cpp.o
index 822dd20..c5b64f5 100644
--- a/Project/Release/SwitchingForm.cpp.o
+++ b/Project/Release/SwitchingForm.cpp.o
Binary files differ
diff --git a/Project/Release/SyncGenerator.cpp.o b/Project/Release/SyncGenerator.cpp.o
index 18ef964..1c75992 100644
--- a/Project/Release/SyncGenerator.cpp.o
+++ b/Project/Release/SyncGenerator.cpp.o
Binary files differ
diff --git a/Project/Release/SyncMachineForm.cpp.o b/Project/Release/SyncMachineForm.cpp.o
index 2603398..0c315ad 100644
--- a/Project/Release/SyncMachineForm.cpp.o
+++ b/Project/Release/SyncMachineForm.cpp.o
Binary files differ
diff --git a/Project/Release/SyncMotor.cpp.o b/Project/Release/SyncMotor.cpp.o
index 24d25c0..7d9b66b 100644
--- a/Project/Release/SyncMotor.cpp.o
+++ b/Project/Release/SyncMotor.cpp.o
Binary files differ
diff --git a/Project/Release/Text.cpp.o b/Project/Release/Text.cpp.o
index 0d95dd4..2df337e 100644
--- a/Project/Release/Text.cpp.o
+++ b/Project/Release/Text.cpp.o
Binary files differ
diff --git a/Project/Release/TextForm.cpp.o b/Project/Release/TextForm.cpp.o
index 153e347..7d9de3f 100644
--- a/Project/Release/TextForm.cpp.o
+++ b/Project/Release/TextForm.cpp.o
Binary files differ
diff --git a/Project/Release/Transformer.cpp.o b/Project/Release/Transformer.cpp.o
index cfbc088..bca1767 100644
--- a/Project/Release/Transformer.cpp.o
+++ b/Project/Release/Transformer.cpp.o
Binary files differ
diff --git a/Project/Release/TransformerForm.cpp.o b/Project/Release/TransformerForm.cpp.o
index 1deaecd..1cff932 100644
--- a/Project/Release/TransformerForm.cpp.o
+++ b/Project/Release/TransformerForm.cpp.o
Binary files differ
diff --git a/Project/Release/Workspace.cpp.o b/Project/Release/Workspace.cpp.o
index cb14f6f..9c5c5b2 100644
--- a/Project/Release/Workspace.cpp.o
+++ b/Project/Release/Workspace.cpp.o
Binary files differ