From 84d5330628a867d4b52d1ae1dd1f318487310477 Mon Sep 17 00:00:00 2001 From: "facat@lab.com" Date: Sat, 27 Dec 2014 21:45:46 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E7=B1=BB=E5=A4=84=E7=90=86=E5=8F=98?= =?UTF-8?q?=E5=8E=8B=E5=99=A8=E9=98=BB=E6=8A=97=E6=95=B0=E6=8D=AE=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: facat@lab.com --- testHasttable/aclinesegment.cpp | 2 +- testHasttable/element/branch.cpp | 2 +- testHasttable/element/branch.h | 2 +- testHasttable/element/line.cpp | 3 ++- testHasttable/element/transformer.cpp | 26 ++++++++++++++++++++++++++ testHasttable/element/transformer.h | 16 ++++++++++++++++ testHasttable/powertransformer.cpp | 23 ++++++++++++++++++++++- testHasttable/powertransformer.h | 6 +++++- testHasttable/testHasttable.pro | 6 ++++-- 9 files changed, 78 insertions(+), 8 deletions(-) create mode 100644 testHasttable/element/transformer.cpp create mode 100644 testHasttable/element/transformer.h diff --git a/testHasttable/aclinesegment.cpp b/testHasttable/aclinesegment.cpp index 061b46e..0c90676 100644 --- a/testHasttable/aclinesegment.cpp +++ b/testHasttable/aclinesegment.cpp @@ -35,7 +35,7 @@ bool ACLineSegment::derivedParse(QXmlStreamReader &reader) if("Conductor.length"==reader.name()) { bool ok; - this->conductorLength=reader.readElementText().toInt(&ok); + this->conductorLength=reader.readElementText().toDouble(&ok); if(!ok) { this->conductorLength=-100000; diff --git a/testHasttable/element/branch.cpp b/testHasttable/element/branch.cpp index dfd1f62..2b67372 100644 --- a/testHasttable/element/branch.cpp +++ b/testHasttable/element/branch.cpp @@ -1,5 +1,5 @@ #include "branch.h" -Branch::Branch(double ratio,const QString& from, const QString& to):ratio(ratio),from(from),to(to) +Branch::Branch(const QString& from, const QString& to):from(from),to(to) { } diff --git a/testHasttable/element/branch.h b/testHasttable/element/branch.h index b526bd8..a721e95 100644 --- a/testHasttable/element/branch.h +++ b/testHasttable/element/branch.h @@ -4,7 +4,7 @@ class Branch { public: - Branch(double ratio,const QString& from, const QString& to); + Branch(const QString& from, const QString& to); protected: double r; double x; diff --git a/testHasttable/element/line.cpp b/testHasttable/element/line.cpp index 7aefb09..1a15749 100644 --- a/testHasttable/element/line.cpp +++ b/testHasttable/element/line.cpp @@ -1,7 +1,8 @@ #include "line.h" -Line::Line(const QPair& fromTo, ACLineSegment* ac):Branch(1,fromTo.first,fromTo.second) +Line::Line(const QPair& fromTo, ACLineSegment* ac):Branch(fromTo.first,fromTo.second) { + this->ratio=1; this->ac=ac; } diff --git a/testHasttable/element/transformer.cpp b/testHasttable/element/transformer.cpp new file mode 100644 index 0000000..5695e5d --- /dev/null +++ b/testHasttable/element/transformer.cpp @@ -0,0 +1,26 @@ +#include "transformer.h" + + +Transformer::Transformer(const QPair& fromTo, PowerTransformer* tf):Branch(fromTo.first,fromTo.second) +{ + this->ratio=1; + this->tf=tf; +} + + +void Transformer::extract() +{ +// PowerTransformer *tf=this->tf; + double length=10; + //单位阻抗 + double r0=0.01; + double x0=0.01; + double g0=0; + double b0=0; + this->r=r0*length; + this->x=x0*length; + this->g1=g0*length; + this->g2=g0*length; + this->b1=b0*length; + this->b2=b0*length; +} diff --git a/testHasttable/element/transformer.h b/testHasttable/element/transformer.h new file mode 100644 index 0000000..72eea33 --- /dev/null +++ b/testHasttable/element/transformer.h @@ -0,0 +1,16 @@ +#ifndef TRANSFORMER_H +#define TRANSFORMER_H +#include +#include "branch.h" +#include "./../powertransformer.h" +class Transformer:public Branch +{ +public: + Transformer(const QPair &fromTo, PowerTransformer *tf); +protected: + virtual void extract(); +private: + PowerTransformer *tf; +}; + +#endif // TRANSFORMER_H diff --git a/testHasttable/powertransformer.cpp b/testHasttable/powertransformer.cpp index c3cc5b1..587eaf8 100644 --- a/testHasttable/powertransformer.cpp +++ b/testHasttable/powertransformer.cpp @@ -33,6 +33,20 @@ bool PowerTransformer::derivedParse(QXmlStreamReader &reader) { this->namingDescription=reader.readElementText(); } + if("PowerTransformer.KV_H"==reader.name()) + { + QString ratedkV=reader.readElementText(); + bool ok; + double _ratedkV=ratedkV.toDouble(&ok); + this->powerTransformerKV_H=ok?_ratedkV:-10000; + } + if("PowerTransformer.ratedMVA_H"==reader.name()) + { + QString ratedMVA=reader.readElementText(); + bool ok; + double _ratedMVA=ratedMVA.toDouble(&ok); + this->powerTransformerRatedMVA_H=ok?_ratedMVA:-10000; + } return true; } @@ -46,7 +60,14 @@ QString PowerTransformer::getNamingDescription() return this->namingDescription; } - +double PowerTransformer::getMVA() +{ + return this->powerTransformerRatedMVA_H; +} +double PowerTransformer::getRatedkV() +{ + return this->powerTransformerKV_H; +} bool PowerTransformer::parse(QXmlStreamReader &reader) { diff --git a/testHasttable/powertransformer.h b/testHasttable/powertransformer.h index 72cf3e6..96b2be6 100644 --- a/testHasttable/powertransformer.h +++ b/testHasttable/powertransformer.h @@ -7,13 +7,17 @@ class PowerTransformer:public BasicElementInfo public: explicit PowerTransformer(QObject *parent = 0); virtual bool parse(QXmlStreamReader& reader); - QString getNamingDescription(); QString getEquipmentMemberOf_EquipmentContainer(); + QString getNamingDescription(); + double getMVA(); + double getRatedkV(); protected: QString terminalA; QString terminalB; QString equipmentContainer; QString namingDescription; + double powerTransformerRatedMVA_H; + double powerTransformerKV_H; virtual bool derivedParse(QXmlStreamReader& reader); private: bool isTerminalA; diff --git a/testHasttable/testHasttable.pro b/testHasttable/testHasttable.pro index 80cdfe3..e8f4798 100644 --- a/testHasttable/testHasttable.pro +++ b/testHasttable/testHasttable.pro @@ -34,7 +34,8 @@ SOURCES += main.cpp \ substation.cpp \ cimexporter.cpp \ element/branch.cpp \ - element/line.cpp + element/line.cpp \ + element/transformer.cpp HEADERS += \ elementhashtable.h \ @@ -54,7 +55,8 @@ HEADERS += \ substation.h \ cimexporter.h \ element/branch.h \ - element/line.h + element/line.h \ + element/transformer.h #release{ DEFINES += QT_NO_DEBUG_OUTPUT