ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ccDrawableObject Class Referenceabstract

Generic interface for (3D) drawable entities. More...

#include <ecvDrawableObject.h>

Inheritance diagram for ccDrawableObject:
Collaboration diagram for ccDrawableObject:

Classes

struct  DisplayState
 Display state. More...
 

Public Member Functions

 ccDrawableObject ()
 Default constructor. More...
 
 ccDrawableObject (const ccDrawableObject &object)
 Copy constructor. More...
 
virtual ~ccDrawableObject ()=default
 
virtual void draw (CC_DRAW_CONTEXT &context)=0
 Draws entity and its children. More...
 
virtual bool isVisible () const
 Returns whether entity is visible or not. More...
 
virtual void setVisible (bool state)
 Sets entity visibility. More...
 
virtual void toggleVisibility ()
 Toggles visibility. More...
 
virtual bool isRedraw () const
 Returns whether entity is to be redraw. More...
 
virtual void setRedraw (bool state)
 Sets entity redraw mode. More...
 
virtual void setForceRedraw (bool state)
 Sets force redraw. More...
 
virtual void setFixedId (bool state)
 
virtual bool isFixedId ()
 
virtual bool isVisibilityLocked () const
 Returns whether visibility is locked or not. More...
 
virtual void lockVisibility (bool state)
 Locks/unlocks visibility. More...
 
virtual bool isSelected () const
 Returns whether entity is selected or not. More...
 
virtual void setSelected (bool state)
 Selects/Unselects entity. More...
 
virtual void getDrawingParameters (glDrawParams &params) const
 Returns main OpenGL parameters for this entity. More...
 
virtual bool hasColors () const
 Returns whether colors are enabled or not. More...
 
virtual bool colorsShown () const
 Returns whether colors are shown or not. More...
 
virtual void showColors (bool state)
 Sets colors visibility. More...
 
virtual void toggleColors ()
 Toggles colors display state. More...
 
virtual bool hasNormals () const
 Returns whether normals are enabled or not. More...
 
virtual bool normalsShown () const
 Returns whether normals are shown or not. More...
 
virtual void showNormals (bool state)
 Sets normals visibility. More...
 
virtual void toggleNormals ()
 Toggles normals display state. More...
 
virtual bool hasDisplayedScalarField () const
 Returns whether an active scalar field is available or not. More...
 
virtual bool hasScalarFields () const
 Returns whether one or more scalar fields are instantiated. More...
 
virtual void showSF (bool state)
 Sets active scalarfield visibility. More...
 
virtual void toggleSF ()
 Toggles SF display state. More...
 
virtual bool sfShown () const
 Returns whether active scalar field is visible. More...
 
virtual void toggleMaterials ()
 Toggles material display state. More...
 
virtual void showNameIn3D (bool state)
 Sets whether name should be displayed in 3D. More...
 
virtual bool nameShownIn3D () const
 Returns whether name is displayed in 3D or not. More...
 
virtual void toggleShowName ()
 Toggles name in 3D display state. More...
 
virtual bool isColorOverridden () const
 
virtual const ecvColor::RgbgetTempColor () const
 Returns current temporary (unique) color. More...
 
virtual void setTempColor (const ecvColor::Rgb &col, bool autoActivate=true)
 Sets current temporary (unique) More...
 
virtual void enableTempColor (bool state)
 Set temporary color activation state. More...
 
virtual float getOpacity () const
 
virtual void setOpacity (float opacity)
 Set opacity activation state. More...
 
virtual void setGLTransformation (const ccGLMatrix &trans)
 Associates entity with a GL transformation (rotation + translation) More...
 
virtual void enableGLTransformation (bool state)
 Enables/disables associated GL transformation. More...
 
virtual bool isGLTransEnabled () const
 Returns whether a GL transformation is enabled or not. More...
 
virtual const ccGLMatrixgetGLTransformation () const
 Returns associated GL transformation. More...
 
virtual void resetGLTransformation ()
 Resets associated GL transformation. More...
 
virtual void rotateGL (const ccGLMatrix &rotMat)
 Multiplies (left) current GL transformation by a rotation matrix. More...
 
virtual void translateGL (const CCVector3 &trans)
 Translates current GL transformation by a rotation matrix. More...
 
virtual void removeAllClipPlanes ()
 Removes all clipping planes (if any) More...
 
