#include <bits/stdc++.h>
using namespace std;
long double gcd(long double a, long double b) {
  long double temp;
  if (a < b) swap(a, b);
  while (fmod(b, a) > 0.01) {
    temp = b;
    b = a;
    a = fmod(temp, a);
  }
  return a;
}
void solve() {
  cout << fixed << setprecision(10);
  long double x1, x2, x3, y1, y2, y3;
  cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
  long double a, b, c;
  a = sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
  b = sqrt((x3 - x2) * (x3 - x2) + (y3 - y2) * (y3 - y2));
  c = sqrt((x1 - x3) * (x1 - x3) + (y1 - y3) * (y1 - y3));
  long double area =
      0.5 * abs((x1 - x2) * y3 + (x2 - x3) * y1 + (x3 - x1) * y2);
  long double r = (a * b * c) / (4 * area);
  ;
  long double A = 2 * asin(a / (2 * r));
  long double B = 2 * asin(b / (2 * r));
  long double C = 2 * acos(-1) - A - B;
  long double k = gcd(B, C);
  long double p = gcd(A, k);
  cout << (r * r * acos(-1) * sin(p) / p);
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  solve();
  return 0;
}
