private static boolean intersectProp ( int [ ] verts , int a , int b , int c , int d ) { // Eliminate improper cases. if ( collinear ( verts , a , b , c ) || collinear ( verts , a , b , d ) || collinear ( verts , c , d , a ) || collinear ( verts , c , d , b ) ) return false ; return ( left ( verts , a , b , c ) ^ left ( verts , a , b , d ) ) && ( left ( verts , c , d , a ) ^ left ( verts , c , d , b ) ) ; }
intersection is ensured by using strict leftness .