#include <bits/stdc++.h>
using namespace std;
double gcd(double x, double y) {
  while (fabs(x) > 1e-4 && fabs(y) > 1e-4) {
    if (x > y)
      x -= floor(x / y) * y;
    else
      y -= floor(y / x) * x;
  }
  return (x + y);
}
int main() {
  double x1, x2, x3, y1, y2, y3;
  cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
  double a = sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
  double b = sqrt((x1 - x3) * (x1 - x3) + (y1 - y3) * (y1 - y3));
  double c = sqrt((x2 - x3) * (x2 - x3) + (y2 - y3) * (y2 - y3));
  double s = (a + b + c) / 2.0;
  double area = sqrt(s * (s - a) * (s - b) * (s - c));
  double R = (a * b * c) / (4.0 * area);
  double A = acos((b * b + c * c - a * a) / (2.0 * b * c));
  double B = acos((a * a + c * c - b * b) / (2.0 * a * c));
  double C = acos((a * a + b * b - c * c) / (2.0 * a * b));
  double n = (acos(-1) / (gcd(A, gcd(B, C))));
  double ans = (n / 2.0) * R * R * sin(2 * acos(-1) / n);
  printf("%.9lf\n", ans);
  return 0;
}