virtual bool addClipPlanes (const ccClipPlane &plane)
 Registers a new clipping plane. More...
 
virtual void toggleClipPlanes (CC_DRAW_CONTEXT &context, bool enable)
 Enables or disables clipping planes (OpenGL) More...
 
virtual bool pushDisplayState ()
 Pushes the current display state. More...
 
virtual void popDisplayState (bool apply=true)
 Pops the last pushed display state. More...
 
virtual void applyDisplayState (const DisplayState &state)
 Applies a display state. More...
 

Protected Attributes

bool m_fixedId
 
bool m_modelRedraw
 
bool m_forceRedraw
 
float m_opacity
 
bool m_visible
 Specifies whether the object is visible or not. More...
 
bool m_selected
 Specifies whether the object is selected or not. More...
 
bool m_lockedVisibility
 Specifies whether the visibility can be changed by user or not. More...
 
bool m_colorsDisplayed
 Specifies whether colors should be displayed. More...
 
bool m_normalsDisplayed
 Specifies whether normals should be displayed. More...
 
bool m_sfDisplayed
 Specifies whether scalar field should be displayed. More...
 
ecvColor::Rgb m_tempColor
 Temporary (unique) color. More...
 
bool m_colorIsOverridden
 Temporary (unique) color activation state. More...
 
ccGLMatrix m_glTrans
 Current GL transformation. More...
 
bool m_glTransEnabled
 Current GL transformation activation state. More...
 
bool m_showNameIn3D
 Whether name is displayed in 3D or not. More...
 
CCVector3d m_nameIn3DPos
 Last 2D position of the '3D' name. More...
 
ccClipPlaneSet m_clipPlanes
 Active clipping planes (used for display only) More...
 
std::vector< DisplayState::Sharedm_displayStateStack
 The stack of pushed display states. More...
 

Detailed Description

Generic interface for (3D) drawable entities.

Definition at line 24 of file ecvDrawableObject.h.

Constructor & Destructor Documentation

◆ ccDrawableObject() [1/2]

◆ ccDrawableObject() [2/2]

ccDrawableObject::ccDrawableObject ( const ccDrawableObject object)

Copy constructor.

Definition at line 29 of file ecvDrawableObject.cpp.

◆ ~ccDrawableObject()

virtual ccDrawableObject::~ccDrawableObject ( )
virtualdefault

Member Function Documentation

◆ addClipPlanes()

bool ccDrawableObject::addClipPlanes ( const ccClipPlane plane)
virtual

Registers a new clipping plane.

Returns
false if the planes couldn't be added (not enough memory)

Definition at line 95 of file ecvDrawableObject.cpp.

References m_clipPlanes.

Referenced by define_ccDrawableObject(), and ccClipBox::update().

◆ applyDisplayState()

◆ colorsShown()

◆ draw()

virtual void ccDrawableObject::draw ( CC_DRAW_CONTEXT context)
pure virtual

Draws entity and its children.

Implemented in GrainsAsEllipsoids, ccMouseCircle, ccMouseCircle, ecvOrientedBBox, ccHObject, and ccBBox.

Referenced by define_ccDrawableObject().

◆ enableGLTransformation()

void ccDrawableObject::enableGLTransformation ( bool  state)
virtual

◆ enableTempColor()

◆ getDrawingParameters()

void ccDrawableObject::getDrawingParameters ( glDrawParams params) const
virtual

Returns main OpenGL parameters for this entity.

These parameters are deduced from the visibility states of its different features (points, normals, etc.).

Parameters
paramsa glDrawParams structure

Reimplemented in ccPointCloud.

Definition at line 81 of file ecvDrawableObject.cpp.

References colorsShown(), hasColors(), hasDisplayedScalarField(), hasNormals(), isColorOverridden(), normalsShown(), sfShown(), glDrawParams::showColors, glDrawParams::showNorms, and glDrawParams::showSF.

Referenced by ccOctree::draw(), ccGenericMesh::drawMeOnly(), ccMesh::drawMeOnly(), and ccTrace::drawMeOnly().

◆ getGLTransformation()

virtual const ccGLMatrix& ccDrawableObject::getGLTransformation ( ) const
inlinevirtual

◆ getOpacity()

virtual float ccDrawableObject::getOpacity ( ) const
inlinevirtual

◆ getTempColor()

virtual const ecvColor::Rgb& ccDrawableObject::getTempColor ( ) const
inlinevirtual

