computeLabel method

void computeLabel(
  1. BoundaryNodeRule boundaryNodeRule
)
override

This computes the overall edge label for the set of edges in this EdgeStubBundle. It essentially merges the ON and side labels for each edge. These labels must be compatible

Implementation

void computeLabel(BoundaryNodeRule boundaryNodeRule) {
  // create the label.  If any of the edges belong to areas,
  // the label must be an area label
  bool isArea = false;
  for (Iterator it = iterator(); it.moveNext();) {
    EdgeEnd e = it.current as EdgeEnd;
    if (e.getLabel()!.isArea()) isArea = true;
  }
  if (isArea)
    label = new Label.args3(Location.NONE, Location.NONE, Location.NONE);
  else
    label = new Label(Location.NONE);

  // compute the On label, and the side labels if present
  for (int i = 0; i < 2; i++) {
    computeLabelOn(i, boundaryNodeRule);
    if (isArea) computeLabelSides(i);
  }
}