private void findStabbedSegments(Coordinate stabbingRayLeftPt,List dirEdges,List stabbedSegments){
  for (Iterator i=dirEdges.iterator(); i.hasNext(); ) {
    DirectedEdge de=(DirectedEdge)i.next();
    if (!de.isForward())     continue;
    findStabbedSegments(stabbingRayLeftPt,de,stabbedSegments);
  }
}

private void findStabbedSegments ( Coordinate stabbingRayLeftPt , List dirEdges , List stabbedSegments ) { for ( Iterator i = dirEdges . iterator ( ) ; i . hasNext ( ) ; ) { DirectedEdge de = ( DirectedEdge ) i . next ( ) ; if ( ! de . isForward ( ) ) continue ; findStabbedSegments ( stabbingRayLeftPt , de , stabbedSegments ) ; } }
finds all non - horizontal segments intersecting the stabbing line in the list of diredges . the stabbing line is the ray to the right of stabbingrayleftpt .