◆ hasColors()

◆ hasDisplayedScalarField()

virtual bool ccDrawableObject::hasDisplayedScalarField ( ) const
inlinevirtual

◆ hasNormals()

◆ hasScalarFields()

◆ isColorOverridden()

◆ isFixedId()

virtual bool ccDrawableObject::isFixedId ( )
inlinevirtual

Definition at line 53 of file ecvDrawableObject.h.

Referenced by ccHObject::draw().

◆ isGLTransEnabled()

virtual bool ccDrawableObject::isGLTransEnabled ( ) const
inlinevirtual

Returns whether a GL transformation is enabled or not.

Definition at line 186 of file ecvDrawableObject.h.

Referenced by define_ccDrawableObject(), ccPropertiesTreeDelegate::fillModel(), ccClipBox::get(), and ccHObject::getAbsoluteGLTransformation().

◆ isRedraw()

virtual bool ccDrawableObject::isRedraw ( ) const
inlinevirtual

Returns whether entity is to be redraw.

Definition at line 46 of file ecvDrawableObject.h.

Referenced by cc2DLabel::drawMeOnly(), and ccFacet::drawMeOnly().

◆ isSelected()

◆ isVisibilityLocked()

virtual bool ccDrawableObject::isVisibilityLocked ( ) const
inlinevirtual

Returns whether visibility is locked or not.

Definition at line 56 of file ecvDrawableObject.h.

Referenced by ccFacet::clone(), define_ccDrawableObject(), ccPropertiesTreeDelegate::fillWithHObject(), and ccPolyline::importParametersFrom().

◆ isVisible()

◆ lockVisibility()

◆ nameShownIn3D()

virtual bool ccDrawableObject::nameShownIn3D ( ) const
inlinevirtual

◆ normalsShown()

◆ popDisplayState()

void ccDrawableObject::popDisplayState ( bool  apply = true)
virtual

Pops the last pushed display state.

Reimplemented in ccHObject.

Definition at line 165 of file ecvDrawableObject.cpp.

References applyDisplayState(), and m_displayStateStack.

◆ pushDisplayState()

bool ccDrawableObject::pushDisplayState ( )
virtual

Pushes the current display state.

Reimplemented in ccHObject.

Definition at line 154 of file ecvDrawableObject.cpp.

References m_displayStateStack, and CVLog::Warning().

◆ removeAllClipPlanes()

virtual void ccDrawableObject::removeAllClipPlanes ( )
inlinevirtual

Removes all clipping planes (if any)

Definition at line 218 of file ecvDrawableObject.h.

Referenced by define_ccDrawableObject(), ccClipBox::releaseAssociatedEntities(), and ccClipBox::update().

◆ resetGLTransformation()

void ccDrawableObject::resetGLTransformation ( )
virtual

Resets associated GL transformation.

GL transformation is reset to identity. Note: GL transformation is automatically disabled. See ccDrawableObject::setGLTransformation.

Definition at line 69 of file ecvDrawableObject.cpp.

References enableGLTransformation(), m_glTrans, and ccGLMatrixTpl< T >::toIdentity().

Referenced by ccHObject::applyGLTransformation_recursive(), ccGraphicalTransformationTool::cancel(), ccDrawableObject(), define_ccDrawableObject(), and ccClipBox::reset().

◆ rotateGL()

void ccDrawableObject::rotateGL ( const ccGLMatrix rotMat)
virtual

Multiplies (left) current GL transformation by a rotation matrix.

'GLtrans = M * GLtrans' Note: GL transformation is automatically enabled. See ccDrawableObject::setGLTransformation.

Definition at line 59 of file ecvDrawableObject.cpp.

References enableGLTransformation(), and m_glTrans.

Referenced by define_ccDrawableObject().

◆ setFixedId()

virtual void ccDrawableObject::setFixedId ( bool  state)
inlinevirtual

Definition at line 52 of file ecvDrawableObject.h.

Referenced by ccDrawableObject().

◆ setForceRedraw()

virtual void ccDrawableObject::setForceRedraw ( bool  state)
inlinevirtual

◆ setGLTransformation()

void ccDrawableObject::setGLTransformation ( const ccGLMatrix trans)
virtual

Associates entity with a GL transformation (rotation + translation)

