
REVClusterMap API is a simple implementation of clustering for the iOS platform.
An extra layer of functionalities that enables clustering built on top of the MapKit Framework.
With a small set of customizable settings the simple cluster algorithm provides an easy way to cluster your annotations.
The source code is free to use in non-commercial and commercial projects without our written consent.
Additions or bug-fixes are more than welcome. Shout-outs are always encouraged.
Enjoy!


Hi,
I’ve made a few changes to your code, maybe You can integrate them. I must say this plugin is very usefull for our project! Thx for this!
Some changes:
-> now the class can be used from interfacebuilder.
Also the REVClusterMap did not support userlocations, I fixed this by adding the following in the manager:
And to make it work in the example class (RevMapViewController.h)
Thanks for the additions, the example view controller that is in the project is just for example purposes, and in this particular example it doesn’t use a NIB.
The userLocation bug was spotted earlier and a fix for that is already checked in into the github repo.
Yes, but I think people look at the example to integrate, maybe useful to integrate.
It is a great control, thanks for that!
M.
The REVClusterAnnotationView seems recognize touch events as not calling the didSelectAnnotationView delegate method.
I’ve tried to add annView.enabled = YES in viewForAnnotation method but nothing changed. I’ve tried to remove the label from the REVClusterAnnotationView without success. I don’t found other way to solve my problem.
Have you a suggest?
The REVClusterAnnotationView seems NOT recognize touch events…
obviously
This is absolutely awesome.
Thanks very much just what I needed!
Hey ,
First: Thanks soo much for this great effort.
Second: i saw when using that , that removing annotations is not included and i had some problems doing that , and i got to fix them so here is the code, if you would like to add it to REVClusterMapView.
- (void) removeAnnotations:(NSArray *)annotations
{
[annotationsCopy removeObjectsInArray:annotations];
[super removeAnnotations:annotations];
[super removeAnnotations:self.annotations];
self.showsUserLocation = self.showsUserLocation;
NSArray *add = [REVClusterManager clusterAnnotationsForMapView:self forAnnotations:annotationsCopy blocks:self.blocks minClusterLevel:self.minimumClusterLevel];
[super addAnnotations:add];
}
this line is not needed , sorry
[super removeAnnotations:annotations];
Hi, MNBE I want to ask what is “gt” in your code. when I use it says “gt undeclaired”.
Marmaduk, > is > (html abbreviation for Greater Than). He used that symbol because he thought he couldn’t write a real “<" in the comment, because it's html-sensitive.
gt is >
Im using this API and it works like charm but I want cluster to handle with single touch, not with double touch. plz can anyone help me how to do that plz plz plz….
This project is great! Thank you! It really helps me with some project I’m working on.
Pingback: Quora
Anyone interested in integrating this into the MapKit plugin for Phonegap?
https://github.com/phonegap/phonegap-plugins/tree/master/iPhone/MapKitPlug