public boolean Between( cPointi a, cPointi b, cPointi c)
  {
    cPointi      ba, ca;
    
    if ( ! Collinear( a, b, c) )
      return  false;
    
    /* If ab not vertical, check betweenness on x; else on y. */
    if ( a.x != b.x )
      return ((a.x <= c.x) && (c.x <= b.x)) ||
	     ((a.x >= c.x) && (c.x >= b.x));
    else
      return ((a.y <= c.y) && (c.y <= b.y)) ||
	     ((a.y >= c.y) && (c.y >= b.y));
  }