Warning
FOR DISPLAY PURPOSE ONLY (i.e. should only be temporary) If the associated GL transformation is enabled (see ccDrawableObject::enableGLTransformation), it will be applied before displaying this entity. However it will not be taken into account by any cloudViewer algorithm (distance computation, etc.) for instance. Note: GL transformation is automatically enabled.

Definition at line 54 of file ecvDrawableObject.cpp.

References enableGLTransformation(), and m_glTrans.

Referenced by ccGraphicalTransformationTool::apply(), CorrespondenceMatching::applyTransformation(), TemplateAlignment::applyTransformation(), ccGenericPrimitive::applyTransformationToVertices(), ccCropTool::Crop(), define_ccDrawableObject(), JsonRPCPlugin::execute(), GetConeProfile(), PDMSFilter::loadFile(), qSRA::loadProfile(), and ccClipBox::set().

◆ setOpacity()

virtual void ccDrawableObject::setOpacity ( float  opacity)
inlinevirtual

Set opacity activation state.

Definition at line 163 of file ecvDrawableObject.h.

Referenced by ccDrawableObject(), ccFacet::Create(), and ccCameraSensor::drawMeOnly().

◆ setRedraw()

◆ setSelected()

◆ setTempColor()

◆ setVisible()

virtual void ccDrawableObject::setVisible ( bool  state)
inlinevirtual

Sets entity visibility.

Definition at line 40 of file ecvDrawableObject.h.

Referenced by ccPointPropertiesDlg::activate2DZonePicking(), ccPointPropertiesDlg::activateAngleDisplay(), ccPointPropertiesDlg::activateDistanceDisplay(), ccPointPropertiesDlg::activatePointPropertiesDisplay(), ecvAnnotationsTool::addAssociatedEntity(), ecvFilterTool::addAssociatedEntity(), ecvMeasurementTool::addAssociatedEntity(), ccGraphicalSegmentationTool::addEntity(), qCanupo2DViewDialog::addObject(), ccSensor::addPosition(), ccPointCloud::append(), applyDisplayState(), cc2DViewportLabel::cc2DViewportLabel(), ccCloudLayersDlg::ccCloudLayersDlg(), ccDrawableObject(), ccFacet::ccFacet(), ccGenericMesh::ccGenericMesh(), ccGenericPointCloud::ccGenericPointCloud(), ccHObject::ccHObject(), ccImage::ccImage(), ccKdTree::ccKdTree(), ccMouseCircle::ccMouseCircle(), ccOctreeProxy::ccOctreeProxy(), ccPointPairRegistrationDlg::ccPointPairRegistrationDlg(), ccPointPropertiesDlg::ccPointPropertiesDlg(), ccPolyline::ccPolyline(), ccPolyline::Circle(), ccCompass::cleanupBeforeToolChange(), cc2DLabel::clear(), DistanceMapGenerationDlg::clearView(), ccFacet::clone(), ccMesh::cloneMesh(), ccPointPropertiesDlg::close2DZone(), CorrespondenceMatching::compute(), NurbsCurveFitting::compute(), qM3C2Process::Compute(), qVoxFallProcess::Compute(), ccGriddedTools::ComputeBestSensor(), qSRA::computeCloud2ProfileRadialDist(), ccEntityAction::computeOctree(), ccTopologyRelation::constructGraphic(), contourPoly(), contourPoly2(), DistanceMapGenerationTool::ConvertConicalMapToMesh(), DistanceMapGenerationTool::ConvertProfileToMesh(), vtk2cc::ConvertToPolyline(), qFacets::createFacets(), CreateLabel(), ccMesh::createNewMeshFromSelection(), CC_ITEM_TREE::createPointLabel2D(), define_ccDrawableObject(), qCSF::doAction(), qPoissonRecon::doAction(), ecvDisplayTools::DrawPivot(), ccPointPropertiesDlg::exportCurrentLabel(), ccPointListPickingDlg::exportToNewPolyline(), ccCompass::exportToSVG(), ccContourExtractor::ExtractConcaveHull2D(), ccContourExtractor::ExtractFlatContour(), ccGenericPrimitive::finishCloneJob(), ccTraceTool::finishCurrentTrace(), ccRasterizeTool::generateMesh(), ecvTools::GetClousterGroup(), cvContourTool::getOutput(), cvDistanceTool::getOutput(), cvProtractorTool::getOutput(), ecvTools::GetPolylines(), ecvTools::GetSegmentationGroup(), GrainsAsEllipsoids::GrainsAsEllipsoids(), ccCompass::hideAllPointClouds(), ccPolyline::importParametersFrom(), ccPointPairRegistrationDlg::init(), ccPointPropertiesDlg::initializeState(), ccPointPropertiesDlg::linkWith(), IcmFilter::LoadCalibratedImages(), AsciiFilter::loadCloudFromFormatedAsciiStream(), CSVMatrixFilter::loadFile(), PhotoScanFilter::loadFile(), PcdFilter::loadFile(), ObjFilter::loadFile(), PTXFilter::loadFile(), VTKFilter::loadFile(), PovFilter::loadFile(), SinusxFilter::loadFile(), PDMSFilter::loadFile(), DRCFilter::loadFile(), RDBFilter::loadFile(), LoadImage(), DistanceMapGenerationDlg::loadOverlaySymbols(), LoadScan(), ccMesh::merge(), QVTKWidgetCustom::mouseMoveEvent(), MainWindow::onItemPicked(), ccThicknessTool::onNewSelection(), ccPointCloud::operator=(), ccMesh::partialClone(), ccTraceTool::pickupTrace(), ccFitPlaneTool::pointPicked(), ccLineationTool::pointPicked(), ccTraceTool::pointPicked(), CommandRasterize::process(), CommandVolume25D::process(), ccPointPropertiesDlg::processClickedPoint(), ccPointListPickingDlg::processPickedPoint(), ccPointPropertiesDlg::processPickedPoint(), ecvDisplayTools::ProcessPickingResult(), ccNormalComputationDlg::setCloud(), qM3C2Dialog::setCloud1Visibility(), qM3C2Dialog::setCloud2Visibility(), ccAlignDlg::setColorsAndLabels(), ccOrderChoiceDlg::setColorsAndLabels(), qVoxFallDialog::setMesh1Visibility(), qVoxFallDialog::setMesh2Visibility(), ccGenericPointCloud::setOctree(), ccCloudLayersHelper::setVisible(), ecvPoissonReconDlg::start(), ccMesh::subdivide(), DistanceMapGenerationDlg::toggleOverlayGrid(), ccFitPlaneTool::toolActivated(), ccFitPlaneTool::toolDisactivated(), ccThicknessTool::toolDisactivated(), ccMesh::TriangulateTwoPolylines(), ccCompass::tryLoading(), DistanceMapGenerationDlg::update(), ccPointPropertiesDlg::update2DZone(), ccComparisonDlg::updateDisplay(), StereogramDialog::updateFacetsFilter(), ccRegistrationDlg::updateGUI(), and FastGlobalRegistrationDialog::updateGUI().

