<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2900.3020" name=GENERATOR></HEAD>
<BODY text=#000000 bgColor=#ffffff>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>Ok, now things are making sense.&nbsp; </FONT></SPAN><SPAN 
class=810231109-13022007><FONT face=Arial color=#0000ff size=2>You have a lot of 
themed layers, and it's taking a few seconds to refresh the legend.&nbsp; This 
is a full refresh of&nbsp;the legend, and it's&nbsp;done after applying the 
EMapTransaction if the map scale or map center has changed, which is the case 
when you pan / zoom.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>Although the data for the legend is only downloaded once at 
the beginning, the refreshing happens after each update.&nbsp;&nbsp; So there's 
no weirdness going on.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>I don't think there's any need to use Fiddler to look at 
the EMapTransaction.&nbsp; Based on what we now know I'm sure the 
EMapTransaction is small and is processed quickly (e.g. the case when you're 
zoomed in far).</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>To fix this it looks like DWF Viewer needs some 
optimization around updating the legend.&nbsp; E.g. only refresh it when the map 
scale crosses a scale threshhold that causes one or more layers&nbsp;to change 
its visibility.&nbsp; Until that happens, the only way to improve performance 
right now is to reduce the amount of information in your&nbsp;legend.&nbsp; 
Maybe you don't need to display themes for some of your 
layers?</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>I've&nbsp;entered&nbsp;a defect against DWF Viewer 
regarding this.&nbsp; In order to help us reproduce this problem, can you tell 
me approximately:</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>- how many of your layers are&nbsp;actually themed, and how 
many unthemed?</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>- how many themes per layer do you have, on 
average</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>- how many layer groups are you using?</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>I'll then include this information in the 
defect.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>Thanks,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=810231109-13022007><FONT face=Arial 
color=#0000ff size=2>Walt</FONT></SPAN></DIV><BR>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> mapguide-users-bounces@lists.osgeo.org 
[mailto:mapguide-users-bounces@lists.osgeo.org] <B>On Behalf Of </B>Joel 
Carranza<BR><B>Sent:</B> Monday, February 12, 2007 11:10 PM<BR><B>To:</B> 
MapGuide Users Mail List<BR><B>Subject:</B> Re: [mapguide-users] DWF Viewer 
progress bar?<BR></FONT><BR></DIV>
<DIV></DIV><TT>Walt, <BR><BR>1) I don't follow this question<BR>2) No attribute 
data is available. <BR>3) 67-50 map layers, all themed with varying levels of 
complexity (Most complex layer has 25 themes). Some are organized into groups, 
others are not. <BR>4) No custom processing, this is just our map "out of the 
box"<BR><BR>I am pretty confident that the problem here is the legend. If I turn 
off all layers in the legend and pan, it still takes 4 to 5 seconds (the 
progress bar hangs at around 50%) for the update to complete. I turned off 
legend visibility for each layer in my map, and now the map performance is 
significantly better (progress bar always just zips right through). Note that if 
i only turn off the Legend via the Layout, I still have bad performance. 
<BR><BR>Very weird, especially given that as you say, the legend is downloaded 
at the beginning. <BR><BR>I am going to try and use Fiddler to look at the DWF. 
I had no idea that would/might work. Will let you know how that goes. 
<BR><BR>Joel<BR><BR></TT>Walt Welton-Lair wrote: 
<BLOCKQUOTE 
cite=midA4F4647B12DBAD40B07041547CA25264072989@msgusaebk01.autodesk.com 
type="cite"><PRE wrap="">Joel,
 
This newsgroup is the right place to ask questions about DWF Viewer behavior in the context of MapGuide.
 
Regarding your DWF problem, it looks like about half the time is the server generating the update, the other half is downloading / processing of the update.  Some other questions I have:
 
- If you mouse down and pan or zoom, is the redraw performance ok?  If it's slow then that can contribute to the processing time for the update.  When graphic resources are processed the viewer does periodic redraws of the scene graph.
 
- Have you made any feature attributes available on your layers (so that selecting a feature will display the attributes in the property window)?  Attributes are separate resources in the EMapTransaction DWF.  While they're being processed the progress bar will not move, nor will you see any graphics updates.  You should only notice a pause though if you have a large number of features with attributes.  These also compress very well in the EMapTransaction.  So the progress bar will update only briefly, but then there's a lot of processing that might need to happen once it's uncompressed.
 
