Skip to content

Commit 5967fdc

Browse files
committed
DEM reading fixes
1 parent 28076ab commit 5967fdc

File tree

2 files changed

+8
-13
lines changed

2 files changed

+8
-13
lines changed

Geometry/DEM/get_DEM_heights_region.m

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868
else lon_dir = 'e';
6969
end
7070
DEMfilename{lon_index,lat_index} = ...
71-
sprintf('%s/dted/%c%03d/%c%02d.dt2', p.Results.DEMBaseDir, ...
71+
sprintf('%s/%c%03d/%c%02d.dt2', p.Results.DEMBaseDir, ...
7272
lon_dir, abs(floor(lon_steps(lon_index))), ...
7373
lat_dir, abs(floor(lat_steps(lat_index))) );
7474
if ~exist(DEMfilename{lon_index,lat_index},'file')

IO/DTED/read_DTED.m

+7-12
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@
100100
lon_orig_dir == 'W' || lon_orig_dir == 'w')
101101
lon_orig_deg = -lon_orig_deg;
102102
end
103-
meta.lon_orig_dd = sign(lat_orig_deg)*polyval(abs([lon_orig_sec lon_orig_min lon_orig_deg]),1/60);
103+
meta.lon_orig_dd = sign(lon_orig_deg)*polyval(abs([lon_orig_sec lon_orig_min lon_orig_deg]),1/60);
104104

105105
meta.lat_sw_corn = fread(fid, 7, 'uint8=>char')';
106106
meta.lon_sw_corn = fread(fid, 8, 'uint8=>char')';
@@ -132,21 +132,16 @@
132132
meta.mult_acc_out_flg = fread(fid, 2, 'uint8=>char')';
133133

134134
% Build the reference latitude and longitude values
135-
%PJC 2014-05-21 fixed bug for negative lats or lons
136-
lats = (0:(meta.num_lat_lines-1))*meta.lat_spacing_dd + meta.lat_orig_dd*sign(LL(1));
137-
lons = (0:(meta.num_lon_lines-1))*meta.lon_spacing_dd + meta.lon_orig_dd*sign(LL(2));
138-
135+
lats = (0:(meta.num_lat_lines-1))*meta.lat_spacing_dd + meta.lat_orig_dd;
136+
lons = (0:(meta.num_lon_lines-1))*meta.lon_spacing_dd + meta.lon_orig_dd;
139137

140138
% If range of lat/lons is given, constrain window to read
141139
if nargin>2
142-
latTmp = [find(lats<=LL(1),1,'last') find(lats<=UR(1),1,'last')];
143-
lower_lat_index = min(latTmp);
144-
upper_lat_index = max(latTmp);
140+
lower_lat_index = find(lats>=LL(1),1,'first');
141+
upper_lat_index = find(lats<=UR(1),1,'last');
145142
lats = lats(lower_lat_index:upper_lat_index);
146-
147-
lonTmp = [find(lons<=LL(2),1,'last') find(lons<=UR(2),1,'last')];
148-
lower_lon_index = min(lonTmp);
149-
upper_lon_index = max(lonTmp);
143+
lower_lon_index = find(lons>=LL(2),1,'first');
144+
upper_lon_index = find(lons<=UR(2),1,'last');
150145
lons = lons(lower_lon_index:upper_lon_index);
151146
else
152147
lower_lat_index=1;

0 commit comments

Comments
 (0)