GPResultImageLayer 无法显示的问题

arcgis api for silverlight v2.2

本人发布了一个GP,参数如下

GPRasterDataLayer应该如何在silverlight里显示呢,会用到GPResultImageLayer,把这个类添加到Map里就行了

可是,实际做起来,这个GPResultImageLayer显示不出来。网上也有类似的问题:

http://forums.arcgis.com/threads/22613-GPResultImageLayer-No-Image?highlight=GPResultImageLayer

这个网页提示用Fiddler Web Debbug,我照做了。

结果发现,当调用geoprocessorTask.GetResultImageLayerAsync(e.JobInfo.JobId, "output");方法时,会向这个网址请求资源:

http://thomas-pc/ArcGIS/rest/services/rasterGP2/GPServer/add/jobs/j871b8c2a6f724f378df324ce8171448c/results/output?f=json&

在浏览器中输入该网址得到:

{"paramName":"output","dataType":"GPRasterDataLayer","value":{"mapImage":{"href":"http://thomas-pc/arcgisoutput/_ags_mapf93910af2c164f5fa43f1e9e2f5f1470.png","width":400,"height":400,"extent":{"xmin":454472.317920409,"ymin":3625767.25921162,"xmax":565352.317920409,"ymax":3736647.25921162,"spatialReference":{"wkt":"PROJCS[\"Krasovsky_1940_Transverse_Mercator\",GEOGCS[\"GCS_Krasovsky_1940\",DATUM[\"D_Krasovsky_1940\",SPHEROID[\"Krasovsky_1940\",6378245.0,298.3]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",500000.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",105.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]"}},"scale":1047682.944}}}

上述红色部分表明,只能得到一张400*400的图片,用一张图片又怎么能够构成一个Layer呢?地图要放大,要缩小,一张图片,恐怕远远不够吧。

愚以为,silverlight api有点问题。不过还是可以再试试REST API,至少通过以下地址就能得到处理结果的图片,就是小了点,还不能移动。

http://thomas-pc/ArcGIS/rest/services/rasterGP2/GPServer/add/jobs/j871b8c2a6f724f378df324ce8171448c/results/output?f=image

posted on 2011-07-26 16:50  更好的人  阅读(706)  评论(0编辑  收藏  举报

导航