Integrating with the app
As we continue to work with increasing levels of abstraction, think of our app's organization. We have two types of data and we have the GeocachingApp class with high level functionality. At this point, what we want is to enable the app to filter like we did in the tests, but in a simple and straightforward way.
Take a look at the app as it is at this point:
class GeocachingApp(PointCollection):
def __init__(self, data_file=None, my_location=None):
"""Application class.
:param data_file: An OGR compatible file
with geocaching points.
:param my_location: Coordinates of your location.
"""
super(GeocachingApp, self).__init__(file_path=data_file)
self._datasource = None
self._transformed_geoms = None
self._my_location = None
self.distances = None
if my_location:
self.my_location = my_location
@property
def my_location(self):
return self._my_location...