Solved! Go to Solution.
documents.queryRelatedFeatures(queryRecPoint, function (relatedRecords) { fset = relatedRecords[fsetObjectIDArrayPoint[0]]; params = new esri.tasks.ProjectParameters(); params.geometries = array.map(fset.features, function (aFeature) { return aFeature.geometry; }); params.outSR = map.spatialReference; //gsvc is my geometry service gsvc.project(params, function (geoms) { gsvc.intersect(geoms, firstGraphic.geometry, function (intGeoms) { var symbol = new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_CIRCLE, 10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([0, 200, 200]), 1), new dojo.Color([0, 0, 200, 0.25])); array.forEach(intGeoms, function (aGeom) { var intersectGraphic = new esri.Graphic(aGeom, symbol, null, infoTemplate); map.graphics.add(intersectGraphic); }); }); }); });
queryTask = new QueryTask(...url to your service...) query = new Query(); query.geometry = feature.geometry; query.spatialRelationship = Query.SPATIAL_REL_INTERSECTS; query.returnGeometry = true; query.outFields = ["myField", "myOtherField"]; ...etc with the other query parameters... queryTask.execute(query);
myRelationshipQuery.spatialRelationship = esri.tasks.Query.SPATIAL_REL_INTERSECTS;
documents.queryRelatedFeatures(queryRecPoint, function(relatedRecords) { fset = relatedRecords[fsetObjectIDArrayPoint[0]]; for(var i=0, il = fset.features.length; i < il; i++){ thirdGraphics = fset.features; params = new esri.tasks.ProjectParameters(); params.geometries = [thirdGraphics.geometry]; params.outSR = map.spatialReference; //gsvc is my geometry service gsvc.project(params, function(features){ newPoints = features[0]; projectedGraphicPoint = new esri.Graphic(newPoints); }); gsvc.intersect([projectedGraphicPoint.geometry], firstGraphic.geometry, function(intFeature){ var symbol = new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_CIRCLE, 10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([0,200,200]), 1), new dojo.Color([0,0,200,0.25])); var intersectGraphic = new esri.Graphic(intFeature); intersectGraphic.setSymbol(symbol); intersectGraphic.setInfoTemplate(infoTemplate); map.graphics.add(intersectGraphic); }); });
documents.queryRelatedFeatures(queryRecPoint, function (relatedRecords) { fset = relatedRecords[fsetObjectIDArrayPoint[0]]; params = new esri.tasks.ProjectParameters(); params.geometries = array.map(fset.features, function (aFeature) { return aFeature.geometry; }); params.outSR = map.spatialReference; //gsvc is my geometry service gsvc.project(params, function (geoms) { gsvc.intersect(geoms, firstGraphic.geometry, function (intGeoms) { var symbol = new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_CIRCLE, 10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([0, 200, 200]), 1), new dojo.Color([0, 0, 200, 0.25])); array.forEach(intGeoms, function (aGeom) { var intersectGraphic = new esri.Graphic(aGeom, symbol, null, infoTemplate); map.graphics.add(intersectGraphic); }); }); }); });