#include <bits/stdc++.h>
using namespace std;
double gcd(double a, double b) {
  if (a < 0.001) {
    return b;
  } else if (b < 0.001) {
    return a;
  } else {
    return gcd(b, fmod(a, b));
  }
}
int main() {
  double x1, y1, x2, y2, x3, y3;
  cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
  double a, b, c;
  a = sqrt(pow(x1 - x2, 2) + pow(y1 - y2, 2));
  b = sqrt(pow(x1 - x3, 2) + pow(y1 - y3, 2));
  c = sqrt(pow(x3 - x2, 2) + pow(y3 - y2, 2));
  double p, r, s;
  p = (a + b + c) / 2;
  r = a * b * c / 4 / sqrt(p * (p - a) * (p - b) * (p - c));
  double A, B, C;
  A = acos((2 * r * r - a * a) / 2 / r / r);
  B = acos((2 * r * r - b * b) / 2 / r / r);
  C = 2 * 3.141592653 - A - B;
  double D = gcd(gcd(A, B), C);
  double k = 3.141592653 / D * r * r * sin(D);
  printf("%.8f", k);
}
