protected final int isLeft(double[] a,double[] b,double[] o){
  final double cross=getRX(a,o) * getRY(b,o) - getRY(a,o) * getRX(b,o);
  if (cross == 0) {
    final double dista=Math.abs(getRX(a,o)) + Math.abs(getRY(a,o));
    final double distb=Math.abs(getRX(b,o)) + Math.abs(getRY(b,o));
    return Double.compare(dista,distb);
  }
  return Double.compare(cross,0);
}

protected final int isLeft ( double [ ] a , double [ ] b , double [ ] o ) { final double cross = getRX ( a , o ) * getRY ( b , o ) - getRY ( a , o ) * getRX ( b , o ) ; if ( cross == 0 ) { final double dista = Math . abs ( getRX ( a , o ) ) + Math . abs ( getRY ( a , o ) ) ; final double distb = Math . abs ( getRX ( b , o ) ) + Math . abs ( getRY ( b , o ) ) ; return Double . compare ( dista , distb ) ; } return Double . compare ( cross , 0 ) ; }
test whether a point is left of the other wrt . the origin .
