     
     func displayPointFeatures() {
         let pointFeatures = PointFeatureCollection()
-        pointFeatures.features.forEach(display)
+        
+        pointFeatures
+            .features
+            .filter(inDesiredArea)
+            .forEach(display)
+    }
+    
+    func inDesiredArea(streetFeature: GeoFeature<Point, [Double]>) -> Bool {
+        return isInArea(distanceLimit: 500.0, coordinate: streetFeature.location)
+    }
+
+    
+    public func isInArea(distanceLimit: Double, coordinate: CLLocation) -> Bool {
+        guard let distance = userDistance(from: coordinate) else {
+            return false
+        }
+        return distance <= distanceLimit
     }
     
     func display(streetFeature: GeoFeature<Point, [Double]>) {
+        numberOfPointsOfInterest += 1
         let locationAnnotationNode = LocationAnnotationNode(streetFeature: streetFeature)
+        locationAnnotationNode.scaleRelativeToDistance = true
         
         let mapAnnotation = MKPointAnnotation()
         mapAnnotation.coordinate = streetFeature.coordinate

        mapView.showsUserLocation = true
        mapView.setCenter(mapView.userLocation.coordinate, animated: true)
        view.addSubview(mapView)

        
        displayPointFeatures()
    }
    
    override func viewWillAppear(_ animated: Bool) {

        mapView.addAnnotation(mapAnnotation)
        
        sceneLocationView.addLocationNodeWithConfirmedLocation(locationNode: locationAnnotationNode)
    }
    
    // get distance from point to current location
    private func userDistance(from point: CLLocation) -> Double? {
        guard let userLocation = currentLocation else {
            print("Error - User location unknown!")
            return nil
        }
        return userLocation.distance(from: point)
    }
    
    func locationManager(_ manager: CLLocationManager,  didUpdateLocations locations: [CLLocation]) {
        
        currentLocation = locations.last
        displayPointFeatures()
        
    }
    
    // MARK: MapViewDelegate