◆ sfShown()

◆ showColors()

virtual void ccDrawableObject::showColors ( bool  state)
inlinevirtual

Sets colors visibility.

Definition at line 84 of file ecvDrawableObject.h.

Referenced by ccRasterizeTool::activeLayerChanged(), ccRasterizeTool::addNewContour(), ecvTools::AddPointCloud(), ccPointCloud::append(), applyDisplayState(), ccCloudLayersHelper::ccCloudLayersHelper(), ccCoordinateSystem::ccCoordinateSystem(), ccDrawableObject(), ccGraphicalSegmentationTool::ccGraphicalSegmentationTool(), ccMesh::ccMesh(), ccPolyline::ccPolyline(), ccSubMesh::ccSubMesh(), ccMesh::cloneMesh(), ExtractSIFT::compute(), GeneralFilters::compute(), ProjectionFilter::compute(), CorrespondenceMatching::compute(), TemplateAlignment::compute(), qSRA::computeCloud2ProfileRadialDist(), contourPoly(), contourPoly2(), ccKdTree::convertCellIndexToRandomColor(), ccRasterizeTool::convertGridToCloud(), ccEntityAction::convertNormalsTo(), ccEntityAction::convertTextureToColor(), vtk2cc::ConvertToMultiPolylines(), vtk2cc::ConvertToPointCloud(), vtk2cc::ConvertToPolyline(), pcl2cc::CopyRGB(), copyRGBColors(), ccFacet::Create(), ccMesh::createNewMeshFromSelection(), ccSubMesh::createNewSubMeshFromSelection(), ccCropTool::Crop(), define_ccDrawableObject(), qPoissonRecon::doAction(), ecvDisplayTools::DrawPivot(), ccCompass::estimateStrain(), ccRasterizeTool::exportContourLines(), GrainsAsEllipsoids::exportResultsAsCloud(), ccGenericPrimitive::finishCloneJob(), ccPointCloud::From(), FromFbxMesh(), ccRasterizeTool::generateMesh(), ecvTools::GetClousterGroup(), ecvTools::GetPolylines(), ccRegistrationTools::ICP(), ccPolyline::importParametersFrom(), ccEntityAction::interpolateColors(), ProfileLoader::Load(), LoadCloud(), CSVMatrixFilter::loadFile(), PTXFilter::loadFile(), VTKFilter::loadFile(), SoiFilter::loadFile(), DRCFilter::loadFile(), LASFWFFilter::loadFile(), LASFilter::loadFile(), RDBFilter::loadFile(), PlyFilter::loadFile(), LoadScan(), ccMesh::merge(), QVTKWidgetCustom::mouseMoveEvent(), ccColorFromScalarDlg::onApply(), ccPointCloud::operator=(), ccCameraSensor::orthoRectifyAsCloud(), ccMesh::partialClone(), prepareCloud(), CommandSFConvertToRGB::process(), CommandRemoveRGB::process(), CommandRasterize::process(), CommandVolume25D::process(), cloudViewer::io::ReadTriangleMeshFromOBJ(), qCanupo2DViewDialog::resetBoundary(), ResolveNormalsWithMST(), ccEntityAction::rgbToGreyScale(), ccGenericMesh::samplePoints(), ccEntityAction::setColor(), ccFacet::setColor(), ccEntityAction::sfConvertToRandomRGB(), ccEntityAction::sfConvertToRGB(), ccMesh::SimplifyVertexClustering(), ecvPoissonReconDlg::start(), ccMesh::subdivide(), DistanceMapGenerationDlg::toggleOverlayGrid(), qCanupo2DViewDialog::trainClassifier(), qCanupoTools::TrainClassifier(), ccPointCloud::triangulateGrid(), ccPointCloud::unallocateColors(), GrainsAsEllipsoids::updateMeshAndLineSet(), and ccCloudLayersHelper::~ccCloudLayersHelper().

