可以通过以下代码示例解决这个问题:
var layer = new GraphicsLayer(); map.addLayer(layer);
// 创建一个点图形 var point1 = new Point(10, 10); var point2 = new Point(20, 20); var point3 = new Point(30, 30); var point4 = new Point(40, 40);
var pointSymbol = new SimpleMarkerSymbol( SimpleMarkerSymbol.STYLE_CIRCLE, 10, new SimpleLineSymbol( SimpleLineSymbol.STYLE_SOLID, new Color([171, 255, 30]), 1), new Color([255, 0, 0, 0.25]) );
var graphic1 = new Graphic(point1, pointSymbol); var graphic2 = new Graphic(point2, pointSymbol); var graphic3 = new Graphic(point3, pointSymbol); var graphic4 = new Graphic(point4, pointSymbol);
layer.add(graphic1); layer.add(graphic2); layer.add(graphic3); layer.add(graphic4);
// 创建featureCluster var fl = new FeatureLayer("http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer/0", { mode: FeatureLayer.MODE_ONDEMAND, outFields: ["*"], });
map.addLayer(fl);
var options = { featureLayer: fl, singleSymbol: pointSymbol, distance: 100, labelColor: "#fff", labelOffset: 10, resolution: map.extent.getWidth() / map.width, useDefaultSymbol: false, zoomOnClick: true, objectIdField: "OBJECTID", parentIdField: "ParentSen", clusterRatio: 75 };
var featureLayer = new FeatureLayer(fl.url, { id: "featureLayer" });
var clusterLayer = new ClusterLayer(options); clusterLayer.add(featureLayer); map.addLayer(clusterLayer);
现在,featureCluster应该可以与点图形一起正常工作。