- How many layers are in your map?  Each visible layer that needs to be updated will add to the number of DWF resources in the update (one for primary graphics + tooltips / hyperlinks, another for any lables, and another for attributes).  Unless you have hundreds of layers I don't think this should be a problem.  In fact if all the resources are small then the progress bar should move relatively smoothly since each resource won't take long to process.
 
- Are you doing any custom server-side processing, like dynamically adding/removing/refreshing layers?  That will add to the information in the update.
 
- How many of your layers are point layers with labels?  Those add a fair amount of data in the labeling resource.
 
 
Other notes:
 
- Information in the legend is downloaded at the beginning, so that's not the problem.  The only other time legend info is downloaded is if you add a new layer.
 
- An easy way to test processing time per layer is to simply toggle each one off and then back on in the legend.  Only the resources for that one layer will be upated.  Maybe one of the layers will stand out...
 
- For the DWF Viewer API docs try first doing a quick search of the MapGuide newsgroups on Nabble - there's a number of threads where I've posted these.
 
- Another interesting thing to try is to capture one of te EMapTransaction updates in the server response.  I think Fiddler (<A class=moz-txt-link-freetext href="http://www.fiddlertool.com">http://www.fiddlertool.com</A>) might let you do this.  You can then open the DWF using a zip utility and see the individual resources.
 
Walt
 
-----Original Message----- 
From: <A class=moz-txt-link-abbreviated href="mailto:mapguide-users-bounces@lists.osgeo.org">mapguide-users-bounces@lists.osgeo.org</A> on behalf of Joel Carranza 
Sent: Mon 2/12/2007 8:44 PM 
To: MapGuide Users Mail List 
Cc: 
Subject: Re: [mapguide-users] DWF Viewer progress bar?



        Thank you for this information Walt, this is helpful. The problem that 
        we are seeing is that a typical map update may take anywhere between 
        approx 7-12 seconds.  Half of that time is spent w/ the hourglass 
        showing, and half of that time is being taken up with the progress bar 
        displaying (sometimes no progress shown, sometimes halfway through). 
        I've zoomed way in before, and had the map progress bar display almost 
        immediately, but I still have to wait maybe 4 or 5 seconds before the 
        update is complete. The number of map features we are talking about here 
        is less than 10. 

        So what could be soaking up so much CPU/Bandwidth? This isn't exactly a 
        lightweight machine (3.4 GHZ, 1GB of RAM, the server is on another 
        machine but within our local network). Could it be: 

        - stylization? all out objects are themed with various line style and 
        weights 
        - tooltips? Most of our map features have multi-line tooltips. 
        - the legend? All our layers are being displayed in the legend. When 
        does this information come down? 

        I'm taking stabs in the dark here. Any hints might be useful. 

        Is it possible to hook into the DWF Viewer API to look at processing 
        times on a per layer basic? 

        I can't seem to find the DWF Viewer API docs? Are these available on the 
        web? 

        Final question, i promise.... 

        Is this even the correct place to ask this question? I find myself 
        confused in regard to where I should post any given question, 
        considering the overlap between almost all the groups. 

        --Joel 

        Walt Welton-Lair wrote: 
        &gt; The progress bar measures the total download progress for the map 
        &gt; update.  Here's what happens in detail: 
        &gt; 
        &gt; 1/ the DWF Viewer requests a map update from the server 
        &gt;    =&gt; hourglass cursor is shown, but no progress bar yet 
        &gt; 
        &gt; 2/ the response from the server (an EMapTransaction DWF) begins 
        &gt; streaming in 
        &gt;    =&gt; the progress bar is turned on and starts updating 
        &gt; 
        &gt; 3/ the EMapTransaction is a compressed file containing a sequence of 
        &gt; resources: 
        &gt;    a descriptor, graphic resources (W2Ds), and object definition data 
        &gt; (attributes) 
        &gt;    =&gt; while a resource is being downloaded the progress bar updates 
        &gt;    =&gt; once a resource is fully downloaded it's immediately processed 
        &gt;       * the progress bar does not update during processing 
        &gt;       * depending on the size of the resource it may take some time 
        &gt;         to process it, e.g. a layer with dense graphical data 
        &gt;    =&gt; after the resource processing completes the next resource in the 
        &gt; server 
        &gt;       response is read 
        &gt;       * the progress bar updates some more 
        &gt; 
        &gt; As far as the dual progress indicators, those are used in the context of 
        &gt; multi-page EPlot and EModel DWFs.  One of the bars indicates the 
        &gt; progress for loading the current page, while the other indicates 
        &gt; progress for loading the entire DWF.  EMaps don't have multiple pages, 
        &gt; and so the two indicators always have the same position. 
        &gt; 
        &gt; Walt 
        &gt; 
        &gt; -----Original Message----- 
        &gt; From: <A class=moz-txt-link-abbreviated href="mailto:mapguide-users-bounces@lists.osgeo.org">mapguide-users-bounces@lists.osgeo.org</A> 
        &gt; [<A class=moz-txt-link-freetext href="mailto:mapguide-users-bounces@lists.osgeo.org">mailto:mapguide-users-bounces@lists.osgeo.org</A>] On Behalf Of Joel 
        &gt; Carranza 
        &gt; Sent: Tuesday, February 06, 2007 10:05 PM 
        &gt; To: MapGuide Users Mail List 
        &gt; Subject: [mapguide-users] DWF Viewer progress bar? 
        &gt; 
        &gt; Perhaps this is a silly question, but here is goes: 
        &gt; 
        &gt; Does anybody know exactly how the progress bar in the DWF operates? On 
        &gt; each map request, there seems to be three stages... 
        &gt; 
        &gt; 1) No progress bar (no significant CPU activity) 
        &gt; 2) Progress bar appears with very tiny amount of progress (CPU starts 
        &gt; working) 
        &gt; 3) Progress bar updating and map updating (CPU is working) 
        &gt; 
        &gt; There are actually two different progress bars (one on top of each 
        &gt; other) which are working in tandem with each other. Does anyone know 
        &gt; precisely how to interpret them? The Below URL explains for a 
        &gt; multi-sheet DWF. 
        &gt; 
        &gt; <A class=moz-txt-link-freetext href="http://dwf.blogs.com/beyond_the_paper/2006/09/dwf_progress_ba.html">http://dwf.blogs.com/beyond_the_paper/2006/09/dwf_progress_ba.html</A> 
        &gt; 
        &gt; How does one interpret them in the context of a DWF map? Specifically, 
        &gt; we are wondering about the pause at stage #2. Is that when the client 
        &gt; has started recieving data, recieved all data? Is the pause at stage #2 
        &gt; utterly insignificant? Anybody know? 
        &gt; 
        &gt; --joel 
        &gt; 
        &gt; 
        &gt; _______________________________________________ 
        &gt; mapguide-users mailing list 
        &gt; <A class=moz-txt-link-abbreviated href="mailto:mapguide-users@lists.osgeo.org">mapguide-users@lists.osgeo.org</A> 
        &gt; <A class=moz-txt-link-freetext href="http://lists.osgeo.org/mailman/listinfo/mapguide-users">http://lists.osgeo.org/mailman/listinfo/mapguide-users</A> 
        &gt; 
        &gt; _______________________________________________ 
        &gt; mapguide-users mailing list 
        &gt; <A class=moz-txt-link-abbreviated href="mailto:mapguide-users@lists.osgeo.org">mapguide-users@lists.osgeo.org</A> 
        &gt; <A class=moz-txt-link-freetext href="http://lists.osgeo.org/mailman/listinfo/mapguide-users">http://lists.osgeo.org/mailman/listinfo/mapguide-users</A> 
        &gt; 
        &gt; 
        &gt; 
        &gt; 
        &gt;   

        _______________________________________________ 
        mapguide-users mailing list 
        <A class=moz-txt-link-abbreviated href="mailto:mapguide-users@lists.osgeo.org">mapguide-users@lists.osgeo.org</A> 
        <A class=moz-txt-link-freetext href="http://lists.osgeo.org/mailman/listinfo/mapguide-users">http://lists.osgeo.org/mailman/listinfo/mapguide-users</A> 

  </PRE><PRE wrap=""><HR width="90%" SIZE=4>
_______________________________________________
mapguide-users mailing list
<A class=moz-txt-link-abbreviated href="mailto:mapguide-users@lists.osgeo.org">mapguide-users@lists.osgeo.org</A>
<A class=moz-txt-link-freetext href="http://lists.osgeo.org/mailman/listinfo/mapguide-users">http://lists.osgeo.org/mailman/listinfo/mapguide-users</A>
  </PRE></BLOCKQUOTE></BODY></HTML>