Added code to expose the persistence_diagram class, the bottleneck_distance function and the point class to python.
Most of the commonly used methods for each class have been exported.
The constructor for point now requires that a data argument be provided along with x and y coord. This needs to be made optional.
The constructor for persistence_diagram could possibly be rewritten as well.
def add_simplices(zz, simplices, complex, birth, report_local = False):
deaths = []
for s in simplices:
i,d = zz.add([complex[sb] for sb in s.boundary], (s.dimension(), birth))
complex[s] = i
if d is not None:
if report_local or not d[1] == birth:
deaths.append(d)
return deaths
def remove_simplices(zz, simplices, complex, birth, report_local = False):
deaths = []
for s in simplices:
d = zz.remove(complex[s], (s.dimension() - 1, birth))
complex[s] = None
if d is not None:
if report_local or not d[1] == birth:
deaths.append(d)
return deaths