ArcGISLocalDynamicMapServiceLayer PanBuffer?

3553
14
08-02-2012 03:42 AM
Labels (1)
JamesMcElroy
New Contributor
The PanBuffer property in the Beta allowed for smooth panning around a dynamic map layer (ie. no or little white space while waiting for refresh).  While you can still find this in the online documentation here, it appears to have been removed for the release version.

So my question is this, how can I get my map object to pan in a smoother fashion without having constant white space while it's waiting to load and refresh?

Thanks,

James
0 Kudos
14 Replies
MichaelBranscomb
Esri Frequent Contributor
Hi,

We decided that the PanBuffer behavior was inconsistent with other the dynamic service layer types in the API (and with dynamic layer behavior in the other Runtime SDKs) and therefore removed the property prior to the final release. It seems there are however orphaned PanBuffer API reference topics which appear when searching for that term. Thank you for bringing this to our attention and I apologize for any confusion this has caused.

Your basemap layers if implemented as tiled layers (represented by the ArcGISTiledMapServiceLayer and ArcGISLocalTiledLayer classes) should always provide a near-seamless panning experience. Dynamic layers will always be drawn on demand based on the requested map extent (the PanBuffer was simply just requesting a larger extent than the current map window).

Cheers

Mike
0 Kudos
JamesMcElroy
New Contributor
Hi Mike,

Thanks for the response.  So the answer is no on the alternative method then?  Is there no way to manually request a larger extent than the control size?

On a related note, is there a way to enable some sort of caching on the client control side?  It seems odd that if I pan to the left and then immediately back to the right that I have to wait for the place I was just on to load again.  Of course this is in respect to the dynamic map packs.

Thanks,

James
0 Kudos
IanBates
New Contributor II
Hi

I just found the following in an old post. We have an identical request from a client - they would like ArcGISLocalDynamicMapService layer to have a pan buffer for smooth panning. Is there any workaround in the current version (10.2) of the WPF runtime?

Thanks for the response.  So the answer is no on the alternative method then?  Is there no way to manually request a larger extent than the control size?


Thanks

Ian
0 Kudos
MichaelBranscomb
Esri Frequent Contributor
Hi,

There is currently no direct option in the API for requesting an extent larger than the map from an ArcGISDynamicMapServiceLayer and preventing requests until the Map extent nears this larger envelope. Ideally you would use an ArcGISTiledMapServiceLayer or an ArcGISLocalTiledLayer to meet this requirement.

However, I am investigating possible solutions based on the DynamicMapServiceLayer / DynamicLayer and will update this thread as soon as i have more information.

Cheers

Mike
0 Kudos
IanBates
New Contributor II
There is currently no direct option in the API for requesting an extent larger than the map from an ArcGISDynamicMapServiceLayer and preventing requests until the Map extent nears this larger envelope. Ideally you would use an ArcGISTiledMapServiceLayer or an ArcGISLocalTiledLayer to meet this requirement.

However, I am investigating possible solutions based on the DynamicMapServiceLayer / DynamicLayer and will update this thread as soon as i have more information.


Back in March I got a reply suggesting that you would investigate some possible solutions for smooth panning of dynamic map services based on the DynamicMapServiceLayer / DynamicLayer. I would appreciate any suggestions of how this could be achieved. This is currently a show stopper for our product. Our client demands this functionality.

If you are able to suggest some other workaround - we would be grateful. Or if this can be achieved via an upgrade path to a new esri product - we need some kind of response for our client.

Thanks

Ian
0 Kudos
MatthewPilgrim
New Contributor III
Mike, any updates - this issue is killing a potential product!

We need smooth panning of dynamic data in an offline WPF application. We would even consider moving to the .net api if this was included in the beta...

Thanks, Matt
0 Kudos
MichaelBranscomb
Esri Frequent Contributor
Hi,

Apologies for the delay. The support guys will be in touch with the same info... One of the developers put together a sample demonstrating how you could implement the behaviour you are looking for by deriving from DynamicLayer (attached).

As previously discussed on this thread, the layers which are specifically designed to provide a seamless panning experience are the ArcGISTiledMapServiceLayer and ArcGISLocalTiledLayer, therefore ideally you would be able to use one of those, or perhaps consider using a FeatureLayer for some of the more dynamic data if necessary (depending volume of data, geometry type, etc).

Cheers

Mike
0 Kudos
IanBates
New Contributor II

Hi,

Thanks for the sample and sorry it has taken a while to get around to using it.

We encountered two issues with using the sample so far:

1. We cannot use the BufferedArcGISDynamicMapServiceLayer class in a Map where Accelerated Display layers is enabled (it throws an exception on intialization) This is a major issue for us as we encountered differences in behavior with Feature Editing using the EditorWidget when Accelerated Display Layers are disabled. Is there a workaround so that we can use the class in a map with Accelerated Display layers?

2. The class ignores the current TimeExtent information on the host Map. Our application uses TimeExtent information - so the BufferedArcGISDynamicMapServiceLayer needs to be time aware - can you suggest a way of implementing this? I took a look at esri help resources at this is not obvious.

Regards

Ian

0 Kudos
MichaelBranscomb
Esri Frequent Contributor

Hi,

Unfortunately it is not possible to make the modification for the accelerated display mode.

This leave two options:

1. Use an ArcGISLocalTiledLayer (as suggested previously - but I cannot recall why this is not a viable option in your solution). They can take some time to generate and do take up more space on disk but the performance benefits typically far outweigh these downsides.

2. Try the new .NET SDK beta which should handle these frequent pan requests more gracefully (but still will not generate a larger dynamic layer image extent than the extent of the map). Again in this case we advise using an ArcGISLocalTiledLayer for a seamless panning experience.

We are aware of the drawbacks of Tile Packages and on the longer term roadmap for the new .NET SDK we are looking at introducing vector basemaps which will combine seamless panning and richer dynamic rendering with a smaller disk footprint and reduced generation time.

Cheers

Mike

0 Kudos