◆ showNameIn3D()

◆ showNormals()

◆ showSF()

virtual void ccDrawableObject::showSF ( bool  state)
inlinevirtual

Sets active scalarfield visibility.

Definition at line 108 of file ecvDrawableObject.h.

Referenced by ccRasterizeTool::activeLayerChanged(), LasCloudChunk::addLasFieldsToCloud(), ecvTools::AddPointCloud(), ccPointCloud::append(), ccComparisonDlg::applyAndExit(), ccLibAlgorithms::ApplyCCLibAlgorithm(), applyDisplayState(), ccComparisonDlg::cancelAndExit(), ccCloudLayersHelper::ccCloudLayersHelper(), ccDrawableObject(), ccMesh::ccMesh(), ccSubMesh::ccSubMesh(), masc::Classifier::classify(), qCanupoProcess::Classify(), ccMesh::cloneMesh(), ExtractSIFT::compute(), GeneralFilters::compute(), ProjectionFilter::compute(), CorrespondenceMatching::compute(), TemplateAlignment::compute(), qM3C2Process::Compute(), qVoxFallProcess::Compute(), ccComparisonDlg::computeApproxDistances(), ccComparisonDlg::computeDistances(), ccLibAlgorithms::ComputeGeomCharacteristic(), DistanceMapGenerationTool::ComputeRadialDist(), ccKdTree::convertCellIndexToSF(), ccVolumeCalcTool::convertGridToCloud(), ccVolumeCalcTool::ConvertGridToCloud(), ccRasterizeTool::convertGridToCloud(), DistanceMapGenerationTool::ConvertMapToCloud(), ccEntityAction::convertNormalsTo(), ccEntityAction::convertTextureToColor(), vtk2cc::ConvertToMultiPolylines(), vtk2cc::ConvertToPointCloud(), pcl2cc::CopyScalarField(), copyScalarFields(), ccMesh::createNewMeshFromSelection(), ccSubMesh::createNewSubMeshFromSelection(), ccMeasurementDevice::createScalarFieldForCloud(), ccCropTool::Crop(), define_ccDrawableObject(), ccPointCloud::deleteAllScalarFields(), ccPointCloud::deleteScalarField(), qPCV::doAction(), qPoissonRecon::doAction(), ccCompass::estimateStructureNormals(), masc::Classifier::evaluate(), ecvAnnotationsTool::exportAnnotationToSF(), ccPointCloud::exportCoordToSF(), ccPointCloud::exportNormalToSF(), qFacets::extractFacets(), TreeIso::Final_seg_pcd(), ccGenericPrimitive::finishCloneJob(), ccPointCloud::From(), ccRasterizeTool::generateHillshade(), ccRasterizeTool::generateMesh(), ecvTools::GetClousterGroup(), getMortarMaps(), ccRegistrationTools::ICP(), ccEntityAction::importToSF(), TreeIso::Init_seg_pcd(), TreeIso::Intermediate_seg_pcd(), ccEntityAction::interpolateColors(), ccEntityAction::interpolateSFs(), LoadCloud(), AsciiFilter::loadCloudFromFormatedAsciiStream(), PTXFilter::loadFile(), VTKFilter::loadFile(), LASFWFFilter::loadFile(), RDBFilter::loadFile(), PlyFilter::loadFile(), LoadScan(), ccMesh::merge(), ccColorFromScalarDlg::onApply(), ccPointCloud::operator=(), ccFastMarchingForNormsDirection::OrientNormals(), ccMesh::partialClone(), ccGenericPointCloud::pointPicking(), CommandSFConvertToRGB::process(), CommandRemoveAllSFs::process(), CommandStatTest::process(), CommandRasterize::process(), CommandVolume25D::process(), PCVCommand::Process(), CommandRemoveSF::removeSF(), ResolveNormalsWithMST(), ccEntityAction::rgbGaussianFilter(), ccEntityAction::rgbToGreyScale(), ccEntityAction::setColor(), ccEntityAction::sfAddIdField(), ccEntityAction::sfArithmetic(), ccEntityAction::sfConvertToRandomRGB(), ccEntityAction::sfGaussianFilter(), ecvPoissonReconDlg::start(), ccEntityAction::statisticalTest(), ccPointCloud::triangulateGrid(), ccPointCloud::unroll(), ccComparisonDlg::updateDisplay(), and ccCloudLayersHelper::~ccCloudLayersHelper().

