01-13-2017 07:17 AM
We have a wesite that uses GeoMedia WebMap to render underground asset data over to the top of Ordnance Survey MasterMap information. To improve performance and legibility of the legend I am trying to use GeoMedia's DisplayScale functionality (right-click feature, Display Scale Range...) so that some MasterMap features aren't displayed when the DisplayScale of the end-map is above 1:2500, this function works perfectly fine for those features but not features read in from a GeoMedia Smartstore.
Any of these features with this DisplayScale limitation are not adhering to the display rule. The GMW logs don't even show this display rule being identified. When viewing the legend in GeoMedia Dekstop it's working correctly, just not when interfacing with WebMap.
I have tried all of the following:
Create new Library based on existing Library and updating legend in new library
Creating new library based on default library template and adding only the updated legend to avoid any versioning
Is there a known issue (and I just can't find anything online) for SmartStore features not adhering to any displayscale rules?
This is a problem (for us) on the following WebMap versions:
06.01.03.08 (aware this is VERY old)
Neither version appears to abide by the rules.
Hopefully you can help before I pull all my hair out.
Solved! Go to Solution.
01-13-2017 07:30 AM
Welcome to the community!
Have you checked the metadata/service source table LEGENDENTRIES to validate:
The legend entries have the correct values in MINIMUMSCALE and MAXIMUMSCALE, also confirm that DISPLAYMODE is set to 3 (Display by Scale).
To get the name of legend entry look in WPLEGENDENTRIES.LAYERNAME where WPLEGENDENTRIES.ID = LEGENDENTRIES.NAME.
Are the legend entries contained in a Group on the GeoMedia Desktop legend - is the group set to display by scale as well?
Also check its DISPLAYMODE in the metadata/service source?
01-16-2017 06:17 AM - edited 01-16-2017 06:17 AM
Thanks for the swift reply, genuinely wasn't expecting anything after previous attempts for community help on other issues (not GeoMedia related).
I've checked all the things you've highlighted and can confirm that the relevant legend entry has a MinimumScale of 1, a MaximumScale of 2500 and a DisplayMode of 3.
None of our features are part of any grouping structure so no grouping scale.
The OSTOPO data that is read in from an Oracle connection correctly switches off at the desired maximum scale, but I can't get any of the Smartstore-fed information to do the same. I've tried removing the entry and re-adding it as well as all of the above.
01-16-2017 07:49 AM
The GWMLog you attached is truly fascinating. I can see already that you are using WebMap API in your solution
From what I can gather, only 5 of the legend entries in this flow have the display mode set to "display by scale range", with two of them actually failing the scale range test. All 5 of them seem to come from an Oracle connection, though, and the SmartStore connection ones don't seem to have the appropriate display mode set.
Can you shed some light on how you construct the legend in your solution? Could you paste some code snippets, perhaps?
What worries me is the fact, that the legend looks like it contains 40 legend entries in this case, while between the Gro->RefreshRect there are only 13 mentions of DisplayScale retrieval.
01-17-2017 05:42 AM
Thanks for all your help, it appears that our culprit is actually a piece of code that prevents anything defined as a foreground asset - which is essentially everything in our SmartStore from being set to any DisplayMode than "on".
Once again, thanks for your help and time.