| 590 | } |
| 591 | |
| 592 | void Delaunay::SplitEdge(Edge* longE, Edge* shortE) |
| 593 | { |
| 594 | auto oldT = longE->vT, newT = shortE->vT; |
| 595 | // remove longEdge from longEdge.vT.edges |
| 596 | RemoveEdgeFromVertex(oldT, longE); |
| 597 | // shorten longEdge |
| 598 | longE->vT = newT; |
| 599 | if (longE->vL == oldT) longE->vL = newT; |
| 600 | else longE->vR = newT; |
| 601 | // add shortened longEdge to newT.edges |
| 602 | newT->edges.push_back(longE); |
| 603 | // and create a new edge betweem newV, oldT |
| 604 | CreateEdge(newT, oldT, longE->kind); |
| 605 | } |
| 606 | |
| 607 | void Delaunay::MergeDupOrCollinearVertices() |
| 608 | { |
nothing calls this directly
no test coverage detected