'The foci of the ellipse.
Notes
The foci can only be calculated if the major/minor axes are known.
Raises
ValueError
When the major and minor axis cannot be determined.
See Also
sympy.geometry.point.Point
focus_distance : Returns the distance between focus and center
Examples
>>> from sympy import Point, Ellipse
>>> p1 = Point(0, 0)
>>> e1 = Ellipse(p1, 3, 1)
>>> e1.foci
(Point2D(-2*sqrt(2), 0), Point2D(2*sqrt(2), 0))'

@property
def foci(self):

    c = self.center
    (hr, vr) = (self.hradius, self.vradius)
    if (hr == vr):
        return (c, c)
    fd = sqrt(((self.major ** 2) - (self.minor ** 2)))
    if (hr == self.minor):
        return ((c + Point(0, (- fd))), (c + Point(0, fd)))
    elif (hr == self.major):
        return ((c + Point((- fd), 0)), (c + Point(fd, 0)))
