Package com.naver.maps.map.clustering
Class Clusterer.Builder<T extends ClusteringKey>
- java.lang.Object
-
- com.naver.maps.map.clustering.Clusterer.Builder<T>
-
- Type Parameters:
T- 키의 타입.
- Enclosing class:
- Clusterer<T extends ClusteringKey>
public static class Clusterer.Builder<T extends ClusteringKey> extends java.lang.ObjectClusterer를 생성하는 빌더 클래스. 클러스터링할 거리, 최소/최대 줌 레벨, 애니메이션 여부, 클러스터/단말 클러스터/단말 마커 커스터마이징 등 기본적인 기능을 제공합니다. 복잡한 전략과 기능이 필요하다면Clusterer.ComplexBuilder를 사용해야 합니다.
-
-
Constructor Summary
Constructors Constructor Description Builder()생성자.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Clusterer.Builder<T>animate(boolean animate)카메라 확대/축소시 클러스터가 펼쳐지는/합쳐지는 애니메이션을 적용할지 여부를 지정합니다.Clusterer<T>build()Clusterer객체를 생성합니다.Clusterer.Builder<T>clusterMarkerUpdater(ClusterMarkerUpdater clusterMarkerUpdater)클러스터 마커의 정보를Marker객체에 반영하는 업데이터를 지정합니다.ClusterMarkerUpdatergetClusterMarkerUpdater()클러스터 마커의 정보를Marker객체에 반영하는 업데이터를 반환합니다.LeafMarkerUpdatergetLeafMarkerUpdater()단말 마커의 정보를Marker객체에 반영하는 업데이터를 반환합니다.intgetMaxZoom()클러스터링할 최대 줌 레벨을 반환합니다.intgetMinZoom()클러스터링할 최소 줌 레벨을 반환합니다.doublegetScreenDistance()클러스터링할 기준 거리를 반환합니다.booleanisAnimate()카메라 확대/축소시 클러스터가 펼쳐지는/합쳐지는 애니메이션을 적용할지 여부를 반환합니다.Clusterer.Builder<T>leafMarkerUpdater(LeafMarkerUpdater leafMarkerUpdater)단말 마커의 정보를Marker객체에 반영하는 업데이터를 지정합니다.Clusterer.Builder<T>maxZoom(int maxZoom)클러스터링할 최대 줌 레벨을 반환합니다.Clusterer.Builder<T>minZoom(int minZoom)클러스터링할 최소 줌 레벨을 지정합니다.Clusterer.Builder<T>screenDistance(double screenDistance)클러스터링할 기준 거리를 지정합니다.
-
-
-
Method Detail
-
getScreenDistance
@Dimension(unit=0) public double getScreenDistance()
클러스터링할 기준 거리를 반환합니다. 클러스터에 추가된 두 데이터의 화면상 거리가 기준 거리보다 가깝다면 클러스터링되어 하나의 마커로 나타납니다.
기본값은Clusterer.DEFAULT_SCREEN_DISTANCE입니다.- Returns:
- 화면상 기준 거리. DP 단위.
-
screenDistance
@NonNull public Clusterer.Builder<T> screenDistance(@Dimension(unit=0) double screenDistance)
클러스터링할 기준 거리를 지정합니다. 클러스터에 추가된 두 데이터의 화면상 거리가 기준 거리보다 가깝다면 클러스터링되어 하나의 마커로 나타납니다.
기본값은Clusterer.DEFAULT_SCREEN_DISTANCE입니다.- Parameters:
screenDistance- 화면상 기준 거리. DP 단위.- Returns:
- 객체 자신.
-
getMinZoom
@IntRange(from=0L, to=21L) public int getMinZoom()클러스터링할 최소 줌 레벨을 반환합니다. 카메라의 줌 레벨이 최소 줌 레벨보다 낮다면 두 데이터가 화면상 기준 거리보다 가깝더라도 더 이상 클러스터링되지 않습니다. 예를 들어, 클러스터링할 최소 줌 레벨이 4라면, 카메라의 줌 레벨을 3레벨 이하로 축소하더라도 4레벨의 클러스터가 더 이상 클러스터링되지 않고 그대로 유지됩니다.
기본값은NaverMap.MINIMUM_ZOOM입니다.- Returns:
- 클러스터링할 최소 줌 레벨.
-
minZoom
@NonNull public Clusterer.Builder<T> minZoom(@IntRange(from=0L,to=21L) int minZoom)
클러스터링할 최소 줌 레벨을 지정합니다. 카메라의 줌 레벨이 최소 줌 레벨보다 낮다면 두 데이터가 화면상 기준 거리보다 가깝더라도 더 이상 클러스터링되지 않습니다. 예를 들어, 클러스터링할 최소 줌 레벨이 4라면, 카메라의 줌 레벨을 3레벨 이하로 축소하더라도 4레벨의 클러스터가 더 이상 클러스터링되지 않고 그대로 유지됩니다.
기본값은NaverMap.MINIMUM_ZOOM입니다.- Parameters:
minZoom- 클러스터링할 최소 줌 레벨.- Returns:
- 객체 자신.
-
getMaxZoom
@IntRange(from=0L, to=21L) public int getMaxZoom()클러스터링할 최대 줌 레벨을 반환합니다. 카메라의 줌 레벨이 최대 줌 레벨보다 높다면 두 데이터가 화면상 기준 거리보다 가깝더라도 더 이상 클러스터링되지 않습니다. 예를 들어, 클러스터링할 최대 줌 레벨이 16이라면, 카메라의 줌 레벨을 17레벨 이상으로 확대하면 모든 데이터가 클러스터링되지 않고 낱개로 나타납니다. 따라서 클러스터링할 최대 줌 레벨이 지도의 최대 줌 레벨보다 크거나 같다면 카메라를 최대 줌 레벨로 확대하더라도 일부 데이터는 여전히 클러스터링된 채 더 이상 펼쳐지지 않을 수 있습니다.
기본값은입니다.NaverMap.MAXIMUM_ZOOM- 1- Returns:
- 클러스터링할 최대 줌 레벨.
-
maxZoom
@NonNull public Clusterer.Builder<T> maxZoom(@IntRange(from=0L,to=21L) int maxZoom)
클러스터링할 최대 줌 레벨을 반환합니다. 카메라의 줌 레벨이 최대 줌 레벨보다 높다면 두 데이터가 화면상 기준 거리보다 가깝더라도 더 이상 클러스터링되지 않습니다. 예를 들어, 클러스터링할 최대 줌 레벨이 16이라면, 카메라의 줌 레벨을 17레벨 이상으로 확대하면 모든 데이터가 클러스터링되지 않고 낱개로 나타납니다. 따라서 클러스터링할 최대 줌 레벨이 지도의 최대 줌 레벨보다 크거나 같다면 카메라를 최대 줌 레벨로 확대하더라도 일부 데이터는 여전히 클러스터링된 채 더 이상 펼쳐지지 않을 수 있습니다.
기본값은입니다.NaverMap.MAXIMUM_ZOOM- 1- Parameters:
maxZoom- 클러스터링할 최대 줌 레벨.- Returns:
- 객체 자신.
-
isAnimate
public boolean isAnimate()
카메라 확대/축소시 클러스터가 펼쳐지는/합쳐지는 애니메이션을 적용할지 여부를 반환합니다.
기본값은true입니다.- Returns:
- 애니메이션을 적용할 경우
true, 그렇지 않을 경우false.
-
animate
@NonNull public Clusterer.Builder<T> animate(boolean animate)
카메라 확대/축소시 클러스터가 펼쳐지는/합쳐지는 애니메이션을 적용할지 여부를 지정합니다.
기본값은true입니다.- Parameters:
animate- 애니메이션을 적용할 경우true, 그렇지 않을 경우false.- Returns:
- 객체 자신.
-
getClusterMarkerUpdater
@NonNull public ClusterMarkerUpdater getClusterMarkerUpdater()
- Returns:
ClusterMarkerUpdater객체.
-
clusterMarkerUpdater
@NonNull public Clusterer.Builder<T> clusterMarkerUpdater(@NonNull ClusterMarkerUpdater clusterMarkerUpdater)
- Parameters:
clusterMarkerUpdater-ClusterMarkerUpdater객체.- Returns:
- 객체 자신.
-
getLeafMarkerUpdater
@NonNull public LeafMarkerUpdater getLeafMarkerUpdater()
- Returns:
LeafMarkerUpdater객체.
-
leafMarkerUpdater
@NonNull public Clusterer.Builder<T> leafMarkerUpdater(@NonNull LeafMarkerUpdater leafMarkerUpdater)
- Parameters:
leafMarkerUpdater-LeafMarkerUpdater객체.- Returns:
- 객체 자신.
-
-