|
100 | 100 | lon_orig_dir == 'W' || lon_orig_dir == 'w')
|
101 | 101 | lon_orig_deg = -lon_orig_deg;
|
102 | 102 | 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); |
104 | 104 |
|
105 | 105 | meta.lat_sw_corn = fread(fid, 7, 'uint8=>char')';
|
106 | 106 | meta.lon_sw_corn = fread(fid, 8, 'uint8=>char')';
|
|
132 | 132 | meta.mult_acc_out_flg = fread(fid, 2, 'uint8=>char')';
|
133 | 133 |
|
134 | 134 | % 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; |
139 | 137 |
|
140 | 138 | % If range of lat/lons is given, constrain window to read
|
141 | 139 | 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'); |
145 | 142 | 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'); |
150 | 145 | lons = lons(lower_lon_index:upper_lon_index);
|
151 | 146 | else
|
152 | 147 | lower_lat_index=1;
|
|
0 commit comments