![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
#include "PlyFilter.h"#include "FileIO.h"#include "PlyOpenDlg.h"#include <QFileInfo>#include <QImage>#include <QMessageBox>#include <QPushButton>#include <CVLog.h>#include <ecvHObjectCaster.h>#include <ecvMaterial.h>#include <ecvMaterialSet.h>#include <ecvMesh.h>#include <ecvPointCloud.h>#include <ecvProgressDialog.h>#include <ecvScalarField.h>#include <array>#include <cassert>#include <cstring>#include <unistd.h>#include <ctime>
Go to the source code of this file.
Macros | |
| #define | PROCESS_EVENTS_FREQ 10000 |
| #define | ELEM_POS_0 0x00000000 |
| #define | ELEM_POS_1 0x00000001 |
| #define | ELEM_POS_2 0x00000002 |
| #define | ELEM_POS_3 0x00000003 |
| #define | ELEM_EOL 0x00000004 |
| #define | POS_MASK 0x00000003 |
Functions | |
| static bool | IsFloat (e_ply_type type) |
| static void | errorCallback (p_ply _ply, const char *message) |
| static int | vertex_cb (p_ply_argument argument) |
| static int | normal_cb (p_ply_argument argument) |
| static int | rgb_cb (p_ply_argument argument) |
| static int | grey_cb (p_ply_argument argument) |
| static int | scalar_cb (p_ply_argument argument) |
| static int | face_cb (p_ply_argument argument) |
| static int | texCoords_cb (p_ply_argument argument) |
| static int | texIndexes_cb (p_ply_argument argument) |
Variables | |
| static e_ply_storage_mode | s_defaultOutputFormat = PLY_DEFAULT |
| static int | s_PointCount = 0 |
| static int | s_NormalCount = 0 |
| static int | s_ColorCount = 0 |
| static int | s_IntensityCount = 0 |
| static unsigned | s_totalScalarCount = 0 |
| static unsigned | s_triCount = 0 |
| static bool | s_PointDataCorrupted = false |
| static bool | s_NotEnoughMemory = false |
| static FileIOFilter::LoadParameters | s_loadParameters |
| static CCVector3d | s_Pshift (0, 0, 0) |
| bool | s_hasQuads = false |
| bool | s_hasMaterials = false |
| std::vector< bool > | s_triIsQuad |
| static bool | s_unsupportedPolygonType = false |
| static unsigned | s_texCoordCount = 0 |
| static bool | s_invalidTexCoordinates = false |
| static int | s_maxTextureIndex = -1 |
| #define ELEM_EOL 0x00000004 |
Definition at line 520 of file PlyFilter.cpp.
| #define ELEM_POS_0 0x00000000 |
Definition at line 516 of file PlyFilter.cpp.
| #define ELEM_POS_1 0x00000001 |
Definition at line 517 of file PlyFilter.cpp.
| #define ELEM_POS_2 0x00000002 |
Definition at line 518 of file PlyFilter.cpp.
| #define ELEM_POS_3 0x00000003 |
Definition at line 519 of file PlyFilter.cpp.
| #define POS_MASK 0x00000003 |
Definition at line 522 of file PlyFilter.cpp.
| #define PROCESS_EVENTS_FREQ 10000 |
Definition at line 514 of file PlyFilter.cpp.
|
static |
Definition at line 70 of file PlyFilter.cpp.
References CVLog::Error().
Referenced by PlyFilter::loadFile().
|
static |
Definition at line 736 of file PlyFilter.cpp.
References ccMesh::addTriangle(), ccMesh::capacity(), PROCESS_EVENTS_FREQ, ccMesh::reserve(), s_hasMaterials, s_hasQuads, s_NotEnoughMemory, s_triCount, s_triIsQuad, s_unsupportedPolygonType, and ccMesh::size().
Referenced by PlyFilter::loadFile().
|
static |
Definition at line 667 of file PlyFilter.cpp.
References ccPointCloud::addGreyColor(), ecvColor::MAX, PROCESS_EVENTS_FREQ, s_IntensityCount, s_NotEnoughMemory, and type.
Referenced by PlyFilter::loadFile().
|
static |
|
static |
Definition at line 591 of file PlyFilter.cpp.
References ccPointCloud::addNorm(), ELEM_EOL, POS_MASK, PROCESS_EVENTS_FREQ, s_NormalCount, s_NotEnoughMemory, and Tuple3Tpl< Type >::u.
Referenced by PlyFilter::loadFile().
|
static |
Definition at line 616 of file PlyFilter.cpp.
References ccPointCloud::addRGBColor(), ELEM_EOL, ecvColor::MAX, POS_MASK, PROCESS_EVENTS_FREQ, ecvColor::RgbTpl< Type >::rgb, s_ColorCount, s_NotEnoughMemory, and type.
Referenced by PlyFilter::loadFile().
|
static |
Definition at line 713 of file PlyFilter.cpp.
References PROCESS_EVENTS_FREQ, s_NotEnoughMemory, s_totalScalarCount, and cloudViewer::ScalarField::setValue().
Referenced by PlyFilter::loadFile().
|
static |
Definition at line 814 of file PlyFilter.cpp.
References ccArray< Type, N, ComponentType >::addElement(), ccArray< Type, N, ComponentType >::currentSize(), PROCESS_EVENTS_FREQ, ccArray< Type, N, ComponentType >::reserveSafe(), s_invalidTexCoordinates, s_NotEnoughMemory, and s_texCoordCount.
Referenced by PlyFilter::loadFile().
|
static |
Definition at line 860 of file PlyFilter.cpp.
References ccArray< Type, N, ComponentType >::addElement(), ccArray< Type, N, ComponentType >::currentSize(), PROCESS_EVENTS_FREQ, and s_maxTextureIndex.
Referenced by PlyFilter::loadFile().
|
static |
Definition at line 538 of file PlyFilter.cpp.
References cloudViewer::PointCloudTpl< T >::addPoint(), ELEM_EOL, FileIOFilter::HandleGlobalShift(), POS_MASK, PROCESS_EVENTS_FREQ, s_loadParameters, s_NotEnoughMemory, s_PointCount, s_PointDataCorrupted, s_Pshift, ccShiftedObject::setGlobalShift(), Tuple3Tpl< Type >::u, CVLog::Warning(), Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.
Referenced by PlyFilter::loadFile().
|
static |
Definition at line 526 of file PlyFilter.cpp.
Referenced by PlyFilter::loadFile(), and rgb_cb().
|
static |
Definition at line 68 of file PlyFilter.cpp.
Referenced by PlyFilter::saveToFile(), and PlyFilter::SetDefaultOutputFormat().
| bool s_hasMaterials = false |
Definition at line 535 of file PlyFilter.cpp.
Referenced by face_cb(), and PlyFilter::loadFile().
| bool s_hasQuads = false |
Definition at line 534 of file PlyFilter.cpp.
Referenced by face_cb(), and PlyFilter::loadFile().
|
static |
Definition at line 527 of file PlyFilter.cpp.
Referenced by grey_cb(), and PlyFilter::loadFile().
|
static |
Definition at line 813 of file PlyFilter.cpp.
Referenced by PlyFilter::loadFile(), and texCoords_cb().
|
static |
Definition at line 532 of file PlyFilter.cpp.
Referenced by E57Filter::loadFile(), PlyFilter::loadFile(), LoadScan(), and vertex_cb().
|
static |
Definition at line 859 of file PlyFilter.cpp.
Referenced by PlyFilter::loadFile(), and texIndexes_cb().
|
static |
Definition at line 525 of file PlyFilter.cpp.
Referenced by PlyFilter::loadFile(), and normal_cb().
|
static |
Definition at line 531 of file PlyFilter.cpp.
Referenced by face_cb(), grey_cb(), PlyFilter::loadFile(), normal_cb(), rgb_cb(), scalar_cb(), texCoords_cb(), and vertex_cb().
|
static |
Definition at line 524 of file PlyFilter.cpp.
Referenced by PlyFilter::loadFile(), and vertex_cb().
|
static |
Definition at line 530 of file PlyFilter.cpp.
Referenced by PlyFilter::loadFile(), and vertex_cb().
|
static |
Referenced by PlyFilter::loadFile(), and vertex_cb().
|
static |
Definition at line 812 of file PlyFilter.cpp.
Referenced by PlyFilter::loadFile(), and texCoords_cb().
|
static |
Definition at line 528 of file PlyFilter.cpp.
Referenced by PlyFilter::loadFile(), and scalar_cb().
|
static |
Definition at line 529 of file PlyFilter.cpp.
Referenced by face_cb(), and PlyFilter::loadFile().
| std::vector<bool> s_triIsQuad |
Definition at line 536 of file PlyFilter.cpp.
Referenced by face_cb(), and PlyFilter::loadFile().
|
static |
Definition at line 735 of file PlyFilter.cpp.
Referenced by face_cb(), and PlyFilter::loadFile().