findDistrictTask = new FindTask("http://summitgis.summitoh.net:6080/arcgis/rest/services/DOES/MapServer/"); map.on("load", function () { findDistrictParams = new FindParameters(); findDistrictParams.returnGeometry = true; findDistrictParams.layerIds = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; findDistrictParams.searchFields = ["NAME, UNAME, PUMPID, PIPEID, PlantID, Name"]; findDistrictParams.outSpatialReference = map.spatialReference; }); function doDoesDistrictFind() { findDistrictParams.searchText = dom.byId("doesDistrictText").value; findDistrictTask.execute(findDistrictParams, showResults); } function showResults(results) { var markerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_SQUARE, 10, new SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25])); var lineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 0, 0]), 1); var polygonSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_NONE, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.25])); map.graphics.clear(); var dataForGrid = []; arrayUtils.map(results, function (result) { var graphic = result.feature; dataForGrid.push([result.layerName, result.foundFieldName, result.value]); switch (graphic.geometry.type) { case "point": graphic.setSymbol(markerSymbol); break; case "polyline": graphic.setSymbol(lineSymbol); break; case "polygon": graphic.setSymbol(polygonSymbol); break; } map.graphics.add(graphic); }); var data = { items: dataForGrid }; var store = new ItemFileReadStore({ data: data }); var grid = registry.byId("grid"); grid.setStore(store); grid.on("rowclick", onRowClickHandler); map.centerAndZoom(center, zoom); } function onRowClickHandler(evt) { var clickedFeature = evt.grid.getItem(evt.rowIndex).OBJECTID; var selectedFeature = arrayUtils.filter(map.graphics.graphics, function (graphic) { return ((graphic.attributes) && graphic.attributes.OBJECTID === clickedFeature); }); var featureExtent = selectedFeature.geometry.getExtent(); var screenpoint = map.toScreen(selectedFeature.geometry.getExtent().getCenter()); var mappoint = map.toMap(screenpoint); map.centerAt(mappoint); if (selectedFeature.geometry.declaredClass == 'esri.geometry.Point') { map.centerAt(selectedFeature.geometry); } else { var featureExtent = selectedFeature.geometry.getExtent(); var screenpoint = map.toScreen(selectedFeature.geometry.getExtent().getCenter()); var mappoint = map.toMap(screenpoint); map.centerAt(mappoint); } }
Solved! Go to Solution.
function onRowClickHandler(evt) {
var clickedObjectf = grid.getItem(evt.rowIndex).OBJECTID;
var selectedObjectf;
var distance = 50;
dojo.forEach(map.graphics.graphics, function(graphicf) {
if ((graphicf.attributes) && graphicf.attributes.OBJECTID === clickedObjectf) {
selectedObjectf = graphicf;
return;
}
});
if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Point'){
var PointExtent = new esri.geometry.Extent({
"xmin" : selectedObjectf.geometry.x - distance,
"ymin" : selectedObjectf.geometry.y - distance,
"xmax" : selectedObjectf.geometry.x + distance,
"ymax" : selectedObjectf.geometry.y + distance,
"spatialReference" : {
"wkid" : 102100
}
});
map.setExtent(PointExtent);
}
else if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Polygon'){
var selectedParcel = selectedObjectf.geometry.getExtent();
map.setExtent(selectedParcel);
}
}
else if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Polyline'){
var selectedStreet = selectedObjectf.geometry.getExtent();
map.setExtent(selectedStreetl);
}
require(["...whatever else you are defining, "esri/geometry/Point", "esri/geometry/Polyline", "esri/geometry/Polygon",....end of your define"], function(....etc..., Point, Polyline, Polygon, ....etc..){
dojo.require("esri.geometry.Point");
dojo.require("esri.geometry.Polyline");
dojo.require("esri.geometry.Polygon");
findDistrictTask = new FindTask("http://summitgis.summitoh.net:6080/arcgis/rest/services/DOES/MapServer/"); map.on("load", function () { findDistrictParams = new FindParameters(); findDistrictParams.returnGeometry = true; findDistrictParams.layerIds = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; findDistrictParams.searchFields = ["NAME, UNAME, PUMPID, PIPEID, PlantID, Name"]; findDistrictParams.outSpatialReference = map.spatialReference; }); function doDoesDistrictFind() { findDistrictParams.searchText = dom.byId("doesDistrictText").value; findDistrictTask.execute(findDistrictParams, showResults); } function showResults(results) { if (results.length > 0) { map.graphics.clear(); var markerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_SQUARE, 10, new SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25])); var lineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 0, 0]), 1); var polygonSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_NONE, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.25])); var dataForGrid = []; arrayUtils.map(results, function (result) { var graphic = result.feature; dataForGrid.push([result.layerName, result.foundFieldName, result.value]); switch (graphic.geometry.type) { case "point": graphic.setSymbol(markerSymbol); break; case "polyline": graphic.setSymbol(lineSymbol); break; case "polygon": graphic.setSymbol(polygonSymbol); break; } map.graphics.add(graphic); return result.feature.attributes; }); var data = { items: dataForGrid }; var store = new ItemFileReadStore({ data: data }); var grid = registry.byId("grid"); grid.setStore(store); grid.on("rowclick", onRowClickHandler); map.centerAndZoom(center, zoom); } else { alert("No Utility Feature found! Please enter a valid UNAME, PIPEID, Plant ID, PUMPID or Name."); } } //end does district search function onRowClickHandler(evt) { var clickedObjectf = grid.getItem(evt.rowIndex).OBJECTID; var selectedObjectf; var distance = 50; dojo.forEach(map.graphics.graphics, function (graphicf) { if ((graphicf.attributes) && graphicf.attributes.OBJECTID === clickedObjectf) { selectedObjectf = graphicf; return; } }); if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Point') { var PointExtent = new esri.geometry.Extent({ "xmin": selectedObjectf.geometry.x - distance, "ymin": selectedObjectf.geometry.y - distance, "xmax": selectedObjectf.geometry.x + distance, "ymax": selectedObjectf.geometry.y + distance, "spatialReference": { "wkid": 102100 } }); map.setExtent(PointExtent); } else if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Polygon') { var selectedParcel = selectedObjectf.geometry.getExtent(); map.setExtent(selectedParcel); } }
var grid = registry.byId("grid");
function onRowClickHandler(evt) { var grid = registry.byId("grid"); var clickedObjectf = grid.getItem(evt.rowIndex).OBJECTID; var selectedObjectf; var distance = 50; dojo.forEach(map.graphics.graphics, function (graphicf) { if ((graphicf.attributes) && graphicf.attributes.OBJECTID === clickedObjectf) { selectedObjectf = graphicf; return; } }); if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Point') { var PointExtent = new esri.geometry.Extent({ "xmin": selectedObjectf.geometry.x - distance, "ymin": selectedObjectf.geometry.y - distance, "xmax": selectedObjectf.geometry.x + distance, "ymax": selectedObjectf.geometry.y + distance, "spatialReference": { "wkid": 102100 } }); map.setExtent(PointExtent); } else if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Polygon') { var selectedParcel = selectedObjectf.geometry.getExtent(); map.setExtent(selectedParcel); } }
function onRowClickHandler(evt) { var clickedTaxLotId = evt.grid.getItem(evt.rowIndex).PARCELID; var selectedTaxLot = arrayUtils.filter(map.graphics.graphics, function (graphic) { return ((graphic.attributes) && graphic.attributes.PARCELID === clickedTaxLotId); }); if ( selectedTaxLot.length ) { map.setExtent(selectedTaxLot[0].geometry.getExtent(), true); } }
function onRowClickHandler(evt) { var clickedTaxLotId = evt.grid.getItem(evt.rowIndex).PARCELID;
function onRowClickHandler(evt) { //var grid = registry.byId("grid"); var clickedObjectf = evt.grid.getItem(evt.rowIndex).OBJECTID;