![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
ASPRS LAS point cloud file I/O filter. More...
#include <LASFilter.h>


Public Member Functions | |
| LASFilter () | |
| CC_FILE_ERROR | loadFile (const QString &filename, ccHObject &container, LoadParameters ¶meters) override |
| Loads one or more entities from a file. More... | |
| bool | canSave (CV_CLASS_ENUM type, bool &multiple, bool &exclusive) const override |
| Returns whether this I/O filter can save the specified type of entity. More... | |
| CC_FILE_ERROR | saveToFile (ccHObject *entity, const QString &filename, const SaveParameters ¶meters) override |
| Saves an entity (or a group of) to a file. More... | |
Public Member Functions inherited from FileIOFilter | |
| virtual | ~FileIOFilter ()=default |
| bool | importSupported () const |
| Returns whether this I/O filter can import files. More... | |
| bool | exportSupported () const |
| Returns whether this I/O filter can export files. More... | |
| const QStringList & | getFileFilters (bool onImport) const |
| Returns the file filter(s) for this I/O filter. More... | |
| QString | getDefaultExtension () const |
| Returns the default file extension. More... | |
| virtual void | unregister () |
| Called when the filter is unregistered. More... | |
Additional Inherited Members | |
Public Types inherited from FileIOFilter | |
| enum | FilterFeature { NoFeatures = 0x0000 , Import = 0x00001 , Export = 0x0002 , BuiltIn = 0x0004 , DynamicInfo = 0x0008 } |
| using | Shared = QSharedPointer< FileIOFilter > |
| Shared type. More... | |
| using | FilterContainer = std::vector< FileIOFilter::Shared > |
| Type of a I/O filters container. More... | |
Static Public Member Functions inherited from FileIOFilter | |
| static QStringList | ImportFilterList () |
| static ccHObject * | LoadFromFile (const QString &filename, LoadParameters ¶meters, Shared filter, CC_FILE_ERROR &result) |
| Loads one or more entities from a file with a known filter. More... | |
| static ccHObject * | LoadFromFile (const QString &filename, LoadParameters ¶meters, CC_FILE_ERROR &result, const QString &fileFilter=QString()) |
| Loads one or more entities from a file with known type. More... | |
| static CC_FILE_ERROR | SaveToFile (ccHObject *entities, const QString &filename, const SaveParameters ¶meters, Shared filter) |
| static CC_FILE_ERROR | SaveToFile (ccHObject *entities, const QString &filename, const SaveParameters ¶meters, const QString &fileFilter) |
| static bool | HandleGlobalShift (const CCVector3d &P, CCVector3d &Pshift, bool &preserveCoordinateShift, LoadParameters &loadParameters, bool useInputCoordinatesShiftIfPossible=false) |
| Shortcut to the ecvGlobalShiftManager mechanism specific for files. More... | |
| static void | DisplayErrorMessage (CC_FILE_ERROR err, const QString &action, const QString &filename) |
| Displays (to console) the message corresponding to a given error code. More... | |
| static bool | CheckForSpecialChars (const QString &filename) |
| Returns whether special characters are present in the input string. More... | |
| static void | ResetSesionCounter () |
| static unsigned | IncreaseSesionCounter () |
| static void | Register (Shared filter) |
| Registers a new filter. More... | |
| static Shared | GetFilter (const QString &fileFilter, bool onImport) |
| Returns the filter corresponding to the given 'file filter'. More... | |
| static Shared | FindBestFilterForExtension (const QString &ext) |
| Returns the best filter (presumably) to open a given file extension. More... | |
| static const FilterContainer & | GetFilters () |
| Returns the set of all registered filters. More... | |
| static void | UnregisterAll () |
| Unregisters all filters. More... | |
Protected Member Functions inherited from FileIOFilter | |
| FileIOFilter (const FilterInfo &info) | |
| void | setImportExtensions (const QStringList &extensions) |
| void | setImportFileFilterStrings (const QStringList &filterStrings) |
| void | setExportFileFilterStrings (const QStringList &filterStrings) |
Static Protected Attributes inherited from FileIOFilter | |
| static constexpr float | DEFAULT_PRIORITY = 25.0f |
ASPRS LAS point cloud file I/O filter.
Definition at line 13 of file LASFilter.h.
| LASFilter::LASFilter | ( | ) |
Definition at line 131 of file LASFilter.cpp.
References FileIOFilter::DEFAULT_PRIORITY, FileIOFilter::Export, and FileIOFilter::Import.
|
overridevirtual |
Returns whether this I/O filter can save the specified type of entity.
| type | entity type |
| multiple | whether the filter can save multiple instances of this entity at once |
| exclusive | whether the filter can only save this type of entity if selected or if it can be mixed with other types |
Reimplemented from FileIOFilter.
Definition at line 139 of file LASFilter.cpp.
References CV_TYPES::POINT_CLOUD, and type.
|
overridevirtual |
Loads one or more entities from a file.
This method must be implemented by children classes.
| filename | file to load |
| container | container to store loaded entities |
| parameters | generic loading parameters |
Reimplemented from FileIOFilter.
Definition at line 982 of file LASFilter.cpp.
References ccHObject::addChild(), cloudViewer::PointCloudTpl< T >::addPoint(), Tiler::addPoint(), ccPointCloud::addRGBColor(), ecvGlobalShiftManager::ALWAYS_DISPLAY_DIALOG, FileIOFilter::LoadParameters::alwaysDisplayLoadDialog, ecvColor::RgbTpl< Type >::b, ecvColor::black(), ecvColor::blue(), cloudViewer::PointCloudTpl< T >::capacity(), CC_FERR_CANCELED_BY_USER, CC_FERR_NO_ERROR, CC_FERR_NOT_ENOUGH_MEMORY, CC_FERR_THIRD_PARTY_LIB_EXCEPTION, CC_FERR_THIRD_PARTY_LIB_FAILURE, CC_MAX_NUMBER_OF_POINTS_PER_CLOUD, LasNames::Classification, FileIOFilter::LoadParameters::coordinatesShiftEnabled, LasCloudChunk::createFieldsToLoad(), LasField::DesanitizeString(), ExtraDimDescriptor::dimType, LasNames::EdgeOfFlightLine, CVLog::Error(), fields, fileChunkSize, filename, ecvColor::RgbTpl< Type >::g, ccHObject::getChild(), ccHObject::getChildrenNumber(), LasCloudChunk::getLoadedCloud(), LasNames::GpsTime, ecvColor::green(), FileIOFilter::HandleGlobalShift(), ccPointCloud::hasColors(), Tiler::init(), LasNames::Intensity, LAS_BLUE, LAS_CLASSIF_KEYPOINT, LAS_CLASSIF_OVERLAP, LAS_CLASSIF_SYNTHETIC, LAS_CLASSIF_VALUE, LAS_CLASSIF_WITHHELD, LAS_EXTRA, LAS_FIELD_NAMES, LAS_GLOBAL_ENCODING_META_DATA, LAS_GREEN, LAS_OFFSET_X_META_DATA, LAS_OFFSET_Y_META_DATA, LAS_OFFSET_Z_META_DATA, LAS_POINT_FORMAT_META_DATA, LAS_PROJECT_UUID_META_DATA, LAS_RED, LAS_SCALE_X_META_DATA, LAS_SCALE_Y_META_DATA, LAS_SCALE_Z_META_DATA, LAS_TIME, LAS_VERSION_MAJOR_META_DATA, LAS_VERSION_MINOR_META_DATA, LasCloudChunk::lasFields, LasCloudChunk::loadedCloud, min(), name, ExtraDimDescriptor::name, ecvGlobalShiftManager::NO_DIALOG_AUTO_SHIFT, Vector3Tpl< Type >::norm2(), nProgress, LasNames::NumberOfReturns, cloudViewer::NormalizedProgress::oneStep(), FileIOFilter::LoadParameters::parentWidget, ExtraLasField::pdalId, LasNames::PointSourceId, CVLog::Print(), ecvColor::RgbTpl< Type >::r, ecvColor::red(), LasCloudChunk::reserveSize(), ccPointCloud::reserveTheRGBTable(), ccPointCloud::resize(), LasNames::ReturnNumber, s_LAS_SRS_Key, s_lasOpenDlg(), LasNames::ScanAngleRank, LasNames::ScanDirectionFlag, FileIOFilter::LoadParameters::sessionStart, ccShiftedObject::setGlobalShift(), ccObject::setMetaData(), ccObject::setName(), ccPointCloud::setPointColor(), FileIOFilter::LoadParameters::shiftHandlingMode, ccDrawableObject::showColors(), cloudViewer::PointCloudTpl< T >::size(), typeToId(), LasNames::UserData, CVLog::Warning(), Tiler::writeAll(), Tuple3Tpl< Type >::x, X, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.
|
overridevirtual |
Saves an entity (or a group of) to a file.
This method must be implemented by children classes.
| entity | entity (or group of) to save |
| filename | filename |
| parameters | generic saving parameters |
Reimplemented from FileIOFilter.
Definition at line 208 of file LASFilter.cpp.
References FileIOFilter::SaveParameters::alwaysDisplaySaveDialog, ecvColor::RgbTpl< Type >::b, CC_FERR_BAD_ARGUMENT, CC_FERR_BAD_ENTITY_TYPE, CC_FERR_CANCELED_BY_USER, CC_FERR_NO_ERROR, CC_FERR_NO_SAVE, CC_FERR_NOT_ENOUGH_MEMORY, CC_FERR_THIRD_PARTY_LIB_EXCEPTION, CC_FERR_THIRD_PARTY_LIB_FAILURE, cloudViewer::utility::ceil(), LasNames::Classification, CVLog::Error(), filename, ecvColor::RgbTpl< Type >::g, ccShiftedObject::getGlobalShift(), LasField::GetLASFields(), ccObject::getMetaData(), cloudViewer::ScalarField::getName(), cloudViewer::PointCloudTpl< T >::getNumberOfScalarFields(), ccShiftedObject::getOwnGlobalBB(), cloudViewer::GenericIndexedCloud::getPoint(), ccGenericPointCloud::getPointColor(), cloudViewer::PointCloudTpl< T >::getScalarField(), ccDrawableObject::hasColors(), ccObject::hasMetaData(), ccObject::isA(), ccShiftedObject::isShifted(), LAS_BLUE, LAS_CLASSIF_KEYPOINT, LAS_CLASSIF_OVERLAP, LAS_CLASSIF_SYNTHETIC, LAS_CLASSIF_VALUE, LAS_CLASSIF_WITHHELD, LAS_CLASSIFICATION, LAS_GLOBAL_ENCODING_META_DATA, LAS_GREEN, LAS_INVALID, LAS_OFFSET_X_META_DATA, LAS_OFFSET_Y_META_DATA, LAS_OFFSET_Z_META_DATA, LAS_POINT_FORMAT_META_DATA, LAS_PROJECT_UUID_META_DATA, LAS_RED, LAS_SCALE_X_META_DATA, LAS_SCALE_Y_META_DATA, LAS_SCALE_Z_META_DATA, LAS_TIME, LAS_VERSION_MINOR_META_DATA, LAS_X, LAS_Y, LAS_Z, max(), ecvGlobalShiftManager::NeedShift(), nProgress, cloudViewer::NormalizedProgress::oneStep(), FileIOFilter::SaveParameters::parentWidget, CV_TYPES::POINT_CLOUD, ecvColor::RgbTpl< Type >::r, s_LAS_SRS_Key, s_saveDlg(), cloudViewer::GenericCloud::size(), ccHObjectCaster::ToGenericPointCloud(), ccShiftedObject::toGlobal3d(), typeToId(), LasField::UpdateMinPointFormat(), CVLog::Warning(), Tuple3Tpl< Type >::x, X, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.