先创建集群,然后使用 HereMap 添加节点 JavaScript API
Creating cluster first and then Adding node to it using HereMap JavaScript API
在 Android,我正在 HereMaps 上创建集群并使用 HereMaps 上的以下函数向其添加节点 Java API.
private void initializeMapCluster() {
truckImage = new com.here.android.mpa.common.Image();
try {
truckImage.setImageResource(R.drawable.truck_img);
} catch (IOException e) {
}
markerCluster = new ClusterLayer();
// Setting up basic cluster theme.
BasicClusterStyle redStyle = new BasicClusterStyle();
redStyle.setFillColor(Color.RED);
BasicClusterStyle greenStyle = new BasicClusterStyle();
greenStyle.setFillColor(Color.GREEN);
ClusterTheme theme = new ClusterTheme();
theme.setStyleForDensityRange(4, 9, redStyle);
theme.setStyleForDensityRange(10, 49, greenStyle);
markerCluster.setTheme(theme);
map.addClusterLayer(markerCluster);
map.setCenter(new GeoCoordinate(LAT, LNG, 0.0), Map.Animation.BOW);
LocationUpdated(LAT, LNG);
}
现在,我愿意做同样的事情,但无法使用 HereMaps JavaScript API.
找到类似的功能
不过,我可以通过 DataPoints 进行聚类,但我正在寻找一种方法,即先创建集群,然后使用 JavaScript API
向其添加节点
我在 HereMaps 的 JavaScript API 中找到了解决此问题的替代方法。我希望这可以帮助面临类似问题的人。
第 1 步:使用空数组创建集群数据提供程序:
var clusteredDataProvider = new H.clustering.Provider([], {
clusteringOptions: {
eps: 32,
minWeight: 2
}
});
步骤 2:使用集群数据提供程序创建集群层:
var clusteringLayer = new H.map.layer.ObjectLayer(clusteredDataProvider);
步骤 3:向地图添加聚类图层:
map.addLayer(clusteringLayer)
步骤 4:向集群数据提供程序动态添加/删除数据点
var dataPoint1 = new H.clustering.DataPoint(lat1, lng1);
var dataPoint2 = new H.clustering.DataPoint(lat2, lng2);
clusteredDataProvider.addDataPoint(dataPoint1);
clusteredDataProvider.addDataPoint(dataPoint2);
clusteredDataProvider.removeDataPoint(dataPoint1);
在 Android,我正在 HereMaps 上创建集群并使用 HereMaps 上的以下函数向其添加节点 Java API.
private void initializeMapCluster() {
truckImage = new com.here.android.mpa.common.Image();
try {
truckImage.setImageResource(R.drawable.truck_img);
} catch (IOException e) {
}
markerCluster = new ClusterLayer();
// Setting up basic cluster theme.
BasicClusterStyle redStyle = new BasicClusterStyle();
redStyle.setFillColor(Color.RED);
BasicClusterStyle greenStyle = new BasicClusterStyle();
greenStyle.setFillColor(Color.GREEN);
ClusterTheme theme = new ClusterTheme();
theme.setStyleForDensityRange(4, 9, redStyle);
theme.setStyleForDensityRange(10, 49, greenStyle);
markerCluster.setTheme(theme);
map.addClusterLayer(markerCluster);
map.setCenter(new GeoCoordinate(LAT, LNG, 0.0), Map.Animation.BOW);
LocationUpdated(LAT, LNG);
}
现在,我愿意做同样的事情,但无法使用 HereMaps JavaScript API.
找到类似的功能不过,我可以通过 DataPoints 进行聚类,但我正在寻找一种方法,即先创建集群,然后使用 JavaScript API
向其添加节点我在 HereMaps 的 JavaScript API 中找到了解决此问题的替代方法。我希望这可以帮助面临类似问题的人。
第 1 步:使用空数组创建集群数据提供程序:
var clusteredDataProvider = new H.clustering.Provider([], {
clusteringOptions: {
eps: 32,
minWeight: 2
}
});
步骤 2:使用集群数据提供程序创建集群层:
var clusteringLayer = new H.map.layer.ObjectLayer(clusteredDataProvider);
步骤 3:向地图添加聚类图层:
map.addLayer(clusteringLayer)
步骤 4:向集群数据提供程序动态添加/删除数据点
var dataPoint1 = new H.clustering.DataPoint(lat1, lng1);
var dataPoint2 = new H.clustering.DataPoint(lat2, lng2);
clusteredDataProvider.addDataPoint(dataPoint1);
clusteredDataProvider.addDataPoint(dataPoint2);
clusteredDataProvider.removeDataPoint(dataPoint1);