◆ toggleClipPlanes()

void ccDrawableObject::toggleClipPlanes ( CC_DRAW_CONTEXT context,
bool  enable 
)
virtual

Enables or disables clipping planes (OpenGL)

Warning
If enabling the clipping planes, be sure to call this method AFTER the model view matrix has been set.

Definition at line 106 of file ecvDrawableObject.cpp.

References m_clipPlanes.

Referenced by define_ccDrawableObject(), and ccHObject::draw().

◆ toggleColors()

virtual void ccDrawableObject::toggleColors ( )
inlinevirtual

Toggles colors display state.

Definition at line 86 of file ecvDrawableObject.h.

Referenced by define_ccDrawableObject(), and ccDBRoot::toggleSelectedEntitiesProperty().

◆ toggleMaterials()

virtual void ccDrawableObject::toggleMaterials ( )
inlinevirtual

Toggles material display state.

Reimplemented in ccMesh.

Definition at line 121 of file ecvDrawableObject.h.

Referenced by define_ccDrawableObject().

◆ toggleNormals()

virtual void ccDrawableObject::toggleNormals ( )
inlinevirtual

Toggles normals display state.

Definition at line 95 of file ecvDrawableObject.h.

Referenced by define_ccDrawableObject(), and ccDBRoot::toggleSelectedEntitiesProperty().

◆ toggleSF()

virtual void ccDrawableObject::toggleSF ( )
inlinevirtual

Toggles SF display state.

Definition at line 114 of file ecvDrawableObject.h.

Referenced by define_ccDrawableObject(), and ccDBRoot::toggleSelectedEntitiesProperty().

◆ toggleShowName()

virtual void ccDrawableObject::toggleShowName ( )
inlinevirtual

Toggles name in 3D display state.

Definition at line 131 of file ecvDrawableObject.h.

Referenced by define_ccDrawableObject(), and ccDBRoot::toggleSelectedEntitiesProperty().

◆ toggleVisibility()

virtual void ccDrawableObject::toggleVisibility ( )
inlinevirtual

Toggles visibility.

Definition at line 43 of file ecvDrawableObject.h.

