POST
|
I tried doing as suggested here. However I get an exception thrown in the Runtime.NativeLayer constructor saying "Value not in the expected range". I tried cloning all the public properties of TiledLayer from a ArcGISLocalTiledLayer into my custom TiledLayer derivative, but it didn't make a difference. It seems that the accelerated layer handlers in the 10.1 Runtime SDK don't like custom TiledLayer derivatives and expect one of the ESRI classes. I tried deriving from ArcGISLocalTiledLayer and replacing some funcitonality. This got rid of the above mentioned exception, but I couln't get it to request tiles from the layer.
... View more
12-12-2012
06:49 AM
|
0
|
0
|
294
|
POST
|
I have a custom TiledLayer that works fine when not accelerated, but in an accelerated map or in the accelerated layers group, I get an exception. It seems to happen before it ever requests the first tile from the layer, during some sort of initialization process when first rendering the map. Does anyone at ESRI know what could be wrong with my TiledLayer's properties? I compared my TileInfo to a TileInfo of an ArcGISLocalTiledLayer that works in accelerated mode, and the TileInfo, including LODs, and spatial reference, etc.. are the same as far as I can see. The FullExtent of my layer is the entire web mercator world, although I have tried limiting it to a smaller range of coordinates and that does not help. Here is the stack trace that I get: [System.ArgumentException] "Value does not fall within the expected range." at ESRI.ArcGIS.Client.Runtime.NativeTileLayer..ctor(TiledLayer owner, RequestQueue queue) at ESRI.ArcGIS.Client.Runtime.NativeLayer.Create(Layer layer, RequestQueue queue) at ESRI.ArcGIS.Client.NativeMap.AddLayer(Int32 index, Layer layer) at ESRI.ArcGIS.Client.DrawingSurface.AddLayer(Int32 index, Layer layer) at ESRI.ArcGIS.Client.AcceleratedDisplayLayers.TryAddLayerToDrawSurface(Layer layer, Int32 index) at ESRI.ArcGIS.Client.AcceleratedDisplayLayers.Draw(Envelope extent, Double resolution, MapPoint canvasOrigin, Boolean useTransitions, Boolean isContinuous) at ESRI.ArcGIS.Client.Map.loadLayerInView(Boolean useTransitions, Envelope drawExtent, Layer layer, Boolean isContinuous, Double scale) at ESRI.ArcGIS.Client.Map.loadLayersInView(Boolean useTransitions, Envelope drawExtent) at ESRI.ArcGIS.Client.Map.Layers_LayersInitialized(Object sender, EventArgs args) at ESRI.ArcGIS.Client.Map.<>c__DisplayClass10.<Layers_LayersInitialized>b__e()
... View more
12-11-2012
12:15 PM
|
0
|
0
|
430
|
POST
|
For now I'm using a work around where I encode the image source to a stream, and then load it as a BitmapImage, which PictureMarkerSymbol is happy to use as its Source.
... View more
12-06-2012
09:13 AM
|
0
|
0
|
764
|
POST
|
I've narrowed it down to the exception occurring if the ImageSource is a BitmapSource which is a CachedBitmap. It works fine if the ImageSource is a BitmapSource which is a BitmapImage.
... View more
12-06-2012
07:38 AM
|
0
|
0
|
764
|
POST
|
PictureMarkerSymbol takes an ImageSource as its Source property. When I create a PictureMarkerSymbol using a valid BitmapSource, which is a descendent of ImageSource, I get a TargetInvocationExeption. The InnerException is as follows: InnerException: System.NotSupportedException Message=Specified method is not supported. Source=ESRI.ArcGIS.Client StackTrace: at ESRI.ArcGIS.Client.Symbols.PictureMarkerSymbol.ToJsonInternal(Action jsonReady, Boolean& dataPending, Boolean nativeMapSerialization) at ESRI.ArcGIS.Client.Symbols.PictureMarkerSymbol.ESRI.ArcGIS.Client.IJsonSerializableAsync.ToJson(Action jsonReady, Boolean& dataPending) at ESRI.ArcGIS.Client.JsonSerializableExtensions.SerializeToJson(Object o, Action jsonReady, Boolean& dataPending) at ESRI.ArcGIS.Client.Runtime.NativeGraphicsLayer.GetSymbolJson(Graphic graphic, Action jsonReady, Boolean& dataPending) at ESRI.ArcGIS.Client.Runtime.NativeGraphicsLayer.AddGraphic(Graphic graphic, Geometry displayGeometry) at ESRI.ArcGIS.Client.Runtime.NativeGraphicsLayer.AddGraphics() at ESRI.ArcGIS.Client.Runtime.NativeGraphicsLayer.Initialize() at ESRI.ArcGIS.Client.NativeMap.AddLayer(Int32 index, Layer layer) at ESRI.ArcGIS.Client.DrawingSurface.AddLayer(Int32 index, Layer layer) at ESRI.ArcGIS.Client.AcceleratedDisplayLayers.TryAddLayerToDrawSurface(Layer layer, Int32 index) at ESRI.ArcGIS.Client.AcceleratedDisplayLayers.Draw(Envelope extent, Double resolution, MapPoint canvasOrigin, Boolean useTransitions, Boolean isContinuous) at ESRI.ArcGIS.Client.Map.loadLayerInView(Boolean useTransitions, Envelope drawExtent, Layer layer, Boolean isContinuous, Double scale) at ESRI.ArcGIS.Client.Map.loadLayersInView(Boolean useTransitions, Envelope drawExtent) at ESRI.ArcGIS.Client.Map.Layers_LayersInitialized(Object sender, EventArgs args) at ESRI.ArcGIS.Client.Map.<>c__DisplayClass10.<Layers_LayersInitialized>b__e() InnerException: Is PictureMarkerSymbol depending on ImageSource being a BitmapFrameDecoded? I forgot to mention that this is in the WPF Runtime SDK 1.0.
... View more
12-06-2012
07:28 AM
|
0
|
2
|
3019
|
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:24 AM
|