public void UpdatePosition()
        {
            markerRef.GetPosition(out longitude, out latitude);
            mx = longitude;
            my = latitude;
            OnlineMapsUtils.LatLongToMercat(ref mx, ref my);

            Cluster p = parent;

            while (p != null)
            {
                int tx, ty;
                GetTilePosition(p.zoom, out tx, out ty);
                if (p.CompareTiles(p.zoom, tx, ty))
                {
                    parent.RemoveChild(this);
                    p.Add(this);
                    break;
                }
                if (p.parent != null)
                {
                    p = p.parent;
                }
                else
                {
                    parent.RemoveChild(this);
                    p.Add(this);
                    break;
                }
            }
        }
 public MarkerWrapper(OnlineMapsMarker marker)
 {
     markerRef = marker;
     marker.GetPosition(out longitude, out latitude);
     mx = longitude;
     my = latitude;
     OnlineMapsUtils.LatLongToMercat(ref mx, ref my);
 }