#include <bits/stdc++.h>
using namespace std;
const double eps = 1e-2;
long double fgcd(long double xx, long double yy) {
  long double x = fabs(xx), y = fabs(yy);
  while (x > eps && y > eps) {
    if (x > y)
      x = x - floor(x / y) * y;
    else
      y = y - floor(y / x) * x;
  }
  return x + y;
}
double myacos(double a, double b, double c) {
  return acos((a * a + b * b - c * c) / (2 * a * b));
}
int main() {
  double x1, x2, x3, y1, y2, y3;
  cin.sync_with_stdio(0);
  cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
  double a, b, c;
  a = sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
  b = sqrt((x1 - x3) * (x1 - x3) + (y1 - y3) * (y1 - y3));
  c = sqrt((x2 - x3) * (x2 - x3) + (y2 - y3) * (y2 - y3));
  double p = (a + b + c) / 2;
  double R = a * b * c / (4 * double(sqrt(p * (p - a) * (p - b) * (p - c))));
  double aa, bb, cc;
  double RR = R * R * 2;
  aa = myacos(R, R, a);
  bb = myacos(R, R, b);
  double PI = atan2(0, -1);
  cc = 2 * PI - aa - bb;
  double rr = fgcd(fgcd(aa, bb), cc);
  double n = 2 * PI / rr;
  double s = n * 0.5 * R * R * sin(rr);
  printf("%.12f\n", s);
  return 0;
}
