diff --git a/testHasttable/topologyrecorder.cpp b/testHasttable/topologyrecorder.cpp index d814216..88ceb01 100644 --- a/testHasttable/topologyrecorder.cpp +++ b/testHasttable/topologyrecorder.cpp @@ -20,85 +20,100 @@ bool TopologyRecorder::startWithNode(const QString& node) anotherTerminal=anotherTerminalVector.at(atI); if(this->reachedTerminal.contains(anotherTerminal)) { -// std::cout<reachedTerminal[anotherTerminal]=0; -// std::cout<<"anotherTerminal"<(ht[anotherTerminal]); QString ce; ce=anotherTerminalP->getConductingEquipment(); -// std::cout< fromTo; + QString terminalA; + QString terminalB; + //通过ACSegmentLine的ID来找Terminal。下同。 if(ce.startsWith("AC")) { - foundCate=true; QString acID=ce; - QPair fromTo; fromTo.first=node; fromTo.second=acID; - this->branch.push_back(fromTo); - //通过ACSegmentLine的ID来找Terminal。下同。 ACLineSegment *AC=static_cast(ht[acID]); if(!AC) { -// std::cout<<"can not find "<getTerminalA(); terminalB=AC->getTerminalB(); - QString nextTerminal; - nextTerminal=(terminalA==anotherTerminal)?terminalB:terminalA; -// std::cout<<"new Terminal"<(ht[nextTerminal]); - if(!nextTerminalP) - { -// std::cout<<"can not terminal "<getConnectivityNode(); -// std::cout<<"next node"<startWithNode(nextNode); + std::cout<<"find"<getID().toStdString()< fromTo; fromTo.first=node; fromTo.second=swID; - this->branch.push_back(fromTo); Breaker *SW=static_cast(ht[swID]); if(!SW) { -// std::cout<<"can not SW "<getTerminalA(); terminalB=SW->getTerminalB(); -// std::cout<<"terminalA"<(ht[nextTerminal]); - if(!nextTerminalP) - { -// std::cout<<"can not terminal "<getConnectivityNode(); -// std::cout<<"next node"<startWithNode(nextNode); - + std::cout<<"find"<getID().toStdString()< fromTo; + + // this->branch.push_back(fromTo); + + // QString terminalA; + // QString terminalB; + + // // std::cout<<"terminalA"<(ht[nextTerminal]); + // if(!nextTerminalP) + // { + // // std::cout<<"can not terminal "<getConnectivityNode(); + // // std::cout<<"next node"<startWithNode(nextNode); + + // } + + if(foundCate) + { + this->branch.push_back(fromTo); + QString nextTerminal; + nextTerminal=(terminalA==anotherTerminal)?terminalB:terminalA; + // std::cout<<"new Terminal"<(ht[nextTerminal]); + if(!nextTerminalP) + { + // std::cout<<"can not terminal "<getConnectivityNode(); + // std::cout<<"next node"<startWithNode(nextNode); + } + else { std::cout<<"not found cate "<