Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix GeoPackage support implementation. #243

Open
wants to merge 12 commits into
base: develop
Choose a base branch
from

Conversation

ComBatVision
Copy link

Description of the Change

Basic GeoPackage implementation does not support level sets started not in -90, -180 coordinates, but according standard any external system exports GeoPackage files with the tile origin equals south west corner of visible tile set.

That's why GeoPackage requires following improvements:

  • Add support of local tile origin based on tile matrix set extent instead of full sphere origin.
  • Add surface image name based on content identifier.
  • Change level set sector initialization based on tile matrix set extent instead of content extent.
  • Change first level tile delta and number of levels calculation based on tile matrix zoom levels.
  • Fix row calculation in tile factory.

General API requires following improvements:

  • Add tile origin attribute to level set.
  • Enhance tile row and column calculation routines with tile origin parameter.
  • Fix level width and height calculation in case of non-full sphere level set sector used.

This PR is based on Mercator PR #242 due to this fix also related to MercatorTile calculations.

Why Should This Be In Core?

Support of GeoPackage files exported from ArcGis or GlobalMapper is not possible without this improvements.
Now GeoPackage works only with WorldWind test example, which was made with violation of GeoPackage specification requirements. Other words GeoPackage implementation is wrong now.

Benefits

Adding correct support of EPSG 4326 GeoPackage offline cache.

Potential Drawbacks

None. Backward compatible with current incorrect GeoPackage example.

- Add support of local tile origin based on tile matrix set extent instead of full sphere origin.
- Add surface image name based on content identifier.
- Change level set sector initialization based on tile matrix set extent instead of content extent.
- Change first level tile delta and number of levels calculation based on tile matrix zoom levels.
- Fix row calculation in tile factory.
@ComBatVision ComBatVision changed the title Feature/geopackage Fix GeoPackage support implementation. Dec 7, 2020
…ng levels size in case of gaps in levels numeration.
PJHogan
PJHogan previously approved these changes Apr 23, 2022
…eopackage

# Conflicts:
#	worldwind/src/main/java/gov/nasa/worldwind/layer/mercator/MercatorImageTile.java
#	worldwind/src/main/java/gov/nasa/worldwind/layer/mercator/MercatorSector.java
#	worldwind/src/main/java/gov/nasa/worldwind/layer/mercator/MercatorTiledImageLayer.java
#	worldwind/src/main/java/gov/nasa/worldwind/render/ImageRetriever.java
#	worldwind/src/main/java/gov/nasa/worldwind/render/ImageSource.java
PJHogan
PJHogan previously approved these changes Jul 31, 2022
Copy link

@PJHogan PJHogan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Grazie Mille!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants