public class Triangle { private Point pA; private Point pB; private Point pC; public Triangle(Point pA, Point pB, Point pC) { this.pA = pA; this.pB = pB; this.pC = pC; } public double getArea() { // Heron, eine wunderschoene und einfache Formel double a = pB.getDistanceTo(pC); double b = pC.getDistanceTo(pA); double c = pA.getDistanceTo(pB); double s = getPerimeter() / 2; double areaSqr = s * (s - a) * (s - b) * (s - c); return Math.sqrt(areaSqr); } public double getPerimeter() { return pA.getDistanceTo(pB) + pB.getDistanceTo(pC) + pC.getDistanceTo(pA); } public String toString() { return "[" + pA + ", " + pB + ", " + pC + "]"; } }