isRingCCW method
Computes orientation of a ring using a signed-area orientation test. For invalid (self-crossing) rings this ensures the largest enclosed area is taken to be the interior of the ring. This produces a more sensible result when used for repairing polygonal geometry via buffer-by-zero. For buffer use the lower robustness of orientation-by-area doesn't matter, since narrow or flat rings produce an acceptable offset curve for either orientation.
@param coord the ring coordinates @return true if the ring is CCW
Implementation
bool isRingCCW(List<Coordinate> coord) {
bool isCCW = Orientation.isCCWArea(coord);
//--- invert orientation if required
if (isInvertOrientation) return ! isCCW;
return isCCW;
}