![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
Normal compressor. More...
#include <ecvNormalCompressor.h>
Static Public Member Functions | |
| static unsigned | Compress (const PointCoordinateType N[3]) |
| Compression algorithm. More... | |
| static void | Decompress (unsigned index, PointCoordinateType N[3], unsigned char level=QUANTIZE_LEVEL) |
| Decompression algorithm. More... | |
| static void | InvertNormal (CompressedNormType &code) |
| Inverts a (compressed) normal. More... | |
Static Public Attributes | |
| static const unsigned char | QUANTIZE_LEVEL |
| Compressed normals quantization level (number of directions: 2^(2*N+3)) More... | |
| static const unsigned | MAX_VALID_NORM_CODE |
| Last valid normal code. More... | |
| static const unsigned | NULL_NORM_CODE = MAX_VALID_NORM_CODE + 1 |
| Null normal code. More... | |
Normal compressor.
Definition at line 16 of file ecvNormalCompressor.h.
|
static |
Compression algorithm.
compute in which sector lie the elements
scale the sectored vector - early return for null vector
compute the box
then for each required level, quantize...
Definition at line 23 of file ecvNormalCompressor.cpp.
References NULL_NORM_CODE, QUANTIZE_LEVEL, x, y, and z.
Referenced by ccNormalVectors::GetNormIndex().
|
static |
Decompression algorithm.
special case for the null code
recompute the box in the sector...
Definition at line 119 of file ecvNormalCompressor.cpp.
References NULL_NORM_CODE.
Referenced by ccNormalVectors::init().
|
static |
Inverts a (compressed) normal.
Definition at line 16 of file ecvNormalCompressor.cpp.
References NULL_NORM_CODE, and QUANTIZE_LEVEL.
Referenced by ccPointCloud::invertNormals(), and ccMesh::invertPerTriangleNormals().
|
static |
Last valid normal code.
Definition at line 25 of file ecvNormalCompressor.h.
|
static |
Null normal code.
Definition at line 28 of file ecvNormalCompressor.h.
Referenced by Compress(), Decompress(), ccNormalVectors::init(), and InvertNormal().
|
static |
Compressed normals quantization level (number of directions: 2^(2*N+3))
Definition at line 21 of file ecvNormalCompressor.h.
Referenced by Compress(), and InvertNormal().