-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnotes.txt
50 lines (38 loc) · 2.02 KB
/
notes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
height data: kartverket, hoydedata.no
format:
sections are exported as GeoTIFF, and for each tile x there are the following files:
x.tif the GeoTIFF heightmap itself. also contains geo metadata.
x.tif.ovr overview (3 thumbnails of differing size on separate layers)
x.tif.aux.xml geodata and statistics, eg. min and max height, histogram etc.
x.tfw tiff world file, alternative to embedded GeoTIFF metadata.
x.sos SOSI-format file, geo metadata as well.
the value of a pixel seems to correspond 1:1 to the height in meters.
using either the .tif alone with the embedded GeoTIFF data, the TIFF World File, or the SOSI file
should yield the exact same results.
NOTE: the following is made obsolete by javax.imageio.
(JAI is obsolete. javax.imageio works fine for reading GeoTIFF floating point image data.)
-- BEGIN OBSOLETE INFO --
"I was able to find an alternative Java imaging library called Apache Commons Imaging.
It is a pure-Java library that consists of a single small JAR file.
It also supports both reading and writing of the TIFF file format and
it has built-in support for GeoTIFF tags. It appears to handle all of
the common compression formats as well."
-> doesnt seem to support 32bit floating point gamma.
alternative:
https://dzone.com/articles/access-information-geotiff
-> geotools.org, gt-geotiff
-> didnt work with my tiff files.... threw DataSourceException
JAI works, but:
maven fails to resolve JAI, _unless_ I add geotools repo and install it.
it seems to pull JAI in as a dependency.
-> yes indeed, http://download.osgeo.org/webdav/geotools has JAI
-- END OBSOLETE INFO --
// step 0:
// select sub-area of world such that dimensions are divisible by
// data resolution, ie. samples/m^2
// and also divisible by 16 (chunk size)
// step 1:
// area: rectangle2d.float, pixel: point -> global_location: point3d
// step 2:
// global_location: point3d -> local_location: point3d, chunk: point2d
//System.out.println(worldSections.size());