Appboard/2.4/builder/widgets/tile map/offline data
The Tile Map Widget can be configured to use multiple base layer tilesets and multiple overlay tilesets, including tilesets served up by the AppBoard server removing the need for external Internet access.
Viewer clients connected to AppBoard will fetch the tilesets from the AppBoard server, to which they must already have network access.
It's important to understand that the size of the offline tileset grows exponentially for each additional zoom level. Levels 0 through 7 of the default OpenStreetMap (OSM) tiles is roughly 100MB, but online you can zoom through to level 20. Attempting to have an offline tileset with this deep level of zoom would be ... big.
Importing Offline Tilesets
Edge can provide some packaged OSM tiles for offline use, please contact support. Otherwise it is possible to build your own offline tilesets using a variety of sources and tools (see the Building section below).
- Shutdown AppBoard
- In a terminal change into [INSTALL_HOME]/server/bin
- Run the following command: portal FilesImport -jar <OfflineTilePackage>
- Restart AppBoard, the new tileset should be available when configuring Tile Map widgets.
Building Offline Tileset Packs
Tileset packages are simply a zip file with a particular directory structure containing a set of tile images arranged in XYZ directories and a tile registry file which contains meta data for AppBoard to understand how to use the tiles.
General process:
- create a working directory, and change into that directory
- create a subdirectory for the tile images, this must be in the following hierarchy: webapps/enportal/custom/tiles/your_tileset and replace your_tileset with an appropriate name.
- place the set of XYZ directories and images files into the directory above. So for example you may end up with something like webapps/enportal/custom/tiles/your_tileset/z/x/y.png where z, x, and y would be numbers representing the zoom level and coordinates.
- create the subdirectory for the tile registry file and place it there. This must be in the following hierarchy: webapps/enportal/WEB-INF/xmlroot/appboard/config/tileregistry/your_tileset.csv where your_tileset.csv is the registry file and the rest of the path is the subdirectory.
- use zip to compress the working directory and call it your_tileset.zip.
As an example, here is the output from a listing of files and directories from a valid offline tileset package. Since there are too many files to list only a handful are shown:
./webapps ./webapps/enportal ./webapps/enportal/WEB-INF ./webapps/enportal/WEB-INF/xmlroot ./webapps/enportal/WEB-INF/xmlroot/appboard ./webapps/enportal/WEB-INF/xmlroot/appboard/config ./webapps/enportal/WEB-INF/xmlroot/appboard/config/tileregistry ./webapps/enportal/WEB-INF/xmlroot/appboard/config/tileregistry/mytileset.csv ./webapps/enportal/custom ./webapps/enportal/custom/tiles ./webapps/enportal/custom/tiles/mytileset ./webapps/enportal/custom/tiles/mytileset/7 ./webapps/enportal/custom/tiles/mytileset/7/119 ./webapps/enportal/custom/tiles/mytileset/7/119/52.png ./webapps/enportal/custom/tiles/mytileset/7/119/4.png ./webapps/enportal/custom/tiles/mytileset/7/119/63.png ./webapps/enportal/custom/tiles/mytileset/7/119/85.png ./webapps/enportal/custom/tiles/mytileset/7/119/82.png ... (continued )...