Arcgis Javascript API学習(五)簡単な周辺クエリ
1346 ワード
周辺の調査をする時、二つの案を考えました.
一つ目は点ごとの距離を巡ることですが、考えてみると効率が悪いかもしれません.主な呼び出しはGeometryServiceのlengths-completteeイベントです.この考えはパスが外れました.
第二のGeometryServiceはまた、イベントを提供します.これはちょっと堅実な感じがします.サンプルコードは以下の通りです.
一つ目は点ごとの距離を巡ることですが、考えてみると効率が悪いかもしれません.主な呼び出しはGeometryServiceのlengths-completteeイベントです.この考えはパスが外れました.
第二のGeometryServiceはまた、イベントを提供します.これはちょっと堅実な感じがします.サンプルコードは以下の通りです.
/*
*
*
* 1.
* 2.
* 3.
*/
dojo.require("esri.tasks.BufferParameters");
function nearbySearchStart(size) {
geometryService = new esri.tasks.GeometryService(bufferServer);
var params = new esri.tasks.BufferParameters();
params.geometries = [ graphicNB.geometry ];
params.distances = [ size ];
params.unit = esri.tasks.GeometryService.UNIT_KILOMETER;
params.bufferSpatialReference = new esri.SpatialReference({wkid: 4326});
params.outSpatialReference = map.spatialReference;
geometryService.buffer(params);
dojo.connect(geometryService, "onBufferComplete", buffercomplet);
}
function buffercomplet(result) {
var selectLayer = new esri.layers.GraphicsLayer({id:"selectLayer"});
var symbol = new esri.symbol.SimpleFillSymbol(
esri.symbol.SimpleFillSymbol.STYLE_NULL,
new esri.symbol.SimpleLineSymbol(
esri.symbol.SimpleLineSymbol.STYLE_SHORTDASHDOTDOT, new dojo.Color([105,105,105]), 2), new dojo.Color([255,255,0,0.25])
);
var selectGraphic = new esri.Graphic(result[0], symbol);
selectLayer.add(selectGraphic);
map.addLayer(selectLayer);
}