public static Circle2D?TripointCircle(
            double PointAX, double PointAY,
            double PointBX, double PointBY,
            double PointCX, double PointCY)
        {
            (var X, var Y) = CircleCenterThreePointsTests.CenterCircleThreePoints(PointAX, PointAY, PointBX, PointBY, PointCX, PointCY) ?? (0d, 0d);
            var radius = Distance2DTests.Distance2D(X, Y, PointAX, PointAY);

            return(new Circle2D(X, Y, radius));
        }
        public static Rectangle2D TripointCircleBounds(
            double PointAX, double PointAY,
            double PointBX, double PointBY,
            double PointCX, double PointCY)
        {
            (var X, var Y) = CircleCenterThreePointsTests.CenterCircleThreePoints(PointAX, PointAY, PointBX, PointBY, PointCX, PointCY) ?? (0d, 0d);
            var Radius = Distance2DTests.Distance2D(X, Y, PointAX, PointAY);

            return(Rectangle2D.FromLTRB(X - Radius, Y - Radius, X + Radius, Y + Radius));
        }