ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ccCropTool Class Reference

Cropping tool. More...

#include <ecvCropTool.h>

Static Public Member Functions

static ccHObjectCrop (ccHObject *entity, const ccBBox &box, bool inside=true, const ccGLMatrix *meshRotation=0)
 Crops the input entity. More...
 

Detailed Description

Cropping tool.

Handles clouds and meshes for now

Definition at line 19 of file ecvCropTool.h.

Member Function Documentation

◆ Crop()

ccHObject * ccCropTool::Crop ( ccHObject entity,
const ccBBox box,
bool  inside = true,
const ccGLMatrix meshRotation = 0 
)
static

Crops the input entity.

Parameters
entityentity to be cropped (should be a cloud or a mesh)
boxcropping box
insidewhether to keep the points/triangles inside or outside the input box
meshRotationoptional rotation (for meshes only)
Returns
cropped entity (if any)

Definition at line 23 of file ecvCropTool.cpp.

References ccHObject::addChild(), ccArray< Type, N, ComponentType >::addElement(), ccPointCloud::addScalarField(), ccMesh::addTriangleMtlIndex(), ccMesh::addTriangleTexCoordIndexes(), ccHObject::applyGLTransformation_recursive(), ecvColor::LookUpTable::at(), ccMaterialSet::clone(), ccDrawableObject::colorsShown(), ccGenericMesh::computeInterpolationWeights(), ccMesh::computePerTriangleNormals(), ccMesh::computePerVertexNormals(), ccPointCloud::crop(), ccArray< Type, N, ComponentType >::currentSize(), ccPointCloud::deleteAllScalarFields(), Vector3Tpl< Type >::dot(), cloudViewer::ScalarField::fill(), ccPointCloud::From(), Vector3Tpl< double >::fromArray(), ccGenericMesh::getAssociatedCloud(), ccGenericMesh::getMaterialSet(), ccObject::getName(), cloudViewer::PointCloudTpl< T >::getNumberOfScalarFields(), cloudViewer::PointCloudTpl< T >::getPoint(), cloudViewer::GenericCloud::getPointScalarValue(), cloudViewer::PointCloudTpl< T >::getScalarField(), ccGenericMesh::getTriangleMtlIndex(), ccMesh::getTriangleMtlIndex(), ccGenericMesh::getTriangleTexCoordinates(), ccMesh::getTriangleVertIndexes(), cloudViewer::GenericIndexedMesh::getTriangleVertIndexes(), cloudViewer::ScalarField::getValue(), ccDrawableObject::hasColors(), ccGenericMesh::hasMaterials(), ccDrawableObject::hasNormals(), ccGenericMesh::hasPerTriangleTexCoordIndexes(), ccDrawableObject::hasScalarFields(), ccGenericMesh::hasTriNormals(), cloudViewer::VerticesIndexes::i, cloudViewer::VerticesIndexes::i1, cloudViewer::VerticesIndexes::i2, cloudViewer::VerticesIndexes::i3, ccGenericMesh::importParametersFrom(), ccGenericPointCloud::importParametersFrom(), ccScalarField::importParametersFrom(), ccGenericMesh::interpolateColors(), ccGLMatrixTpl< T >::inverse(), ccObject::isA(), ccObject::isKindOf(), cloudViewer::LessThanEpsilon(), ccGenericMesh::materialsShown(), max(), cloudViewer::BoundingBoxTpl< T >::maxCorner(), CV_TYPES::MESH, cloudViewer::BoundingBoxTpl< T >::minCorner(), NAN_VALUE, ccDrawableObject::normalsShown(), params, ccPointCloud::partialClone(), CV_TYPES::POINT_CLOUD, ccMesh::reservePerTriangleMtlIndexes(), ccArray< Type, N, ComponentType >::reserveSafe(), ccPointCloud::resizeTheRGBTable(), cloudViewer::ManualSegmentationTools::segmentMeshWithAABox(), ccPointCloud::setCurrentDisplayedScalarField(), ccObject::setEnabled(), ccDrawableObject::setGLTransformation(), ccMesh::setMaterialSet(), ccPointCloud::setPointColor(), ccMesh::setTexCoordinatesTable(), ccMesh::setTriangleMtlIndex(), ccDrawableObject::sfShown(), ccDrawableObject::showColors(), ccGenericMesh::showMaterials(), ccGenericMesh::showNormals(), ccDrawableObject::showSF(), cloudViewer::PointCloudTpl< T >::size(), cloudViewer::ReferenceCloud::size(), size, ccMesh::size(), TexCoords2D::tx, TexCoords2D::ty, Tuple3Tpl< Type >::u, ccPointCloud::unallocateColors(), cloudViewer::SimpleMesh::vertices(), CVLog::Warning(), Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.

Referenced by CommandCrossSection::process(), and CommandCrop::process().


The documentation for this class was generated from the following files: