simplifyVertex method
Implementation
double simplifyVertex(VWVertex vwLine) {
///
/// Scan vertices in line and remove the one with smallest effective area.
///
// TODO: use an appropriate data structure to optimize finding the smallest area vertex
VWVertex? curr = vwLine;
double minArea = curr.getArea();
VWVertex? minVertex;
while (curr != null) {
double area = curr.getArea();
if (area < minArea) {
minArea = area;
minVertex = curr;
}
curr = curr.next;
}
if (minVertex != null && minArea < tolerance) {
minVertex.remove();
}
if (!vwLine.isLive) return -1;
return minArea;
}