Predictive map of Acid Suflate soils updating in real time with new labels.
This app displays the predicted map of acid sulfate soils along the southern and western coasts of Finland. Two predictions are displayed:
- manually drawn predicted map from GTK
- predicted map developed in HaSuRiski project
In addition, there is a Live map that computes the predicted map on-the-fly, right on the device. It accepts new measurement points and updates its map in real time. Other maps don't change with new data points.
This project depends on Cache package, that itself needs Semaphore package. Clone both to the same folder with the HaSiRiski project.
This project depends on map tiles to work properly. The tile archives are stored at GDrive of Arcada UAS. Ask for access individually.
The app is compiled and installed with XCode. It requires an iPhone with iOS 17 or newer, but may work on an iPad. You would also need a Mac computer to run XCode. You would need basic experience with XCode app writing, at least to set your own account (it is free but needs configuration).
The device needs a developer mode enabled, and trust the custom developer certificate - follow on-screen instructions during the first installation.
The app needs local map files. Start by downloading and extracting .zip archives from Google Drive. Note that some of them are very large, especially the "full resolution" data at zoom levels 13, 14, 15 unzip to sizes 40GB, 150GB, 570GB. Highly suggested to use SSD storage because of a huge number of small files in map tiles.
Upload files to iPhone/iPad by connecting the device to a Mac (that you already did for an app installation), opening its "Files" storage in Finder, then drag-and-dropping the folders with files. This will take a while, up to several hours.
The folders are:
hasuriski_ennako
for GTK predictionspredict_terrain
for HaSuRiski fixed predictions- open folder "hasuriski_data_subsampled_2" and drag folders
2
,3
,4
, ... to the app to enable Live model predictions
The number represents zoom level, higher number for more detailed map. You can stop early, e.g. at level 9, to save space on device and reduce transfer time. Inside the app, zooming too closely makes the map disappear but nothing breaks.
You can also leave only part of map tiles around the area of interest at high zoom levels, to save space but have a detailed map where you need it. Find more info on working with tiles on Slippy map tilenames page.
The app may stop working after iOS update. Reinstall it from XCode to fix the problem. Uploaded data will stay on the device.
You can remove uploaded data in the same "Files" window in Finder, or by deleting the app on iPhone/iPad.
Live maps are available in full resolution (largest), subsample 2 (2x2 averaged pixels), and subsample 4 (4x4 averaged pixels). To switch the resolution,
you should upload folders 2
, 3
, 4
, ... up to 15
from a corresponding folder to your phone.
You must also change subsample
parameter in code in Main/Constants.swift
source file to the correct value: 1, 2, or 4.
Labels load data from layer 14. You must have layer 14 (a folder named 14
) on your device.
Default subsample value is 2.