OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
AlosPalsarMapProjectionData.cpp
Go to the documentation of this file.
1 //----------------------------------------------------------------------------
2 //
3 // "Copyright Centre National d'Etudes Spatiales"
4 // "Copyright Centre for Remote Imaging, Sensing and Processing"
5 //
6 // License: LGPL
7 //
8 // See LICENSE.txt file in the top level directory for more details.
9 //
10 //----------------------------------------------------------------------------
11 // $Id$
12 
14 
15 namespace ossimplugins
16 {
17 
19  {
20  }
21 
23  {
24  }
25 
27  {
28  os << "map_proj_des:" << data._map_proj_des.c_str() << std::endl;
29 
30  os << "num_pix_in_line:" << data._num_pix_in_line << std::endl;
31 
32  os << "num_lines:" << data._num_lines << std::endl;
33 
34  os << "nom_interpixel_dist:" << data._nom_interpixel_dist << std::endl;
35 
36  os << "nom_interline_dist:" << data._nom_interline_dist << std::endl;
37 
38  os << "orientation_at_center:" << data._orientation_at_center << std::endl;
39 
40  os << "orbit_incl:" << data._orbit_incl << std::endl;
41 
42  os << "asc_node_long:" << data._asc_node_long << std::endl;
43 
44  os << "platform_heading:" << data._platform_heading << std::endl;
45 
46  os << "name_of_ref_ellipsoid:" << data._name_of_ref_ellipsoid.c_str() << std::endl;
47 
48  os << "semi_maj_axis:" << data._semi_maj_axis << std::endl;
49 
50  os << "semi_min_axis:" << data._semi_min_axis << std::endl;
51 
52  os << "first_line_first_pixel_lat:" << data._first_line_first_pixel_lat << std::endl;
53 
54  os << "first_line_first_pixel_lon:" << data._first_line_first_pixel_lon << std::endl;
55 
56  os << "first_line_last_pixel_lat:" << data._first_line_last_pixel_lat << std::endl;
57 
58  os << "first_line_last_pixel_lon:" << data._first_line_last_pixel_lon << std::endl;
59 
60  os << "last_line_last_pixel_lat:" << data._last_line_last_pixel_lat << std::endl;
61 
62  os << "last_line_last_pixel_lon:" << data._last_line_last_pixel_lon << std::endl;
63 
64  os << "last_line_first_pixel_lat:" << data._last_line_first_pixel_lat << std::endl;
65 
66  os << "last_line_first_pixel_lon:" << data._last_line_first_pixel_lon << std::endl;
67 
68  return os;
69 
70  }
71 
73  {
74  char buf16[17];
75  buf16[16] = '\0';
76  char buf32[33];
77  buf32[32] = '\0';
78  // char buf8[9];
79  // buf8[8] = '\0';
80  // char buf4[5];
81  // buf4[4] = '\0';
82 
83  is.read(buf16, 16);
84 
85  is.read(buf32, 32);
86  data._map_proj_des = buf32;
87 
88  is.read(buf16, 16);
89  data._num_pix_in_line = atoi(buf16);
90 
91  is.read(buf16, 16);
92  data._num_lines = atoi(buf16);
93 
94  is.read(buf16, 16);
95  data._nom_interpixel_dist = atof(buf16);
96 
97  is.read(buf16, 16);
98  data._nom_interline_dist = atof(buf16);
99 
100  is.read(buf16, 16);
101  data._orientation_at_center = atof(buf16);
102 
103  is.read(buf16, 16);
104  data._orbit_incl = atof(buf16);
105 
106  is.read(buf16, 16);
107  data._asc_node_long = atof(buf16);
108 
109  is.read(buf16, 16);
110 
111  is.read(buf16, 16);
112 
113  is.read(buf16, 16);
114 
115  is.read(buf16, 16);
116  data._platform_heading = atof(buf16);
117 
118  is.read(buf32, 32);
119  data._name_of_ref_ellipsoid = buf32;
120 
121  is.read(buf16, 16);
122  data._semi_maj_axis = atof(buf16);
123 
124  is.read(buf16, 16);
125  data._semi_min_axis = atof(buf16);
126 
127  char buf772[772];
128  is.read(buf772, 772);
129 
130  is.read(buf16, 16);
131  data._first_line_first_pixel_lat = atof(buf16);
132 
133  is.read(buf16, 16);
134  data._first_line_first_pixel_lon = atof(buf16);
135 
136  is.read(buf16, 16);
137  data._first_line_last_pixel_lat = atof(buf16);
138 
139  is.read(buf16, 16);
140  data._first_line_last_pixel_lon = atof(buf16);
141 
142  is.read(buf16, 16);
143  data._last_line_last_pixel_lat = atof(buf16);
144 
145  is.read(buf16, 16);
146  data._last_line_last_pixel_lon = atof(buf16);
147 
148  is.read(buf16, 16);
149  data._last_line_first_pixel_lat = atof(buf16);
150 
151  is.read(buf16, 16);
152  data._last_line_first_pixel_lon = atof(buf16);
153 
154  char buf420[420];
155  is.read(buf420, 420);
156 
157  return is;
158  }
159 
160 
162  AlosPalsarRecord(rhs),
163  _map_proj_des(rhs._map_proj_des),
164  _num_pix_in_line(rhs._num_pix_in_line),
165  _num_lines(rhs._num_lines),
166  _nom_interpixel_dist(rhs._nom_interpixel_dist),
167  _nom_interline_dist(rhs._nom_interline_dist),
168  _orientation_at_center(rhs._orientation_at_center),
169  _orbit_incl(rhs._orbit_incl),
170  _asc_node_long(rhs._asc_node_long),
171  _platform_heading(rhs._platform_heading),
172  _name_of_ref_ellipsoid(rhs._name_of_ref_ellipsoid),
173  _semi_maj_axis(rhs._semi_maj_axis),
174  _semi_min_axis(rhs._semi_min_axis),
175  _first_line_first_pixel_lat(rhs._first_line_first_pixel_lat),
176  _first_line_first_pixel_lon(rhs._first_line_first_pixel_lon),
177  _first_line_last_pixel_lat(rhs._first_line_last_pixel_lat),
178  _first_line_last_pixel_lon(rhs._first_line_last_pixel_lon),
179  _last_line_last_pixel_lat(rhs._last_line_last_pixel_lat),
180  _last_line_last_pixel_lon(rhs._last_line_last_pixel_lon),
181  _last_line_first_pixel_lat(rhs._last_line_first_pixel_lat),
182  _last_line_first_pixel_lon(rhs._last_line_first_pixel_lon)
183  {}
184 
186  {
189  _num_lines = rhs._num_lines;
193  _orbit_incl = rhs._orbit_incl;
207 
208  return *this;
209  }
210 }
AlosPalsarMapProjectionData & operator=(const AlosPalsarMapProjectionData &rhs)
Copy operator.
double _first_line_last_pixel_lat
first_line_last_pixel_lat
double _last_line_last_pixel_lon
last_line_last_pixel_lon
This class is able to read the SAR leader data set summary record of the leader file.
double _last_line_first_pixel_lat
last_line_first_pixel_lat
double _first_line_last_pixel_lon
first_line_last_pixel_lon
This class is the base class of all the record classes.
std::ostream & operator<<(std::ostream &os, const AlosPalsarData &data)
double _first_line_first_pixel_lon
first_line_first_pixel_lon
std::string _name_of_ref_ellipsoid
name_of_ref_ellipsoid
std::istream & operator>>(std::istream &is, AlosPalsarData &data)
double _last_line_first_pixel_lon
last_line_first_pixel_lon
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
double _last_line_last_pixel_lat
last_line_last_pixel_lat
double _first_line_first_pixel_lat
first_line_first_pixel_lat
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23