public static boolean segmentSuportSeparatesPoints(Segment s, Point P, Point Q) {
		Point v1 = getVectorFromTo(P, s.P);
		Point u1 = getVectorFromTo(P, s.Q);
		Point v2 = getVectorFromTo(Q, s.P);
		Point u2 = getVectorFromTo(Q, s.Q);
		double prodV1U1 = crossProd(v1, u1);
		double prodV2U2 = crossProd(v2, u2);
		return (prodV1U1 < 0 && prodV2U2 > 0) || (prodV1U1 > 0 && prodV2U2 < 0);
	}