If anyone cares and for sake of posterity, I have this working on a rudimentary level. I still need to format the output, but I am getting pixels values. What I had to do is set up a Mosaic Dataset in a geodatabase. In my case I added two rasters that overlay each other. I then set up a Image Service in ArcGIS Server 10 that published the Mosaic Dataset. I used all the defaults, except the option of "Allowed compression methods", I unchecked JPEG. And used the code below. DISCLAIMER: Don't use this for displaying overlaying rasters. I would stick with publishing individual Raster Datasets.<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:esri="http://www.esri.com/2008/ags" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx:Script> <![CDATA[ import com.esri.ags.events.ImageServiceIdentifyEvent; import com.esri.ags.events.MapMouseEvent; import com.esri.ags.geometry.Geometry; import com.esri.ags.tasks.supportClasses.ImageServiceIdentifyParameters; import com.esri.ags.tasks.supportClasses.ImageServiceIdentifyResult; import mx.controls.Label; import mx.controls.Text; import mx.core.IUIComponent; import mx.rpc.AsyncResponder; private function onMapClick(event:MapMouseEvent):void { imgIdentifyTask.url = "http://yourservername/ArcGIS/rest/services/FlexDev/lf_mosaic/ImageServer"; var IDParams:ImageServiceIdentifyParameters = new ImageServiceIdentifyParameters(); IDParams.geometry = event.mapPoint; imgIdentifyTask.execute(IDParams); } private function imgExecuteComplete(event:ImageServiceIdentifyEvent):void { var pixelValue:Array = event.identifyResult.properties.Values as Array; idImageLabel.text = pixelValue.toString(); } ]]> </fx:Script> <fx:Declarations> <esri:ImageServiceIdentifyTask id="imgIdentifyTask" executeComplete="imgExecuteComplete(event)"/> </fx:Declarations> <esri:Map id="myMap" extent="{new Extent(-10955781, 4374995, -8825382, 5549067)}" openHandCursorVisible="false" mapClick="onMapClick(event)"> <esri:ArcGISTiledMapServiceLayer url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"/> <esri:ArcGISImageServiceLayer url="http://yourservername/ArcGIS/rest/services/FlexDev/lf_mosaic/ImageServer"/> </esri:Map> <s:HGroup x="80" y="50" width="150" color="#245EEE"> <s:Label id="idImageLabel" text="PIXEL VALUES FROM CLICK" fontWeight="bold" fontSize="24" color="#000000"/> </s:HGroup> </s:Application>
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:esri="http://www.esri.com/2008/ags" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx:Script> <![CDATA[ import com.esri.ags.events.ImageServiceIdentifyEvent; import com.esri.ags.events.MapMouseEvent; import com.esri.ags.geometry.Geometry; import com.esri.ags.tasks.supportClasses.ImageServiceIdentifyParameters; import com.esri.ags.tasks.supportClasses.ImageServiceIdentifyResult; import mx.controls.Label; import mx.controls.Text; import mx.core.IUIComponent; import mx.rpc.AsyncResponder; private function onMapClick(event:MapMouseEvent):void { imgIdentifyTask.url = "http://yourservername/ArcGIS/rest/services/FlexDev/lf_mosaic/ImageServer"; var IDParams:ImageServiceIdentifyParameters = new ImageServiceIdentifyParameters(); IDParams.geometry = event.mapPoint; imgIdentifyTask.execute(IDParams); } private function imgExecuteComplete(event:ImageServiceIdentifyEvent):void { var pixelValue:Array = event.identifyResult.properties.Values as Array; idImageLabel.text = pixelValue.toString(); } ]]> </fx:Script> <fx:Declarations> <esri:ImageServiceIdentifyTask id="imgIdentifyTask" executeComplete="imgExecuteComplete(event)"/> </fx:Declarations> <esri:Map id="myMap" extent="{new Extent(-10955781, 4374995, -8825382, 5549067)}" openHandCursorVisible="false" mapClick="onMapClick(event)"> <esri:ArcGISTiledMapServiceLayer url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"/> <esri:ArcGISImageServiceLayer url="http://yourservername/ArcGIS/rest/services/FlexDev/lf_mosaic/ImageServer"/> </esri:Map> <s:HGroup x="80" y="50" width="150" color="#245EEE"> <s:Label id="idImageLabel" text="PIXEL VALUES FROM CLICK" fontWeight="bold" fontSize="24" color="#000000"/> </s:HGroup> </s:Application>
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:esri="http://www.esri.com/2008/ags"> <fx:Script> <![CDATA[ import com.esri.ags.events.ImageServiceIdentifyEvent; import com.esri.ags.events.MapMouseEvent; import com.esri.ags.geometry.Geometry; import com.esri.ags.tasks.supportClasses.ImageServiceIdentifyParameters; import com.esri.ags.tasks.supportClasses.ImageServiceIdentifyResult; import mx.controls.Text; import mx.rpc.AsyncResponder; private function onMapClick(event:MapMouseEvent):void { imgIdentifyTask.url = "http://myservername/ArcGIS/rest/services/test4/ImageServer"; var IDParams:ImageServiceIdentifyParameters = new ImageServiceIdentifyParameters(); IDParams.geometry = event.mapPoint; imgIdentifyTask.execute(IDParams); } private function imgExecuteComplete(event:ImageServiceIdentifyEvent):void { var pixelValue:Label = event.identifyResult.value as Label idImageLabel.addChild(pixelValue); } ]]> </fx:Script> <fx:Declarations> <esri:ImageServiceIdentifyTask id="imgIdentifyTask" executeComplete="imgExecuteComplete(event)"/> </fx:Declarations> <esri:Map id="myMap" extent="{new Extent(-10955781, 4374995, -8825382, 5549067)}" mapClick="onMapClick(event)" openHandCursorVisible="false"> <esri:ArcGISTiledMapServiceLayer url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"/> <esri:ArcGISImageServiceLayer url="http://myservername/ArcGIS/rest/services/test4/ImageServer"/> </esri:Map> <s:Label id="idImageLabel" text="{}" x="80" y="50" width="150"/> </s:Application>
Aangemelde leden kunnen berichten plaatsen, updates volgen en meer. Nieuw hier? Registreer een gratis account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.