Opened 12 years ago

Closed 12 years ago

#2096 closed defect (fixed)

mg-desktop: Improve MgLegend performance

Reported by: jng Owned by: jng
Priority: high Milestone: 2.4
Component: Desktop API Version:
Severity: major Keywords:
Cc: External ID:

Description (last modified by jng)

The MgLegend component does not currently handle large maps very well (with 100s of layers). This is because of primarily 2 things:

  1. We are excessively doing work on the GUI thread, which is a bad thing for large maps.
  2. We are also not caching layer icons

We should re-use the existing tree/legend modelling, initialization and updating logic from the .net AJAX viewer.

Change History (3)

comment:1 by jng, 12 years ago

Description: modified (diff)

comment:2 by jng, 12 years ago

The caching of layer icons has changed the behaviour somewhat. A layer that has multiple scale ranges will always have the icon for the first scale range. Moving to a scale that's in a different scale range does not update this icon.

Our Layer Metadata needs to cache icons for all applicable scale ranges and the node rendering needs to fetch the appropriate icon based on the current view scale.

comment:3 by jng, 12 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.