Closed IVANKRUPSKI closed 6 years ago
Does it work properly when manager.shouldCenterAlignClusters = false
?
Yea, it seems to work without this strange behavior when it’s false.
But in this case the bug with overlapping cluster views and pins appears.
On Nov 23, 2017, at 22:26, Lasha Efremidze notifications@github.com wrote:
Does it work properly when manager.shouldCenterAlignClusters = false?
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/efremidze/Cluster/issues/60#issuecomment-346699474, or mute the thread https://github.com/notifications/unsubscribe-auth/APbj6exTK8RSijSQ0jT0Q63g8ZwlskrOks5s5eMHgaJpZM4Qo0rj.
It happens to me too. It put the group on top of the sea when in reality there is no one there. Any help?
The pins shouldn't be centered, only the clusters. Ill take a look. The clusters landing in the sea are normal since it is placing them in the center of quadrants.
You could modify it so that the clusters are created, not in the center, if not in reference to the last or first of the pins with a bit of deviation, if you want.
I think it would be a good idea.
I have three pins in Spain, and when zooming out, as are the 3 near the coast, place the cluster in the sea.
In your case I would set manager.shouldCenterAlignClusters = false
since it does that exactly.
With manager.shouldCenterAlignClusters = true, the pins , when zooming out, as are the 3 near the coast, place the cluster in the sea.
Could you tell me how to modify your excellent library so that the tool set is placed in the coordinates of the last or first pin?
I meant manager.shouldCenterAlignClusters = false
should do that. It places the cluster based on the average coordinate. I could use median instead.
I have a bigger problem
When the change is the location, often do not see the pines if I do not zoom and zoom out, and sometimes even doing so not all are displayed.
Could you help me, please, to solve this?
It is very important for my project.
Im adding options for displaying clusters (center, first, average), however ur issue is probably unrelated. Please post an example so I can reproduce it.
I reproduced the bug. I'll try to get to this as soon as possible, but if you have a fix for it, pull-requests are always welcome!
I have similar problem with 2.1.0 I have clusters in 2 continents and when I zoom out to see both clusters, cluster counts are changing when when changing zoom levels.
I don't think thats a bug, its by design.
I don't think is normal because I have cluster with about 3k annotations in Africa and 6k in Europe. When I'm slightly changing zoom level these numbers swaps. So it shows 3k in Europe and 6k in Africa which is totally wrong.
UPDATE: This is not happening with version 1.0.7 This occurs after 1.0.8
Now it works worse.
When I change the location of the map, it does not show me the annotations or the clusters.
When I charge it for the first time either.
I have to be zooming so that they start to see each other.
You could review it?
@dneykov Ill look into that. Are experiencing the same issue with 2.1.0? @jose46moreno which version?
Im testing it and everything appears right. Ill add unit tests. Help is appreciated.
@efremidze Yes this is the case in 2.1.0 as well Here are examples on different zoom levels with 2.1.0
What clusterPosition
are you using?
manager.clusterPosition = .nearCenter
r u having the same issue when setting clusterPosition
to .center
or .average
?
@efremidze I have tried . center
before but the result is the same. I didn't tried . average
but can try it at Monday and will let you know the result.
@efremidze the version is 2.1.0.
Besides the problem that clusters do not appear at times, it also happens to me as a @dneykov and that is that it moves position clusters when I zoom.
Actually this is an old issue, see #15.
In #15 the problem is solved with version 1.0.7 as I mentioned above version 1.0.7 works as expected but the versions after that have same problem.
Help?
Its not related to #15, that issue related to a meridian bug.
Can u guys send me a sample project to reproduce?
@efremidze here I leave a link to my Dropbox folder with the video where you can see the error:
https://www.dropbox.com/sh/exo23lipw6n0hs6/AACALNR29SY7v881CYZjcGRka?dl=0
And an image where I print the number of annotations by console:
Result:
Here you can see the entire function that runs in the viewWillAppear.
The problem is that when you add the annotations to the manager, it does not call the method ViewFor of MapKit (I have put a print on that method and it does not run)
I'm unable to reproduce it.
Regarding your setup, mapView.centerCoordinate
doesn't call viewFor:
, regionDidChangeAnimated:
or reload:
. Call manager.reload(mapView, visibleMapRect: mapView.visibleMapRect)
to reload the map.
I completely rewrote my mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation)
delegate method and now everything seems to work as expected with manager.clusterPosition = . average
and Cluster version 2.1.0
Great! manager.clusterPosition = .average does the work.
However there again appeared the problem that was described in #49. Any chances it could be solved?
Increasing the cell size fixes that issue, however it needs to be done dynamically. I need to investigate a good solution for that.
@efremidze You think you could implement some animation for the grouping and ungrouping of the annotations.
Something like they all come together at one point and separate.
It would be incredible and improve the user experience.
Sorry didn't get it. What is meant by the cell size? This -> manager.maxZoomLevel = 20 ?
@jose46moreno I'll create a separate issue for that
@IVANKRUPSKI manager.cellSize = 20
Got it, thanks!
Issue Description
(1) Cluster views change their location constantly when zooming (even very slightly) on low zoom, (2) they move far from the actual pins locations, (3) occasionally on very low zoom pins pop up.
All this somehow linked to this method
manager.shouldCenterAlignClusters = true
Screenshots
Environment