Referenced by define_ccDrawableObject(), and ccDBRoot::toggleSelectedEntitiesProperty().

◆ translateGL()

void ccDrawableObject::translateGL ( const CCVector3 trans)
virtual

Translates current GL transformation by a rotation matrix.

'GLtrans = GLtrans + T' Note: GL transformation is automatically enabled. See ccDrawableObject::setGLTransformation.

Definition at line 64 of file ecvDrawableObject.cpp.

References enableGLTransformation(), and m_glTrans.

Referenced by define_ccDrawableObject().

Member Data Documentation

◆ m_clipPlanes

ccClipPlaneSet ccDrawableObject::m_clipPlanes
protected

Active clipping planes (used for display only)

Definition at line 300 of file ecvDrawableObject.h.

Referenced by addClipPlanes(), ccHObject::draw(), and toggleClipPlanes().

◆ m_colorIsOverridden

bool ccDrawableObject::m_colorIsOverridden
protected

Temporary (unique) color activation state.

Definition at line 283 of file ecvDrawableObject.h.

Referenced by applyDisplayState().

◆ m_colorsDisplayed

bool ccDrawableObject::m_colorsDisplayed
protected

Specifies whether colors should be displayed.

Definition at line 274 of file ecvDrawableObject.h.

Referenced by applyDisplayState().

◆ m_displayStateStack

std::vector<DisplayState::Shared> ccDrawableObject::m_displayStateStack
protected

The stack of pushed display states.

Definition at line 303 of file ecvDrawableObject.h.

Referenced by popDisplayState(), ccHObject::popDisplayState(), pushDisplayState(), and ccHObject::pushDisplayState().

◆ m_fixedId

bool ccDrawableObject::m_fixedId
protected

Definition at line 257 of file ecvDrawableObject.h.

◆ m_forceRedraw

bool ccDrawableObject::m_forceRedraw
protected

Definition at line 259 of file ecvDrawableObject.h.

Referenced by ccHObject::draw().

◆ m_glTrans

◆ m_glTransEnabled

bool ccDrawableObject::m_glTransEnabled
protected

◆ m_lockedVisibility

bool ccDrawableObject::m_lockedVisibility
protected

Specifies whether the visibility can be changed by user or not.

Definition at line 271 of file ecvDrawableObject.h.

◆ m_modelRedraw

bool ccDrawableObject::m_modelRedraw
protected

Definition at line 258 of file ecvDrawableObject.h.

◆ m_nameIn3DPos

CCVector3d ccDrawableObject::m_nameIn3DPos
protected

Last 2D position of the '3D' name.

Definition at line 297 of file ecvDrawableObject.h.

Referenced by ccHObject::draw(), ccHObject::drawNameIn3D(), and ccHObject::updateNameIn3DRecursive().

◆ m_normalsDisplayed

bool ccDrawableObject::m_normalsDisplayed
protected

Specifies whether normals should be displayed.

Definition at line 276 of file ecvDrawableObject.h.

Referenced by applyDisplayState(), ccGenericMesh::drawMeOnly(), and ccMesh::drawMeOnly().

◆ m_opacity

float ccDrawableObject::m_opacity
protected

Definition at line 260 of file ecvDrawableObject.h.

◆ m_selected

bool ccDrawableObject::m_selected
protected

Specifies whether the object is selected or not.

Definition at line 268 of file ecvDrawableObject.h.

Referenced by ccHObject::draw(), cc2DViewportLabel::drawMeOnly(), and ccClipBox::drawMeOnly().

◆ m_sfDisplayed

bool ccDrawableObject::m_sfDisplayed
protected

Specifies whether scalar field should be displayed.

Definition at line 278 of file ecvDrawableObject.h.

Referenced by applyDisplayState().

◆ m_showNameIn3D

bool ccDrawableObject::m_showNameIn3D
protected

Whether name is displayed in 3D or not.

Definition at line 295 of file ecvDrawableObject.h.

Referenced by applyDisplayState(), ccHObject::draw(), and ccHObject::minimumFileVersion_MeOnly().

◆ m_tempColor

ecvColor::Rgb ccDrawableObject::m_tempColor
protected

◆ m_visible

bool ccDrawableObject::m_visible
protected

Specifies whether the object is visible or not.

Note: this does not influence the children visibility

Definition at line 265 of file ecvDrawableObject.h.

Referenced by applyDisplayState(), and ccHObject::draw().


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