Exemplo n.º 1
0
 public List<E> getHitMarkers(float checkX, float checkY) {
   List<E> hitMarkers = new ArrayList<E>();
   for (E marker : markers) {
     if (marker.isInside(map, checkX, checkY)) {
       hitMarkers.add(marker);
     }
   }
   return hitMarkers;
 }
Exemplo n.º 2
0
 public E getNearestMarker(float checkX, float checkY) {
   E foundMarker = null;
   double minDist = Double.MAX_VALUE;
   for (E marker : markers) {
     double dist = marker.getDistanceTo(map.getLocation(checkX, checkY));
     if (minDist == dist) {
       if (marker.isInside(map, checkX, checkY)) {
         foundMarker = marker;
       }
     } else if (minDist > dist) {
       minDist = dist;
       foundMarker = marker;
     }
   }
   return foundMarker;
 }
Exemplo n.º 3
0
  public E getFirstHitMarker(float checkX, float checkY) {

    E foundMarker = null;
    // NB: Markers should be ordered, e.g. by size ascending, i.e. big, medium, small
    for (E marker : markers) {

      // NB: If markers are order by size descending, i.e. small, medium, big
      // for (int i = markers.size() - 1; i >= 0; i--) {
      // Marker marker = markers.get(i);

      if (marker.isInside(map, checkX, checkY)) {
        foundMarker = marker;
        break;
      }
    }
    return foundMarker;
  }