boolean canBeSplit( List<Point2D_I32> contour, Element<Corner> e0 , boolean mustSplit ) {
		Element<Corner> e1 = next(e0);

		// NOTE: The contour is passed in but only the size of the contour matters. This was done to prevent
		//       changing the signature if the algorithm was changed later on.
		int length = CircularIndex.distanceP(e0.object.index, e1.object.index, contour.size());

		// needs to be <= to prevent it from trying to split a side less than 1
		// times two because the two new sides would have to have a length of at least min
		if (length <= 2*minimumSideLength) {
			return false;
		}

		// threshold is greater than zero ti prevent it from saying it can split a perfect side
		return mustSplit || e0.object.sideError > thresholdSideSplitScore;
	}
boolean canBeSplit ( List < Point2D_I32 > contour , Element < Corner > e0 , boolean mustSplit ) { Element < Corner > e1 = next ( e0 ) ; int length = CircularIndex . distanceP ( e0 . object . index , e1 . object . index , contour . size ( ) ) ; if ( length <= 2 * minimumSideLength ) { return false ; } return mustSplit || e0 . object . sideError > thresholdSideSplitScore ; }
Determines if the side can be split again. A side can always be split as long as
it's &ge; the minimum length or that the side score is larger the the split threshold

@param e0 The side which is to be tested to see if it can be split
@param mustSplit if true this will force it to split even if the error would prevent it from splitting
@return true if it can be split or false if not