add method
Adds an intersection into the list, if it isn't already there. The input segmentIndex and dist are expected to be normalized.
@return the SegmentIntersection found or added
Implementation
SegmentNode add(Coordinate intPt, int segmentIndex) {
SegmentNode eiNew = new SegmentNode(
edge, intPt, segmentIndex, edge.getSegmentOctant(segmentIndex));
SegmentNode? ei = nodeMap[eiNew];
if (ei != null) {
// debugging sanity check
Assert.isTrue(ei.coord.equals2D(intPt),
"Found equal nodes with different coordinates");
// if (! ei.coord.equals2D(intPt))
// Debug.println("Found equal nodes with different coordinates");
return ei;
}
// node does not exist, so create it
nodeMap[eiNew] = eiNew;
return eiNew;
}