JAVA基于GDAL求坐标点的海拔值
由于大部分地图API不提供海拔这一参数,所以海拔要单独计算。我选择了GDAL方式
开门见山——准备工作!
搭建好基于Java的GDAL运行环境和相关的配置
参数 坐标点 以及 需要读取的高程数据(底图)
下面直接上代码。在代码中我尽可能的详细的注释了每个技术点的应用
package com.chinalbs.qhxm.util;
import org.gdal.gdal.Band;
import org.gdal.gdal.Dataset;
import org.gdal.gdal.Driver;
import org.gdal.gdal.gdal;
import org.gdal.gdalconst.gdalconstConstants;
public class AltitudeUtil {
public static void main(String[] args){
//参数经纬度(小数形式)
Integer selectAltitude = SelectAltitude(100.3445, 37.003);
System.out.println(“海拔是:”+selectAltitude+“米”);
}
public static Integer SelectAltitude (double lon,double lat){
//海拔
Integer altitude =0;
//支持所有驱动
gdal.AllRegister();
//要读取的文件,经纬度不可超过查询地图的范围,否则结果为null
//海拔读取为DEM高程数据
Str