| Programming with JViews Maps > Creating a Map Application Using the API > Using Data Sources > Layer Styling Considerations |
Layer Styling Considerations |
INDEX
PREVIOUS
NEXT
|
This section describes how to manage layer styles correctly.
To provide style inheritance (accessible in the Layer Tree Panel), the parent layer style must be a composite style, and you need to manage the style parenting on its own:
IlvMapStyle childStyle=layer.getStyle(); childStyle.setParent(parent.getStyle());
When the application uses dynamic styles, you need to access the style controller property of the manager:
IlvMapStyleController themeController = IlvMapStyleControllerProperty.GetMapStyleController(manager);
With the controller, you can decide on specific style settings for scale intervals. For example, to change the layer visibility:
themeController.addTheme(1/100000.0,source.getInsertionLayer(),"Visible"); themeController.getStyle(source.getInsertionLayer(),1/100000.0).setVisibleInView(true); themeController.getStyle(source.getInsertionLayer(),1/100000.0).setVisibleInOverview(false);
If you use multiple dynamic styles, you have to take care of style inheritance in a slightly more complex way because more than one style is used:
IlvMapDynamicStyle []t=themeController.getThemes(layer);
for (int i = 0; i < t.length; i++) {
t[i].getStyle().setParent(parent.getStyle());
}
Once this is done, you can apply the style you want to use for the current scale of the view:
themeController.updateTheme(view,layer);
Alternatively, you can setup the theme for all layers in one single call:
themeController.updateCurrentTheme();
| Copyright © 1987-2007 ILOG S.A. All rights reserved. Documentation homepage. Legal terms. | PREVIOUS NEXT |