Thanks, Don
I don't think we are able to use the ScaleFilterLayer, we use the MapBean embedded in another application and set all the layer properties through the API. The 2 layers are already created and there is no method in the ScaleFilterLayer to tell it what other layers to switch between; it has to know the String identifier of the layer which is set in the properties file, which we do not use.
It does also appear that the reference coverage above 1:30,000,000 does not work automatically, unless there is something else missing in my properties. Our main VPFLayer has the following properties, it works perfectly under 1:30,000,000 but otherwise you get nothing.
layerProps.put("vpfPath", "C:/VMAP/V0EUR_5/VMAPLV0;C:/VMAP/V0NOA_5/VMAPLV0;C:/VMAP/V0SAS_5/VMAPLV0;C:/VMAP/V0SOA_5/VMAPLV0");
layerProps.put("prettyName","NIMA Vector Smart Map (VMAP)");
layerProps.put("coverageType","bnd");
layerProps.put("featureTypes", "edge area");
layerProps.put("area", "polbnda");
layerProps.put("edge","polbndl coastl");
layerProps.put("searchByFeature", "true");
layerProps.put("lineColor", Integer.toHexString(
getColor("map.politicalColor", BOUNDARY).getRGB()));
layerProps.put("fillColor", Integer.toHexString(
getColor("map.landColor", LAND).getRGB()));
layerProps.put("coastl.lineColor", Integer.toHexString(
getColor("map.coastColor", BOUNDARY).getRGB()));
mainLayer.setProperties(layerProps);
However, this is not a problem. I created another layer for the overview coverage, I wrote my own code for switching based on scale. That part seems to work fine. My latest (and hopefully last) issue is that I can't get an edge on the overview layer, only a fill. I'm not sure what magic strings to use in the properties, DescribeDB does not list any features for reference, only coverage types:
rference:
rference:uses untiled data
rference:Coverage names:placenam polbnd dbref libref
rference:placenam:Coverage Description: Place Names
rference:placenam:Coverage Topology Level: 0
rference:placenam:FeatureClassNames:
rference:polbnd:Coverage Description: Political Entitie
rference:polbnd:Coverage Topology Level: 3
rference:polbnd:FeatureClassNames:
rference:dbref:Coverage Description: Database Reference
rference:dbref:Coverage Topology Level: 3
rference:dbref:FeatureClassNames:
rference:libref:Coverage Description: Library Reference
rference:libref:Coverage Topology Level: 2
rference:libref:FeatureClassNames:
Below are my current properties for the overview layer
layerProps.put("vpfPath", "C:/VMAP/V0EUR_5/VMAPLV0;C:/VMAP/V0NOA_5/VMAPLV0;C:/VMAP/V0SAS_5/VMAPLV0;C:/VMAP/V0SOA_5/VMAPLV0");
layerProps.put("prettyName","NIMA Vector Smart Map (VMAP) Reference");
layerProps.put("coverageType","polbnd");
layerProps.put("featureTypes", "edge area");
layerProps.put("area", "polbnda");
layerProps.put("edge","polbnd polbndl polbnda bnd bnda bndl coastl coast coasta"); <== I was trying everyting I could think of here
layerProps.put("searchByFeature", "true");
layerProps.put("lineColor", Integer.toHexString(
getColor("map.politicalColor", BOUNDARY).getRGB()));
layerProps.put("fillColor", Integer.toHexString(
getColor("map.landColor", LAND).getRGB()));
Is there another secret I need to know about to get the edges for my overview layer?
Thanks!
Todd
-----
Todd A Webb <twebb@titan.com>
The Titan Corporation
3033 Science Park Road
San Diego, CA 92121
-----Original Message-----
From: Don Dietrick [mailto:dietrick@bbn.com]
Sent: Thursday, October 16, 2003 2:07 PM
To: Webb, Todd
Cc: Dao, Hien-Trinh; openmap-users@bbn.com
Subject: Re: [OpenMap Users] More trouble with VPFLayer and VMAP L0
Hi Todd,
On Wednesday, October 15, 2003, at 08:01 PM, Webb, Todd wrote:
> Ok, I'm getting a little further with VMAP ... setting colors for
> specific features
>
> vmapHydro.depthl.lineColor=FF00000
> vmapHydro.watrcrsl.lineColor=FF00FF00
>
> works great, as long as vmapHydro.searchByFeature=true is set. Thank
> you.
>
> Also, I now understand that most of these coverages, including
> boundaries, elevation, hydrology are only displayed when the scale is
> 1:30,000,000 or tighter. So I could see the "bnd" coverage on startup
> because our application starts with a view of the whole world.
>
> Now if I want continuous coverage through ALL scales, I am assuming I
> need to use both the reference polbnd and bnd coverages. Is there a
> way to specify this to the VPFLayer, or do I need to create 1 VPFLayer
> for scales larger than 1:30,000,000 and 1 VPFLayer for scales smaller
> than 1:30,000,000 and have my own logic to switch layers when the
> scale crosses the threshhold?
The ScaleFilterLayer switches between layers around scales. You just
have to configure the ScaleFilterLayers and the VPFLayers in the
properties file.
The VPFLayer used to automatically switch to reference data above
1:30,000,000, but I'm not sure if it still does. I know the logic is
there, but something might have broken it. You can also use a thinner
shape file for the smaller scales and switch to VPF at the larger
scales.
- Don
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Don Dietrick, BBN Technologies, dietrick@bbn.com
10 Moulton Street, Cambridge, MA 02138
617-873-3031 [fax]-2794
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
-- [To unsubscribe to this list send an email to "majdart@bbn.com" with the following text in the BODY of the message "unsubscribe openmap-users"]Received on Tue Oct 21 17:37:01 2003
This archive was generated by hypermail 2.1.8 : Thu May 12 2005 - 07:18:36 EDT