ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
E57Header.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - CloudViewer: www.cloudViewer.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2024 www.cloudViewer.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #pragma once
9 
10 #include <cstdint>
11 
14 
17 public:
26 
35 
52 
53  bool normXField;
55  bool normYField;
57  bool normZField;
73 
74  double angleMinimum;
79  double angleMaximum;
88 
91  uint32_t rowIndexMaximum;
96  uint32_t columnIndexMaximum;
100 
105  uint8_t returnMaximum;
108 
113  double timeMaximum;
116 
126 
135 };
136 
139 
142 public:
147 };
148 
151 
153 class ColorLimits {
154 public:
167 };
168 
180 };
181 
183 
190  E57_CYLINDRICAL = 4
191 };
192 
194 
200  E57_PNG_IMAGE_MASK = 3
201 };
202 
205 public:
206  virtual ~CameraRepresentation() = default;
208 };
209 
212 
215 public:
216  Image2DProjection getType() override { return E57_VISUAL; }
217 
219  int64_t imageSize;
220  int64_t imageMaskSize;
221  int32_t imageWidth;
222  int32_t imageHeight;
223 };
224 
227 
230 public:
231  Image2DProjection getType() override { return E57_SPHERICAL; }
232 
233  double pixelWidth;
235  double pixelHeight;
237 };
238 
241 
244 public:
245  Image2DProjection getType() override { return E57_PINHOLE; }
246 
247  double focalLength;
255 };
256 
259 
262 public:
264 
265  double radius;
271 };
Image2DProjection
Identifies the representation for the image data.
Definition: E57Header.h:185
@ E57_PINHOLE
PinholeRepresentation for the image data.
Definition: E57Header.h:188
@ E57_CYLINDRICAL
CylindricalRepresentation for the image data.
Definition: E57Header.h:190
@ E57_VISUAL
VisualReferenceRepresentation for the image data.
Definition: E57Header.h:187
@ E57_NO_PROJECTION
No representation for the image data is present.
Definition: E57Header.h:186
@ E57_SPHERICAL
SphericalRepresentation for the image data.
Definition: E57Header.h:189
Image2DType
Identifies the format representation for the image data.
Definition: E57Header.h:196
@ E57_NO_IMAGE
No image data.
Definition: E57Header.h:197
@ E57_PNG_IMAGE
PNG format image data.
Definition: E57Header.h:199
@ E57_JPEG_IMAGE
JPEG format image data.
Definition: E57Header.h:198
@ E57_PNG_IMAGE_MASK
PNG format image mask.
Definition: E57Header.h:200
Interface for E57 camera representation.
Definition: E57Header.h:204
virtual Image2DProjection getType()
Definition: E57Header.h:207
virtual ~CameraRepresentation()=default
double colorBlueMinimum
Definition: E57Header.h:163
double colorBlueMaximum
Definition: E57Header.h:165
double colorRedMaximum
Definition: E57Header.h:157
double colorRedMinimum
Definition: E57Header.h:155
double colorGreenMaximum
Definition: E57Header.h:161
double colorGreenMinimum
Definition: E57Header.h:159
Image2DProjection getType() override
Definition: E57Header.h:263
double intensityMinimum
Definition: E57Header.h:143
double intensityMaximum
Definition: E57Header.h:145
Image2DProjection getType() override
Definition: E57Header.h:245
Image2DProjection getType() override
Definition: E57Header.h:231
int32_t imageWidth
image width (in pixels). Shall be positive
Definition: E57Header.h:221
int64_t imageMaskSize
size of image mask data in BlobNode (if any).
Definition: E57Header.h:220
int32_t imageHeight
image height (in pixels). Shall be positive
Definition: E57Header.h:222
Image2DType imageType
image type.
Definition: E57Header.h:218
Image2DProjection getType() override
Definition: E57Header.h:216
int64_t imageSize
size of image data in BlobNode.
Definition: E57Header.h:219
E57 scan useful header information (minimal set for ACloudViewer only ;)
Definition: E57Header.h:170
IntensityLimits intensityLimits
Definition: E57Header.h:172
PointStandardizedFieldsAvailable pointFields
Definition: E57Header.h:178
ColorLimits colorLimits
Definition: E57Header.h:175