/*protected*/ void EdgeRing::mergeLabel(const Label& deLabel) { mergeLabel(deLabel, 0); mergeLabel(deLabel, 1); testInvariant(); }
/*public*/ void Node::mergeLabel(const Node& n) { assert(!n.label.isNull()); mergeLabel(n.label); testInvariant(); }
/*protected*/ void EdgeRing::computePoints(DirectedEdge *newStart) // throw(const TopologyException &) { startDe=newStart; DirectedEdge *de=newStart; bool isFirstEdge=true; do { //util::Assert::isTrue(de!=NULL,"EdgeRing::computePoints: found null Directed Edge"); //assert(de!=NULL); // EdgeRing::computePoints: found null Directed Edge if(de==NULL) throw util::TopologyException( "EdgeRing::computePoints: found null Directed Edge"); if (de->getEdgeRing()==this) throw util::TopologyException( "Directed Edge visited twice during ring-building", de->getCoordinate()); edges.push_back(de); const Label& deLabel = de->getLabel(); assert(deLabel.isArea()); mergeLabel(deLabel); addPoints(de->getEdge(),de->isForward(),isFirstEdge); isFirstEdge=false; setEdgeRing(de,this); de=getNext(de); } while (de!=startDe); testInvariant(); }
/*public*/ void Node::mergeLabel(const Node& n) { assert(n.label); mergeLabel(*(n.label)); testInvariant(); }