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

#include <ecvDisplayTools.h>

Inheritance diagram for ecvDisplayTools:
Collaboration diagram for ecvDisplayTools:

Classes

struct  CaptureModeOptions
 Display capturing mode options. More...
 
struct  ClickableItem
 Clickable item. More...
 
struct  HotZone
 Precomputed stuff for the 'hot zone'. More...
 
struct  MessageToDisplay
 Temporary Message to display in the lower-left corner. More...
 
struct  PickingParameters
 Picking parameters. More...
 
struct  ProjectionMetrics
 Optional output metrics (from computeProjectionMatrix) More...
 

Public Types

enum  PICKING_MODE {
  NO_PICKING , ENTITY_PICKING , ENTITY_RECT_PICKING , FAST_PICKING ,
  POINT_PICKING , TRIANGLE_PICKING , POINT_OR_TRIANGLE_PICKING , POINT_OR_TRIANGLE_OR_LABEL_PICKING ,
  LABEL_PICKING , DEFAULT_PICKING
}
 Picking mode. More...
 
enum  INTERACTION_FLAG {
  INTERACT_NONE = 0 , INTERACT_ROTATE = 1 , INTERACT_PAN = 2 , INTERACT_CTRL_PAN = 4 ,
  INTERACT_ZOOM_CAMERA = 8 , INTERACT_2D_ITEMS = 16 , INTERACT_CLICKABLE_ITEMS = 32 , INTERACT_TRANSFORM_ENTITIES = 64 ,
  INTERACT_SIG_RB_CLICKED = 128 , INTERACT_SIG_LB_CLICKED = 256 , INTERACT_SIG_MOUSE_MOVED , INTERACT_SIG_BUTTON_RELEASED = 1024 ,
  INTERACT_SIG_MB_CLICKED = 2048 , INTERACT_SEND_ALL_SIGNALS , MODE_PAN_ONLY , MODE_TRANSFORM_CAMERA = INTERACT_ROTATE | MODE_PAN_ONLY ,
  MODE_TRANSFORM_ENTITIES
}
 Interaction flags (mostly with the mouse) More...
 
enum  MessagePosition { LOWER_LEFT_MESSAGE , UPPER_CENTER_MESSAGE , SCREEN_CENTER_MESSAGE }
 Default message positions on screen. More...
 
enum  MessageType {
  CUSTOM_MESSAGE , SCREEN_SIZE_MESSAGE , PERSPECTIVE_STATE_MESSAGE , SUN_LIGHT_STATE_MESSAGE ,
  CUSTOM_LIGHT_STATE_MESSAGE , MANUAL_TRANSFORMATION_MESSAGE , MANUAL_SEGMENTATION_MESSAGE , ROTAION_LOCK_MESSAGE ,
  FULL_SCREEN_MESSAGE
}
 Message type. More...
 
enum  PivotVisibility { PIVOT_HIDE , PIVOT_SHOW_ON_MOVE , PIVOT_ALWAYS_SHOW }
 Pivot symbol visibility. More...
 
- Public Types inherited from ecvGenericDisplayTools
enum  TextAlign {
  ALIGN_HLEFT = 1 , ALIGN_HMIDDLE = 2 , ALIGN_HRIGHT = 4 , ALIGN_VTOP = 8 ,
  ALIGN_VMIDDLE = 16 , ALIGN_VBOTTOM = 32 , ALIGN_DEFAULT = 1 | 8
}
 Text alignment. More...
 

Public Slots

void onItemPickedFast (ccHObject *pickedEntity, int pickedItemIndex, int x, int y)
 Reacts to the itemPickedFast signal. More...
 
void onPointPicking (const CCVector3 &p, int index, const std::string &id)
 
void checkScheduledRedraw ()
 Checks for scheduled redraw. More...
 
void doPicking ()
 
void onWheelEvent (float wheelDelta_deg)
 

Signals

void entitySelectionChanged (ccHObject *entity)
 Signal emitted when an entity is selected in the 3D view. More...
 
void entitiesSelectionChanged (std::unordered_set< int > entIDs)
 Signal emitted when multiple entities are selected in the 3D view. More...
 
void itemPicked (ccHObject *entity, unsigned subEntityID, int x, int y, const CCVector3 &P)
 Signal emitted when a point (or a triangle) is picked. More...
 
void itemPickedFast (ccHObject *entity, int subEntityID, int x, int y)
 Signal emitted when an item is picked (FAST_PICKING mode only) More...
 
void fastPickingFinished ()
 Signal emitted when fast picking is finished (FAST_PICKING mode only) More...
 
void viewMatRotated (const ccGLMatrixd &rotMat)
 
void cameraDisplaced (float ddx, float ddy)
 Signal emitted when the camera is interactively displaced. More...
 
void mouseWheelRotated (float wheelDelta_deg)
 Signal emitted when the mouse wheel is rotated. More...
 
void mouseWheelChanged (QWheelEvent *event)
 
void perspectiveStateChanged ()
 
void baseViewMatChanged (const ccGLMatrixd &newViewMat)
 Signal emitted when the window 'base view' matrix is changed. More...
 
void pixelSizeChanged (float pixelSize)
 Signal emitted when the pixel size is changed. More...
 
void fovChanged (float fov)
 Signal emitted when the f.o.v. changes. More...
 
void zNearCoefChanged (float coef)
 Signal emitted when the zNear coef changes. More...
 
void pivotPointChanged (const CCVector3d &)
 Signal emitted when the pivot point is changed. More...
 
void cameraPosChanged (const CCVector3d &)
 Signal emitted when the camera position is changed. More...
 
void translation (const CCVector3d &t)
 Signal emitted when the selected object is translated by the user. More...
 
void rotation (const ccGLMatrixd &rotMat)
 Signal emitted when the selected object is rotated by the user. More...
 
void leftButtonClicked (int x, int y)
 Signal emitted when the left mouse button is cliked on the window. More...
 
void rightButtonClicked (int x, int y)
 Signal emitted when the right mouse button is cliked on the window. More...
 
void doubleButtonClicked (int x, int y)
 Signal emitted when the double mouse button is cliked on the window. More...
 
void mouseMoved (int x, int y, Qt::MouseButtons buttons)
 Signal emitted when the mouse is moved. More...
 
void buttonReleased ()
 Signal emitted when a mouse button is released (cursor on the window) More...
 
void drawing3D ()
 Signal emitted during 3D pass of OpenGL display process. More...
 
void filesDropped (const QStringList &filenames, bool displayDialog)
 Signal emitted when files are dropped on the window. More...
 
void newLabel (ccHObject *obj)
 Signal emitted when a new label is created. More...
 
void exclusiveFullScreenToggled (bool exclusive)
 Signal emitted when the exclusive fullscreen is toggled. More...
 
void autoPickPivot (bool state)
 
void labelmove2D (int x, int y, int dx, int dy)
 
void mousePosChanged (const QPoint &pos)
 
void pointPicked (double x, double y, double z)
 
void cameraParamChanged ()
 

Public Member Functions

virtual ~ecvDisplayTools () override
 Destructor. More...
 
void scheduleFullRedraw (unsigned maxDelay_ms)
 Schedules a full redraw. More...
 
void cancelScheduledRedraw ()
 Cancels any scheduled redraw. More...
 
virtual void displayText (const CC_DRAW_CONTEXT &CONTEXT)
 
virtual void draw (const CC_DRAW_CONTEXT &context, const ccHObject *obj)
 
virtual void updateMeshTextures (const CC_DRAW_CONTEXT &context, const ccGenericMesh *mesh)
 
virtual void drawBBox (const CC_DRAW_CONTEXT &context, const ccBBox *bbox)
 
virtual void drawOrientedBBox (const CC_DRAW_CONTEXT &context, const ecvOrientedBBox *obb)
 
virtual void changeEntityProperties (PROPERTY_PARAM &propertyParam)
 
virtual void drawWidgets (const WIDGETS_PARAMETER &param)
 
virtual void drawCoordinates (double scale=1.0, const std::string &id="reference", int viewport=0)
 
virtual void rotateWithAxis (const CCVector2i &pos, const CCVector3d &axis, double angle, int viewport=0)
 
virtual void toggleOrientationMarker (bool state=true)
 
virtual bool orientationMarkerShown ()
 
virtual void setDataAxesGridProperties (const QString &viewID, const AxesGridProperties &props, int viewport=0)
 Set Data Axes Grid properties (Virtual interface for derived classes) More...
 
virtual void getDataAxesGridProperties (const QString &viewID, AxesGridProperties &props, int viewport=0) const
 Get Data Axes Grid properties (Virtual interface for derived classes) More...
 
virtual void setViewAxesGridVisible (bool visible, int viewport=0)
 
virtual void setViewAxesGridProperties (bool visible, const CCVector3 &color, double lineWidth, double spacing, int subdivisions, bool showLabels, double opacity, int viewport=0)
 
virtual void getViewAxesGridProperties (bool &visible, CCVector3 &color, double &lineWidth, double &spacing, int &subdivisions, bool &showLabels, double &opacity, int viewport=0) const
 Get view axes grid properties. More...
 
virtual void setCenterAxesVisible (bool visible, int viewport=0)
 
virtual void toggleCameraOrientationWidget (bool show)
 
virtual bool isCameraOrientationWidgetShown () const
 
virtual void setLightIntensity (double intensity)
 
virtual double getLightIntensity () const
 
virtual ecvGenericVisualizer3DgetVisualizer3D ()
 
virtual ecvGenericVisualizer2DgetVisualizer2D ()
 
virtual void transformCameraView (const ccGLMatrixd &viewMat)
 
virtual void transformCameraProjection (const ccGLMatrixd &projMat)
 
virtual void setRenderWindowSize (int xw, int yw)
 
virtual void fullScreen (bool state)
 
virtual void zoomCamera (double zoomFactor, int viewport=0)
 
virtual double getCameraFocalDistance (int viewport=0)
 
virtual void setCameraFocalDistance (double focal_distance, int viewport=0)
 
virtual void getCameraPos (double *pos, int viewport=0)
 
virtual void getCameraFocal (double *focal, int viewport=0)
 
virtual void getCameraUp (double *up, int viewport=0)
 
virtual void setCameraPosition (const CCVector3d &pos, int viewport=0)
 
virtual void setCameraPosition (const double *pos, const double *focal, const double *up, int viewport=0)
 
virtual void setCameraPosition (const double *pos, const double *up, int viewport=0)
 
virtual void setCameraPosition (double pos_x, double pos_y, double pos_z, double view_x, double view_y, double view_z, double up_x, double up_y, double up_z, int viewport=0)
 
virtual void getCameraClip (double *clipPlanes, int viewport=0)
 
virtual void setCameraClip (double znear, double zfar, int viewport=0)
 
virtual void resetCameraClippingRange (int viewport=0)
 
virtual double getCameraFovy (int viewport=0)
 
virtual void setCameraFovy (double fovy, int viewport=0)
 
virtual void saveScreenshot (const std::string &file)
 
virtual void saveCameraParameters (const std::string &file)
 
virtual void loadCameraParameters (const std::string &file)
 
virtual void showOrientationMarker ()
 
virtual void setOrthoProjection (int viewport=0)
 
virtual void setPerspectiveProjection (int viewport=0)
 
virtual void setUseVbos (bool useVbos)
 
virtual void setLookUpTableID (const std::string &viewID)
 
virtual void getProjectionMatrix (double *projArray, int viewport=0)
 
virtual void getViewMatrix (double *viewArray, int viewport=0)
 
virtual void setViewMatrix (const ccGLMatrixd &viewMat, int viewport=0)
 
virtual bool hideShowEntities (const CC_DRAW_CONTEXT &CONTEXT)
 
virtual void removeEntities (const CC_DRAW_CONTEXT &CONTEXT)
 
virtual QString pick2DLabel (int x, int y)
 
virtual QString pick3DItem (int x=-1, int y=-1)
 
virtual QString pickObject (double x=-1, double y=-1)
 
virtual void setBackgroundColor (const CC_DRAW_CONTEXT &CONTEXT)
 
virtual void createViewPort (double xmin, double ymin, double xmax, double ymax, int &viewport)
 
virtual void resetCameraViewpoint (const std::string &viewID)
 
virtual void toggle2Dviewer (bool state)
 
virtual void resetCamera (const ccBBox *bbox)
 
virtual void resetCamera ()
 
virtual void updateCamera ()
 
virtual void updateScene ()
 
virtual void setAutoUpateCameraPos (bool state)
 
virtual void getCenterOfRotation (double center[3])
 
virtual void resetCenterOfRotation (int viewport=0)
 
virtual void setCenterOfRotation (double x, double y, double z)
 
virtual double getGLDepth (int x, int y)
 
virtual void changeOpacity (double opacity, const std::string &viewID, int viewport=0)
 
virtual QImage renderToImage (int zoomFactor=1, bool renderOverlayItems=false, bool silent=false, int viewport=0)
 
virtual void setScaleBarVisible (bool visible)
 
virtual void toggleExclusiveFullScreen (bool state)
 
virtual bool getPerspectiveState (int viewport=0) const override
 
virtual void setPivotVisibility (bool state)
 
virtual double getParallelScale (int viewport=0)
 
virtual void setParallelScale (double scale, int viewport=0)
 
- Public Member Functions inherited from ecvGenericDisplayTools
virtual ~ecvGenericDisplayTools ()
 Default destructor. More...
 
virtual void toWorldPoint (const CCVector3d &input2D, CCVector3d &output3D)
 
virtual void toWorldPoint (const CCVector3 &input2D, CCVector3d &output3D)
 
virtual void toDisplayPoint (const CCVector3d &input3D, CCVector3d &output2D)
 
virtual void toDisplayPoint (const CCVector3 &input3D, CCVector3d &output2D)
 

Static Public Member Functions

static void Init (ecvDisplayTools *displayTools, QMainWindow *win, bool stereoMode=false)
 
static ecvDisplayToolsTheInstance ()
 
static void ReleaseInstance ()
 
static INTERACTION_FLAGS PAN_ONLY ()
 
static INTERACTION_FLAGS TRANSFORM_CAMERA ()
 
static INTERACTION_FLAGS TRANSFORM_ENTITIES ()
 
static void DisplayText (const QString &text, int x, int y, unsigned char align=ALIGN_DEFAULT, float bkgAlpha=0.0f, const unsigned char *rgbColor=nullptr, const QFont *font=nullptr, const QString &id="")
 Displays a string at a given 2D position. More...
 
static void DisplayText (const CC_DRAW_CONTEXT &CONTEXT)
 
static void Display3DLabel (const QString &str, const CCVector3 &pos3D, const ecvColor::Rgbub *color=nullptr, const QFont &font=QFont())
 Displays a string at a given 3D position. More...
 
static void SetFocusToScreen ()
 Draws the main 3D layer. More...
 
static void ToBeRefreshed ()
 
static void RefreshDisplay (bool only2D=false, bool forceRedraw=true)
 
static void RedrawDisplay (bool only2D=false, bool forceRedraw=true)
 
static void CheckIfRemove ()
 
static void Draw (const CC_DRAW_CONTEXT &context, const ccHObject *obj)
 
static void UpdateMeshTextures (const CC_DRAW_CONTEXT &context, const ccGenericMesh *mesh)
 
static void DrawBBox (const CC_DRAW_CONTEXT &context, const ccBBox *bbox)
 
static void DrawOrientedBBox (const CC_DRAW_CONTEXT &context, const ecvOrientedBBox *obb)
 
static void RemoveBB (CC_DRAW_CONTEXT context)
 
static void RemoveBB (const QString &viewId)
 
static void ChangeEntityProperties (PROPERTY_PARAM &propertyParam, bool autoUpdate=true)
 
static void DrawWidgets (const WIDGETS_PARAMETER &param, bool update=false)
 
static void RemoveWidgets (const WIDGETS_PARAMETER &param, bool update=false)
 
static void RemoveAllWidgets (bool update=true)
 
static void Remove3DLabel (const QString &view_id)
 
static void DrawCoordinates (double scale=1.0, const std::string &id="reference", int viewport=0)
 
static void RotateWithAxis (const CCVector2i &pos, const CCVector3d &axis, double angle, int viewport=0)
 
static void ToggleOrientationMarker (bool state=true)
 
static bool OrientationMarkerShown ()
 
static void SetDataAxesGridProperties (const QString &viewID, const AxesGridProperties &props, int viewport=0)
 Set Data Axes Grid properties (Unified Interface) Each ccHObject has its own Data Axes Grid bound to its viewID. More...
 
static void GetDataAxesGridProperties (const QString &viewID, AxesGridProperties &props, int viewport=0)
 Get Data Axes Grid properties (Unified Interface) More...
 
static void SetViewAxesGridVisible (bool visible, int viewport=0)
 Enable/disable view axes grid (aligned with camera/view) More...
 
static void SetViewAxesGridProperties (bool visible, const CCVector3 &color, double lineWidth, double spacing, int subdivisions, bool showLabels, double opacity, int viewport=0)
 Configure view axes grid properties. More...
 
static void SetCenterAxesVisible (bool visible, int viewport=0)
 Enable/disable center axes visualization. More...
 
static void ToggleCameraOrientationWidget (bool show)
 
static bool IsCameraOrientationWidgetShown ()
 Check if Camera Orientation Widget is shown. More...
 
static void SetLightIntensity (double intensity)
 
static double GetLightIntensity ()
 
static ecvGenericVisualizer3DGetVisualizer3D ()
 
static ecvGenericVisualizer2DGetVisualizer2D ()
 
static QWidget * GetCurrentScreen ()
 
static void SetCurrentScreen (QWidget *widget)
 
static QWidget * GetMainScreen ()
 
static void SetMainScreen (QWidget *widget)
 
static QMainWindow * GetMainWindow ()
 
static void SetMainWindow (QMainWindow *win)
 
static QPointF ToCenteredGLCoordinates (int x, int y)
 
static CCVector3d ToVtkCoordinates (int x, int y, int z=0)
 
static void ToVtkCoordinates (CCVector3d &sP)
 
static void ToVtkCoordinates (CCVector2i &sP)
 
static ccHObjectGetOwnDB ()
 Returns window own DB. More...
 
static void AddToOwnDB (ccHObject *obj, bool noDependency=true)
 Adds an entity to window own DB. More...
 
static void RemoveFromOwnDB (ccHObject *obj)
 Removes an entity from window own DB. More...
 
static void SetSceneDB (ccHObject *root)
 
static ccHObjectGetSceneDB ()
 
static void UpdateNamePoseRecursive ()
 
static void SetRedrawRecursive (bool redraw=false)
 
static void SetRedrawRecursive (ccHObject *obj, bool redraw=false)
 
static void GetVisibleObjectsBB (ccBBox &box)
 Returns the visible objects bounding-box. More...
 
static void RotateBaseViewMat (const ccGLMatrixd &rotMat)
 Rotates the base view matrix. More...
 
static ccGLMatrixdGetBaseViewMat ()
 
static void SetBaseViewMat (ccGLMatrixd &mat)
 
static void SetRemoveViewIDs (std::vector< removeInfo > &removeinfos)
 
static void SetRemoveAllFlag (bool state)
 
static void TransformCameraView (const ccGLMatrixd &viewMat)
 
static void TransformCameraProjection (const ccGLMatrixd &projMat)
 
static int GetDevicePixelRatio ()
 
static int GetOptimizedFontSize (int baseFontSize=12)
 
static double GetPlatformAwareDPIScale ()
 
static QRect GetScreenRect ()
 
static void SetScreenSize (int xw, int yw)
 
static void DoResize (int xw, int yw)
 
static void DoResize (const QSize &size)
 
static QSize GetScreenSize ()
 
static void SetRenderWindowSize (int xw, int yw)
 
static void FullScreen (bool state)
 
static void ZoomCamera (double zoomFactor, int viewport=0)
 
static double GetCameraFocalDistance (int viewport=0)
 
static void SetCameraFocalDistance (double focal_distance, int viewport=0)
 
static void GetCameraPos (double *pos, int viewport=0)
 
static void GetCameraFocal (double *focal, int viewport=0)
 
static void GetCameraUp (double *up, int viewport=0)
 
static void SetCameraPosition (const CCVector3d &pos, int viewport=0)
 
static void SetCameraPosition (const double *pos, const double *focal, const double *up, int viewport=0)
 
static void SetCameraPosition (const double *pos, const double *up, int viewport=0)
 
static void SetCameraPosition (double pos_x, double pos_y, double pos_z, double view_x, double view_y, double view_z, double up_x, double up_y, double up_z, int viewport=0)
 
static void GetCameraClip (double *clipPlanes, int viewport=0)
 
static void SetCameraClip (double znear, double zfar, int viewport=0)
 
static void ResetCameraClippingRange (int viewport=0)
 
static double GetCameraFovy (int viewport=0)
 
static void SetCameraFovy (double fovy, int viewport=0)
 
static void GetViewerPos (int *viewPos, int viewport=0)
 
static void SaveScreenshot (const std::string &file)
 Save the current rendered image to disk, as a PNG screenshot. More...
 
static void SaveCameraParameters (const std::string &file)
 Save or Load the current rendered camera parameters to disk or current camera. More...
 
static void LoadCameraParameters (const std::string &file)
 
static void ShowOrientationMarker ()
 
static void SetOrthoProjection (int viewport=0)
 
static void SetPerspectiveProjection (int viewport=0)
 
static void SetUseVbos (bool useVbos)
 Use Vertex Buffer Objects renderers. This is an optimization for the obsolete OpenGL backend. Modern OpenGL2 backend (VTK \A1\DD 6.3) uses vertex buffer objects by default, transparently for the user. More...
 
static void SetLookUpTableID (const std::string &viewID)
 Set the ID of a cloud or shape to be used for LUT display. More...
 
static void GetProjectionMatrix (double *projArray, int viewport=0)
 
static void GetViewMatrix (double *viewArray, int viewport=0)
 
static void SetViewMatrix (const ccGLMatrixd &viewMat, int viewport=0)
 
static bool HideShowEntities (const ccHObject *obj, bool visible)
 
static bool HideShowEntities (const CC_DRAW_CONTEXT &CONTEXT)
 
static void HideShowEntities (const QStringList &viewIDs, ENTITY_TYPE hideShowEntityType, bool visibility=false)
 
static void RemoveEntities (const ccHObject *obj)
 
static void RemoveEntities (const QStringList &viewIDs, ENTITY_TYPE removeEntityType)
 
static void RemoveEntities (const CC_DRAW_CONTEXT &CONTEXT)
 
static void DrawBackground (CC_DRAW_CONTEXT &CONTEXT)
 
static void DrawForeground (CC_DRAW_CONTEXT &CONTEXT)
 
static void Update2DLabel (bool immediateUpdate=false)
 
static void Pick2DLabel (int x, int y)
 
static void Redraw2DLabel ()
 
static QString Pick3DItem (int x=-1, int y=-1)
 
static QString PickObject (double x=-1, double y=-1)
 
static void FilterByEntityType (ccHObject::Container &labels, CV_CLASS_ENUM type)
 
static void CreateViewPort (double xmin, double ymin, double xmax, double ymax, int &viewport)
 Create a new viewport from [xmin,ymin] -> [xmax,ymax]. More...
 
static void ResetCameraViewpoint (const std::string &viewID)
 
static void SetPointSize (float size, bool silent=false, int viewport=0)
 
static void SetPointSizeRecursive (int size)
 
static void SetLineWidth (float width, bool silent=false, int viewport=0)
 Sets line width. More...
 
static void SetLineWithRecursive (PointCoordinateType with)
 
static void Toggle2Dviewer (bool state)
 
static void DisplayNewMessage (const QString &message, MessagePosition pos, bool append=false, int displayMaxDelay_sec=2, MessageType type=CUSTOM_MESSAGE)
 Displays a status message in the bottom-left corner. More...
 
static const ecvGui::ParamStructGetDisplayParameters ()
 Returns current parameters for this display (const version) More...
 
static void SetDisplayParameters (const ecvGui::ParamStruct &params)
 Sets current parameters for this display. More...
 
static void UpdateDisplayParameters ()
 
static void SetupProjectiveViewport (const ccGLMatrixd &cameraMatrix, float fov_deg=0.0f, float ar=1.0f, bool viewerBasedPerspective=true, bool bubbleViewMode=false)
 
static void SetAspectRatio (float ar)
 Sets current camera aspect ratio (width/height) More...
 
static void ResizeGL (int w, int h)
 Sets current zoom. More...
 
static void UpdateScreenSize ()
 
static void Update ()
 
static void UpdateScreen ()
 
static void ResetCamera (const ccBBox *bbox)
 
static void ResetCamera ()
 
static void UpdateCamera ()
 
static void UpdateScene ()
 
static void SetAutoUpateCameraPos (bool state)
 
static void GetCenterOfRotation (double center[3])
 
static void GetCenterOfRotation (CCVector3d &center)
 
static void ResetCenterOfRotation (int viewport=0)
 
static void SetCenterOfRotation (double x, double y, double z)
 
static void SetCenterOfRotation (const double xyz[3])
 
static void SetCenterOfRotation (const CCVector3d &center)
 
static double GetGLDepth (int x, int y)
 
static void ChangeOpacity (double opacity, const std::string &viewID, int viewport=0)
 
static CCVector3d ConvertMousePositionToOrientation (int x, int y)
 Converts a given (mouse) position in pixels to an orientation. More...
 
static void UpdateActiveItemsList (int x, int y, bool extendToSelectedLabels=false)
 Updates currently active items list (m_activeItems) More...
 
static void SetGLViewport (int x, int y, int w, int h)
 Sets the OpenGL viewport (shortut) More...
 
static void SetGLViewport (const QRect &rect)
 Sets the OpenGL viewport. More...
 
static void drawCross ()
 
static void drawTrihedron ()
 
static bool RenderToFile (QString filename, float zoomFactor=1.0f, bool dontScaleFeatures=false, bool renderOverlayItems=false)
 Renders screen to a file. More...
 
static QImage RenderToImage (int zoomFactor=1, bool renderOverlayItems=false, bool silent=false, int viewport=0)
 
static void SetScaleBarVisible (bool visible)
 
static void DisplayTexture2DPosition (QImage image, const QString &id, int x, int y, int w, int h, unsigned char alpha=255)
 
static void DrawClickableItems (int xStart, int &yStart)
 
static void RenderText (int x, int y, const QString &str, const QFont &font=QFont(), const ecvColor::Rgbub &color=ecvColor::defaultLabelBkgColor, const QString &id="")
 
static void RenderText (double x, double y, double z, const QString &str, const QFont &font=QFont(), const ecvColor::Rgbub &color=ecvColor::defaultLabelBkgColor, const QString &id="")
 
static void ToggleExclusiveFullScreen (bool state)
 Toggles (exclusive) full-screen mode. More...
 
static bool ExclusiveFullScreen ()
 Returns whether the window is in exclusive full screen mode or not. More...
 
static void SetExclusiveFullScreenFlage (bool state)
 
static void SetPixelSize (float pixelSize)
 Sets pixel size (i.e. zoom base) More...
 
static void UpdateConstellationCenterAndZoom (const ccBBox *aBox=nullptr, bool redraw=true)
 Center and zoom on a given bounding box. More...
 
static void GetContext (CC_DRAW_CONTEXT &CONTEXT)
 Returns context information. More...
 
static void GetGLCameraParameters (ccGLCameraParameters &params)
 Returns the current OpenGL camera parameters. More...
 
static void SetInteractionMode (INTERACTION_FLAGS flags)
 
static INTERACTION_FLAGS GetInteractionMode ()
 Returns the current interaction flags. More...
 
static void SetView (CC_VIEW_ORIENTATION orientation, ccBBox *bbox)
 
static void SetView (CC_VIEW_ORIENTATION orientation, bool forceRedraw=false)
 
static ccGLMatrixd GenerateViewMat (CC_VIEW_ORIENTATION orientation)
 
static void SetPerspectiveState (bool state, bool objectCenteredView)
 Set perspective state/mode. More...
 
static bool GetPerspectiveState (int viewport=0)
 
static bool ObjectPerspectiveEnabled ()
 Shortcut: returns whether object-based perspective mode is enabled. More...
 
static bool ViewerPerspectiveEnabled ()
 Shortcut: returns whether viewer-based perspective mode is enabled. More...
 
static float ComputePerspectiveZoom ()
 
static void SetFov (float fov)
 Sets current camera f.o.v. (field of view) in degrees. More...
 
static float GetFov ()
 Returns the current f.o.v. (field of view) in degrees. More...
 
static void ZoomGlobal ()
 
static CCVector3d GetCurrentViewDir ()
 Returns current viewing direction. More...
 
static CCVector3d GetCurrentUpDir ()
 Returns current up direction. More...
 
static void SetCameraPos (const CCVector3d &P)
 Sets camera position. More...
 
static void MoveCamera (float dx, float dy, float dz)
 Displaces camera. More...
 
static void MoveCamera (const CCVector3d &v)
 Displaces camera. More...
 
static void SetPickingMode (PICKING_MODE mode=DEFAULT_PICKING)
 
static PICKING_MODE GetPickingMode ()
 
static void LockPickingMode (bool state)
 Locks picking mode. More...
 
static bool IsPickingModeLocked ()
 Returns whether picking mode is locked or not. More...
 
static void SetZoom (float value)
 Sets current zoom. More...
 
static void UpdateZoom (float zoomFactor)
 Updates current zoom. More...
 
static void SetPivotPoint (const CCVector3d &P, bool autoUpdateCameraPos=false, bool verbose=false)
 Sets pivot point. More...
 
static void SetPivotVisibility (PivotVisibility vis)
 Sets pivot visibility. More...
 
static void SetPivotVisibility (bool state)
 
static PivotVisibility GetPivotVisibility ()
 Returns pivot visibility. More...
 
static void ShowPivotSymbol (bool state)
 Shows or hide the pivot symbol. More...
 
static void SetViewportParameters (const ecvViewportParameters &params)
 
static const ecvViewportParametersGetViewportParameters ()
 
static double GetParallelScale (int viewport=0)
 
static void SetParallelScale (double scale, int viewport=0)
 
static ccGLMatrixdGetModelViewMatrix ()
 
static ccGLMatrixdGetProjectionMatrix ()
 
static void UpdateModelViewMatrix ()
 
static void UpdateProjectionMatrix ()
 
static ccGLMatrixd ComputeModelViewMatrix ()
 Computes the model view matrix. More...
 
static ccGLMatrixd ComputeProjectionMatrix (bool withGLfeatures, ProjectionMetrics *metrics=nullptr, double *eyeOffset=nullptr)
 Computes the projection matrix. More...
 
static void Deprecate3DLayer ()
 
static void InvalidateViewport ()
 
static void InvalidateVisualization ()
 
static CCVector3d GetRealCameraCenter ()
 
static double ComputeActualPixelSize ()
 
static bool IsRectangularPickingAllowed ()
 Returns whether rectangular picking is allowed or not. More...
 
static void SetRectangularPickingAllowed (bool state)
 Sets whether rectangular picking is allowed or not. More...
 
static void SetBubbleViewMode (bool state)
 Sets bubble-view mode state. More...
 
static bool BubbleViewModeEnabled ()
 Returns whether bubble-view mode is enabled or no. More...
 
static void SetBubbleViewFov (float fov_deg)
 Set bubble-view f.o.v. (in degrees) More...
 
static void ShowCursorCoordinates (bool state)
 
static bool CursorCoordinatesShown ()
 
static void SetAutoPickPivotAtCenter (bool state)
 
static void SendAutoPickPivotAtCenter (bool state)
 
static bool AutoPickPivotAtCenter ()
 Whether the pivot point is automatically set at the center of the screen. More...
 
static void LockRotationAxis (bool state, const CCVector3d &axis)
 Lock the rotation axis. More...
 
static bool IsRotationAxisLocked ()
 Returns whether the rotation axis is locaked or not. More...
 
static bool GetClick3DPos (int x, int y, CCVector3d &P3D)
 Returns the approximate 3D position of the clicked pixel. More...
 
static void DrawPivot ()
 
static void EnableDebugTrace (bool state)
 Shows debug info on screen. More...
 
static void ToggleDebugTrace ()
 Toggles debug info on screen. More...
 
static bool ProcessClickableItems (int x, int y)
 Processes the clickable items. More...
 
static void SetZNearCoef (double coef)
 Sets current camera 'zNear' coefficient. More...
 
static void StartPicking (PickingParameters &params)
 Starts picking process. More...
 
static ccHObjectGetPickedEntity (const PickingParameters &params)
 
static void StartOpenGLPicking (const PickingParameters &params)
 Performs the picking with OpenGL. More...
 
static void StartCPUBasedPointPicking (const PickingParameters &params)
 Starts OpenGL picking process. More...
 
static void ProcessPickingResult (const PickingParameters &params, ccHObject *pickedEntity, int pickedItemIndex, const CCVector3 *nearestPoint=nullptr, const std::unordered_set< int > *selectedIDs=nullptr)
 Processes the picking process result and sends the corresponding signal. More...
 
static void SetFontPointSize (int pixelSize)
 Sets current font size. More...
 
static int GetFontPointSize ()
 Returns current font size. More...
 
static int GetLabelFontPointSize ()
 Returns current font size for labels. More...
 
static void SetClickableItemsVisible (bool state)
 
static bool GetClickableItemsVisible ()
 
static QFont GetLabelDisplayFont ()
 
static QFont GetTextDisplayFont ()
 
static ENTITY_TYPE ConvertToEntityType (const CV_CLASS_ENUM &type)
 
static void SetPickingRadius (int radius)
 Sets picking radius. More...
 
static int GetPickingRadius ()
 Returns the current picking radius. More...
 
static void DisplayOverlayEntities (bool state)
 
static bool OverlayEntitiesAreDisplayed ()
 
static int Width ()
 
static int Height ()
 
static QSize size ()
 
static int GlWidth ()
 Returns the OpenGL context width. More...
 
static int GlHeight ()
 Returns the OpenGL context height. More...
 
static QSize GlSize ()
 Returns the OpenGL context size. More...
 
static void ClearBubbleView ()
 
- Static Public Member Functions inherited from ecvGenericDisplayTools
static ecvGenericDisplayToolsGetInstance ()
 
static void SetInstance (ecvGenericDisplayTools *tool)
 
static int FontSizeModifier (int fontSize, float zoomFactor)
 
static bool GetPerspectiveState ()
 Returns perspective mode. More...
 
template<typename iType , typename oType >
static void ToWorldPoint (const Vector3Tpl< iType > &input2D, Vector3Tpl< oType > &output3D)
 
template<typename iType , typename oType >
static void ToDisplayPoint (const Vector3Tpl< iType > &input3D, Vector3Tpl< oType > &output2D)
 
static ccGLMatrixd Frustum (double left, double right, double bottom, double top, double znear, double zfar)
 
static ccGLMatrixd Perspective (double fovyInDegrees, double aspectRatio, double znear, double zfar)
 
static ccGLMatrixd Ortho (double left, double right, double bottom, double top, double nearVal, double farVal)
 
static ccGLMatrixd Ortho (double w, double h, double d)
 
template<typename iType , typename oType >
static bool Project (const Vector3Tpl< iType > &input3D, const oType *modelview, const oType *projection, const int *viewport, Vector3Tpl< oType > &output2D, bool *inFrustum=nullptr)
 
static double MAT (const double *m, int r, int c)
 
static float MAT (const float *m, int r, int c)
 
static double & MAT (double *m, int r, int c)
 
static floatMAT (float *m, int r, int c)
 
template<typename Type >
static bool InvertMatrix (const Type *m, Type *out)
 
template<typename iType , typename oType >
static bool Unproject (const Vector3Tpl< iType > &input2D, const oType *modelview, const oType *projection, const int *viewport, Vector3Tpl< oType > &output3D)
 
static void PickMatrix (double x, double y, double width, double height, int viewport[4], double m[16])
 

Public Attributes

std::list< MessageToDisplaym_messagesToDisplay
 List of messages to display. More...
 
std::list< ccInteractor * > m_activeItems
 Currently active items. More...
 
ecvViewportParameters m_viewportParams
 Viewport parameters (zoom, etc.) More...
 
std::vector< ClickableItemm_clickableItems
 Currently displayed clickable items. More...
 
bool m_clickableItemsVisible
 Whether clickable items are visible (= mouse over) or not. More...
 
INTERACTION_FLAGS m_interactionFlags
 Current intercation flags. More...
 
PICKING_MODE m_pickingMode
 
bool m_pickingModeLocked
 Whether picking mode is locked or not. More...
 
QElapsedTimer m_timer
 Internal timer. More...
 
bool m_touchInProgress
 Touch event in progress. More...
 
qreal m_touchBaseDist
 Touch gesture initial distance. More...
 
QTimer m_scheduleTimer
 Scheduler timer. More...
 
qint64 m_scheduledFullRedrawTime
 Scheduled full redraw (no LOD) More...
 
ecvGui::ParamStruct m_overridenDisplayParameters
 Overridden display parameter. More...
 
bool m_displayOverlayEntities
 Whether to display overlay entities or not (scale, tetrahedron, etc.) More...
 
bool m_overridenDisplayParametersEnabled
 Whether display parameters are overidden for this window. More...
 
bool m_exclusiveFullscreen
 Wether exclusive full screen is enabled or not. More...
 
bool m_showCursorCoordinates
 
bool m_autoPickPivotAtCenter
 
bool m_shouldBeRefreshed
 Whether the display should be refreshed on next call to 'refresh'. More...
 
CCVector3d m_autoPivotCandidate
 Candidate pivot point (will be used when the mouse is released) More...
 
QRect m_glViewport
 viewport More...
 
bool m_showDebugTraces
 Debug traces visibility. More...
 
int m_pickRadius
 Picking radius (pixels) More...
 
bool m_autoRefresh
 Auto-refresh mode. More...
 
bool m_rotationAxisLocked
 Wheter the rotation axis is locked or not. More...
 
CCVector3d m_lockedRotationAxis
 Locked rotation axis. More...
 
ccGLMatrixd m_viewMatd
 Complete visualization matrix (GL style - double version) More...
 
bool m_validModelviewMatrix
 Whether the model veiw matrix is valid (or need to be recomputed) More...
 
ccGLMatrixd m_projMatd
 Projection matrix (GL style - double version) More...
 
bool m_validProjectionMatrix
 Whether the projection matrix is valid (or need to be recomputed) More...
 
double m_cameraToBBCenterDist
 Distance between the camera and the displayed objects bounding-box. More...
 
double m_bbHalfDiag
 Half size of the displayed objects bounding-box. More...
 
PivotVisibility m_pivotVisibility
 Pivot symbol visibility. More...
 
bool m_pivotSymbolShown
 Whether pivot symbol should be shown or not. More...
 
bool m_allowRectangularEntityPicking
 Whether rectangular picking is allowed or not. More...
 
ccPolylinem_rectPickingPoly
 Rectangular picking polyline. More...
 
cloudViewer::geometry::LineSetm_scale_lineset
 
ccHObjectm_winDBRoot
 Window own DB. More...
 
ccHObjectm_globalDBRoot
 CV main DB. More...
 
bool m_removeFlag
 
bool m_removeAllFlag
 
std::vector< removeInfom_removeInfos
 
bool m_alwaysUseFBO
 Whether to always use FBO or only for GL filters. More...
 
bool m_updateFBO
 
float m_sunLightPos [4]
 Sun light position. More...
 
bool m_sunLightEnabled
 Whether sun light is enabled or not. More...
 
float m_customLightPos [4]
 Custom light position. More...
 
bool m_customLightEnabled
 Whether custom light is enabled or not. More...
 
bool m_bubbleViewModeEnabled
 Bubble-view mode state. More...
 
float m_bubbleViewFov_deg
 Bubble-view mode f.o.v. (degrees) More...
 
ecvViewportParameters m_preBubbleViewParameters
 Pre-bubble-view camera parameters (backup) More...
 
int m_uniqueID
 Unique ID. More...
 
QFont m_font
 Default font. More...
 
CaptureModeOptions m_captureMode
 Display capturing mode options. More...
 
QTimer m_deferredPickingTimer
 Deferred picking. More...
 
CCVector3 m_last_picked_point
 
int m_last_point_index = -1
 
QString m_last_picked_id = QString()
 
qint64 m_lastClickTime_ticks
 Last click time (msec) More...
 
HotZonem_hotZone
 Hot zone. More...
 
QPoint m_lastMousePos
 Last mouse position. More...
 
QPoint m_lastMouseMovePos
 
QStringList m_diagStrings
 
bool m_mouseMoved
 Whether the mouse (cursor) has moved after being pressed or not. More...
 
bool m_mouseButtonPressed
 Whether the mouse is currently pressed or not. More...
 
bool m_ignoreMouseReleaseEvent
 Ignore next mouse release event. More...
 
bool m_widgetClicked
 

Static Public Attributes

static const int DefaultPickRadius = 5
 Default picking radius value. More...
 
static bool USE_2D = true
 
static bool USE_VTK_PICK = false
 

Protected Member Functions

 ecvDisplayTools ()=default
 
virtual void registerVisualizer (QMainWindow *win, bool stereoMode=false)=0
 register visualizer callback function More...
 
- Protected Member Functions inherited from ecvGenericDisplayTools
 ecvGenericDisplayTools ()
 Default constructor. More...
 

Protected Attributes

QWidget * m_currentScreen
 
QWidget * m_mainScreen
 
QMainWindow * m_win
 

Detailed Description

Definition at line 88 of file ecvDisplayTools.h.

Member Enumeration Documentation

◆ INTERACTION_FLAG

Interaction flags (mostly with the mouse)

Enumerator
INTERACT_NONE 
INTERACT_ROTATE 
INTERACT_PAN 
INTERACT_CTRL_PAN 
INTERACT_ZOOM_CAMERA 
INTERACT_2D_ITEMS 
INTERACT_CLICKABLE_ITEMS 
INTERACT_TRANSFORM_ENTITIES 
INTERACT_SIG_RB_CLICKED 
INTERACT_SIG_LB_CLICKED 
INTERACT_SIG_MOUSE_MOVED 
INTERACT_SIG_BUTTON_RELEASED 
INTERACT_SIG_MB_CLICKED 
INTERACT_SEND_ALL_SIGNALS 
MODE_PAN_ONLY 
MODE_TRANSFORM_CAMERA 
MODE_TRANSFORM_ENTITIES 

Definition at line 131 of file ecvDisplayTools.h.

◆ MessagePosition

Default message positions on screen.

Enumerator
LOWER_LEFT_MESSAGE 
UPPER_CENTER_MESSAGE 
SCREEN_CENTER_MESSAGE 

Definition at line 175 of file ecvDisplayTools.h.

◆ MessageType

Message type.

Enumerator
CUSTOM_MESSAGE 
SCREEN_SIZE_MESSAGE 
PERSPECTIVE_STATE_MESSAGE 
SUN_LIGHT_STATE_MESSAGE 
CUSTOM_LIGHT_STATE_MESSAGE 
MANUAL_TRANSFORMATION_MESSAGE 
MANUAL_SEGMENTATION_MESSAGE 
ROTAION_LOCK_MESSAGE 
FULL_SCREEN_MESSAGE 

Definition at line 182 of file ecvDisplayTools.h.

◆ PICKING_MODE

Picking mode.

Enumerator
NO_PICKING 
ENTITY_PICKING 
ENTITY_RECT_PICKING 
FAST_PICKING 
POINT_PICKING 
TRIANGLE_PICKING 
POINT_OR_TRIANGLE_PICKING 
POINT_OR_TRIANGLE_OR_LABEL_PICKING 
LABEL_PICKING 
DEFAULT_PICKING 

Definition at line 117 of file ecvDisplayTools.h.

◆ PivotVisibility

Pivot symbol visibility.

Enumerator
PIVOT_HIDE 
PIVOT_SHOW_ON_MOVE 
PIVOT_ALWAYS_SHOW 

Definition at line 195 of file ecvDisplayTools.h.

Constructor & Destructor Documentation

◆ ~ecvDisplayTools()

ecvDisplayTools::~ecvDisplayTools ( )
overridevirtual

Destructor.

Definition at line 251 of file ecvDisplayTools.cpp.

References cancelScheduledRedraw(), m_hotZone, m_rectPickingPoly, and m_winDBRoot.

◆ ecvDisplayTools()

ecvDisplayTools::ecvDisplayTools ( )
protecteddefault

Member Function Documentation

◆ AddToOwnDB()

◆ autoPickPivot

void ecvDisplayTools::autoPickPivot ( bool  state)
signal

◆ AutoPickPivotAtCenter()

static bool ecvDisplayTools::AutoPickPivotAtCenter ( )
inlinestatic

Whether the pivot point is automatically set at the center of the screen.

Definition at line 1669 of file ecvDisplayTools.h.

References m_autoPickPivotAtCenter.

Referenced by ecvCameraParamEditDlg::ecvCameraParamEditDlg().

◆ baseViewMatChanged

void ecvDisplayTools::baseViewMatChanged ( const ccGLMatrixd newViewMat)
signal

Signal emitted when the window 'base view' matrix is changed.

◆ BubbleViewModeEnabled()

static bool ecvDisplayTools::BubbleViewModeEnabled ( )
inlinestatic

Returns whether bubble-view mode is enabled or no.

Definition at line 1645 of file ecvDisplayTools.h.

References m_bubbleViewModeEnabled.

◆ buttonReleased

void ecvDisplayTools::buttonReleased ( )
signal

Signal emitted when a mouse button is released (cursor on the window)

See INTERACT_SIG_BUTTON_RELEASED.

Referenced by ccPointPropertiesDlg::linkWith(), and QVTKWidgetCustom::mouseReleaseEvent().

◆ cameraDisplaced

void ecvDisplayTools::cameraDisplaced ( float  ddx,
float  ddy 
)
signal

Signal emitted when the camera is interactively displaced.

◆ cameraParamChanged

void ecvDisplayTools::cameraParamChanged ( )
signal

◆ cameraPosChanged

void ecvDisplayTools::cameraPosChanged ( const CCVector3d )
signal

Signal emitted when the camera position is changed.

◆ cancelScheduledRedraw()

void ecvDisplayTools::cancelScheduledRedraw ( )

Cancels any scheduled redraw.

Definition at line 292 of file ecvDisplayTools.cpp.

References m_scheduledFullRedrawTime, and m_scheduleTimer.

Referenced by ~ecvDisplayTools().

◆ changeEntityProperties()

virtual void ecvDisplayTools::changeEntityProperties ( PROPERTY_PARAM propertyParam)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 449 of file ecvDisplayTools.h.

◆ ChangeEntityProperties()

void ecvDisplayTools::ChangeEntityProperties ( PROPERTY_PARAM propertyParam,
bool  autoUpdate = true 
)
static

◆ ChangeOpacity()

static void ecvDisplayTools::ChangeOpacity ( double  opacity,
const std::string &  viewID,
int  viewport = 0 
)
inlinestatic

Definition at line 1320 of file ecvDisplayTools.h.

References changeOpacity().

◆ changeOpacity()

virtual void ecvDisplayTools::changeOpacity ( double  opacity,
const std::string &  viewID,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1326 of file ecvDisplayTools.h.

Referenced by ChangeOpacity().

◆ CheckIfRemove()

void ecvDisplayTools::CheckIfRemove ( )
static

◆ checkScheduledRedraw

void ecvDisplayTools::checkScheduledRedraw ( )
slot

Checks for scheduled redraw.

Definition at line 267 of file ecvDisplayTools.cpp.

References m_messagesToDisplay, m_scheduledFullRedrawTime, m_timer, RemoveWidgets(), and WIDGET_T2D.

Referenced by Init().

◆ ClearBubbleView()

void ecvDisplayTools::ClearBubbleView ( )
static

Definition at line 3545 of file ecvDisplayTools.cpp.

References RemoveWidgets(), s_tools, and WIDGET_T2D.

Referenced by DisplayOverlayEntities(), and DrawClickableItems().

◆ ComputeActualPixelSize()

double ecvDisplayTools::ComputeActualPixelSize ( )
static

Returns the actual pixel size on screen (taking zoom or perspective parameters into account) In perspective mode, this value is approximate.

Definition at line 2770 of file ecvDisplayTools.cpp.

References cloudViewer::DegreesToRadians(), GetFov(), and s_tools.

Referenced by qCanupo2DViewDialog::addOrSelectPoint(), ComputeProjectionMatrix(), define_ccDisplayTools(), GetContext(), QVTKWidgetCustom::mouseMoveEvent(), qCanupo2DViewDialog::removePoint(), and QVTKWidgetCustom::updateActivateditems().

◆ ComputeModelViewMatrix()

ccGLMatrixd ecvDisplayTools::ComputeModelViewMatrix ( )
static

Computes the model view matrix.

Definition at line 1784 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by UpdateModelViewMatrix().

◆ ComputePerspectiveZoom()

float ecvDisplayTools::ComputePerspectiveZoom ( )
static

Returns the zoom value equivalent to the current camera position (perspective only)

Definition at line 1586 of file ecvDisplayTools.cpp.

References cloudViewer::DegreesToRadians(), GetFov(), cloudViewer::LessThanEpsilon(), and s_tools.

Referenced by SetPerspectiveState(), and UpdateDisplayParameters().

◆ ComputeProjectionMatrix()

ccGLMatrixd ecvDisplayTools::ComputeProjectionMatrix ( bool  withGLfeatures,
ProjectionMetrics metrics = nullptr,
double *  eyeOffset = nullptr 
)
static

Computes the projection matrix.

Parameters
[in]withGLfeatureswhether to take additional elements (pivot symbol, custom light, etc.) into account or not
[out]metrics[optional] output other metrics (Znear and Zfar, etc.)
[out]eyeOffset[optional] eye offset (for stereo display)

Definition at line 1625 of file ecvDisplayTools.cpp.

References ecvDisplayTools::ProjectionMetrics::bbHalfDiag, ecvDisplayTools::ProjectionMetrics::cameraToBBCenterDist, CC_DISPLAYED_PIVOT_RADIUS_PERCENT, ComputeActualPixelSize(), Vector3Tpl< double >::fromArray(), ecvGenericDisplayTools::Frustum(), cloudViewer::BoundingBoxTpl< T >::getCenter(), cloudViewer::BoundingBoxTpl< T >::getDiagNormd(), GetVisibleObjectsBB(), cloudViewer::BoundingBoxTpl< T >::isValid(), Vector3Tpl< Type >::normd(), ecvGenericDisplayTools::Ortho(), PIVOT_HIDE, s_tools, Tuple3Tpl< Type >::u, and ZERO_TOLERANCE_D.

Referenced by UpdateProjectionMatrix().

◆ ConvertMousePositionToOrientation()

CCVector3d ecvDisplayTools::ConvertMousePositionToOrientation ( int  x,
int  y 
)
static

Converts a given (mouse) position in pixels to an orientation.

The orientation vector origin is the current pivot point!

Definition at line 1289 of file ecvDisplayTools.cpp.

References GetGLCameraParameters(), Height(), ccGLCameraParameters::project(), s_tools, Width(), Tuple3Tpl< Type >::x, x, Tuple3Tpl< Type >::y, y, and Tuple3Tpl< Type >::z.

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ ConvertToEntityType()

◆ CreateViewPort()

static void ecvDisplayTools::CreateViewPort ( double  xmin,
double  ymin,
double  xmax,
double  ymax,
int &  viewport 
)
inlinestatic

Create a new viewport from [xmin,ymin] -> [xmax,ymax].

Parameters
[in]xminthe minimum X coordinate for the viewport (0.0 <= 1.0)
[in]yminthe minimum Y coordinate for the viewport (0.0 <= 1.0)
[in]xmaxthe maximum X coordinate for the viewport (0.0 <= 1.0)
[in]ymaxthe maximum Y coordinate for the viewport (0.0 <= 1.0)
[in]viewportthe id of the new viewport
Note
If no renderer for the current window exists, one will be created, and the viewport will be set to 0 ('all'). In case one or multiple renderers do exist, the viewport ID will be set to the total number of renderers - 1.

Definition at line 1164 of file ecvDisplayTools.h.

References createViewPort().

◆ createViewPort()

virtual void ecvDisplayTools::createViewPort ( double  xmin,
double  ymin,
double  xmax,
double  ymax,
int &  viewport 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1168 of file ecvDisplayTools.h.

Referenced by CreateViewPort().

◆ CursorCoordinatesShown()

static bool ecvDisplayTools::CursorCoordinatesShown ( )
inlinestatic

Whether the coordinates of the point below the cursor position are displayed or not

Definition at line 1658 of file ecvDisplayTools.h.

References m_showCursorCoordinates.

◆ Deprecate3DLayer()

◆ Display3DLabel()

void ecvDisplayTools::Display3DLabel ( const QString &  str,
const CCVector3 pos3D,
const ecvColor::Rgbub color = nullptr,
const QFont &  font = QFont() 
)
static

Displays a string at a given 3D position.

This method should be called solely during 3D pass rendering (see paintGL).

Parameters
strstring
pos3D3D position of string origin
rgbColorcolor (optional: if let to 0, default text rendering color is used)
fontfont (optional)

Definition at line 3436 of file ecvDisplayTools.cpp.

References color, GetDisplayParameters(), RenderText(), Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.

Referenced by define_ccDisplayTools().

◆ DisplayNewMessage()

void ecvDisplayTools::DisplayNewMessage ( const QString &  message,
MessagePosition  pos,
bool  append = false,
int  displayMaxDelay_sec = 2,
MessageType  type = CUSTOM_MESSAGE 
)
static

Displays a status message in the bottom-left corner.

WARNING: currently, 'append' is not supported for SCREEN_CENTER_MESSAGE

Parameters
messagemessage (if message is empty and append is 'false', all messages will be cleared)
posmessage position on screen
appendwhether to append the message or to replace existing one(s) (only messages of the same type are impacted)
displayMaxDelay_secminimum display duration
typemessage type (if not custom, only one message of this type at a time is accepted)

Definition at line 2276 of file ecvDisplayTools.cpp.

References CUSTOM_MESSAGE, ecvDisplayTools::MessageToDisplay::message, ecvDisplayTools::MessageToDisplay::messageValidity_sec, ecvDisplayTools::MessageToDisplay::position, RemoveWidgets(), s_tools, SCREEN_CENTER_MESSAGE, type, ecvDisplayTools::MessageToDisplay::type, CVLog::Warning(), and WIDGET_T2D.

Referenced by ccPointPairRegistrationDlg::align(), MainWindow::cancelPreviousPickingOperation(), ccGraphicalTransformationTool::clear(), define_ccDisplayTools(), ccGraphicalSegmentationTool::doSetPolylineSelection(), ccGraphicalSegmentationTool::doSetRectangularSelection(), MainWindow::enablePickingOperation(), ccPointPairRegistrationDlg::init(), QVTKWidgetCustom::mouseMoveEvent(), MainWindow::onItemPicked(), ccThicknessTool::onNewSelection(), ccTopologyTool::onNewSelection(), ccGraphicalTransformationTool::pause(), ccGraphicalSegmentationTool::pauseSegmentationMode(), ccThicknessTool::pointPicked(), ccPointPairRegistrationDlg::resetTitle(), ResizeGL(), SetFov(), SetLineWidth(), SetPerspectiveState(), SetPivotPoint(), SetPointSize(), SetZNearCoef(), ccGraphicalSegmentationTool::stop(), ccTracePolylineTool::stop(), ccPointPairRegistrationDlg::stop(), MainWindow::toggleExclusiveFullScreen(), ccThicknessTool::toolActivated(), ccTopologyTool::toolActivated(), and ccPointPairRegistrationDlg::updateAlignInfo().

◆ DisplayOverlayEntities()

void ecvDisplayTools::DisplayOverlayEntities ( bool  state)
static

Sets whether overlay entities (scale, tetrahedron, etc.) should be displayed or not

Definition at line 2081 of file ecvDisplayTools.cpp.

References ClearBubbleView(), and s_tools.

Referenced by cc2Point5DimEditor::create2DView(), define_ccDisplayTools(), DistanceMapGenerationDlg::DistanceMapGenerationDlg(), ccContourExtractorDlg::init(), and PclUtils::PCLVis::renderToImage().

◆ DisplayText() [1/2]

static void ecvDisplayTools::DisplayText ( const CC_DRAW_CONTEXT CONTEXT)
inlinestatic

Definition at line 392 of file ecvDisplayTools.h.

References displayText().

◆ displayText()

virtual void ecvDisplayTools::displayText ( const CC_DRAW_CONTEXT CONTEXT)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 395 of file ecvDisplayTools.h.

Referenced by DisplayText().

◆ DisplayText() [2/2]

void ecvDisplayTools::DisplayText ( const QString &  text,
int  x,
int  y,
unsigned char  align = ALIGN_DEFAULT,
float  bkgAlpha = 0.0f,
const unsigned char *  rgbColor = nullptr,
const QFont *  font = nullptr,
const QString &  id = "" 
)
static

Displays a string at a given 2D position.

This method should be called solely during 2D pass rendering. The coordinates are expressed relatively to the current viewport (y = 0 at the top!).

Parameters
textstring
xhorizontal position of string origin
yvertical position of string origin
alignalignment position flags
bkgAlphabackground transparency (0 by default)
rgbColortext color (optional)
fontoptional font (otherwise default one will be used)

Definition at line 3445 of file ecvDisplayTools.cpp.

References ecvColor::RgbaTpl< Type >::a, ecvGenericDisplayTools::ALIGN_DEFAULT, ecvGenericDisplayTools::ALIGN_HMIDDLE, ecvGenericDisplayTools::ALIGN_HRIGHT, ecvGenericDisplayTools::ALIGN_VBOTTOM, ecvGenericDisplayTools::ALIGN_VMIDDLE, ecvColor::RgbaTpl< Type >::b, WIDGETS_PARAMETER::color, DrawWidgets(), ecvColor::RgbaTpl< Type >::g, GetDisplayParameters(), ecvColor::RgbaTpl< Type >::r, WIDGETS_PARAMETER::rect, RemoveWidgets(), RenderText(), ecvColor::RgbTpl< Type >::rgb, s_tools, WIDGETS_PARAMETER::text, ecvGui::ParamStruct::textDefaultCol, WIDGETS_PARAMETER::viewID, WIDGET_RECTANGLE_2D, x, and y.

Referenced by define_ccDisplayTools(), cc2DViewportLabel::drawMeOnly(), ccSymbolCloud::drawMeOnly(), cc2DLabel::drawMeOnly2D(), ccHObject::drawNameIn3D(), ccSphere::drawNameIn3D(), and RenderText().

◆ DisplayTexture2DPosition()

void ecvDisplayTools::DisplayTexture2DPosition ( QImage  image,
const QString &  id,
int  x,
int  y,
int  w,
int  h,
unsigned char  alpha = 255 
)
static

◆ doPicking

void ecvDisplayTools::doPicking ( )
slot

◆ DoResize() [1/2]

static void ecvDisplayTools::DoResize ( const QSize &  size)
inlinestatic

Definition at line 883 of file ecvDisplayTools.h.

References size.

◆ DoResize() [2/2]

static void ecvDisplayTools::DoResize ( int  xw,
int  yw 
)
inlinestatic

Definition at line 882 of file ecvDisplayTools.h.

Referenced by define_ccDisplayTools().

◆ doubleButtonClicked

void ecvDisplayTools::doubleButtonClicked ( int  x,
int  y 
)
signal

Signal emitted when the double mouse button is cliked on the window.

See INTERACT_SIG_LB_CLICKED. Arguments correspond to the clicked point coordinates (x,y) in pixels relative to the window corner!

Referenced by cvGenericFilter::cvGenericFilter(), and QVTKWidgetCustom::mouseDoubleClickEvent().

◆ Draw()

◆ draw()

virtual void ecvDisplayTools::draw ( const CC_DRAW_CONTEXT context,
const ccHObject obj 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 419 of file ecvDisplayTools.h.

Referenced by Draw().

◆ DrawBackground()

◆ DrawBBox()

static void ecvDisplayTools::DrawBBox ( const CC_DRAW_CONTEXT context,
const ccBBox bbox 
)
inlinestatic

Definition at line 430 of file ecvDisplayTools.h.

References context, and drawBBox().

Referenced by ccBBox::draw(), ccOctree::DrawCellAsABox(), and DrawMeOnlyVisitor::visit().

◆ drawBBox()

virtual void ecvDisplayTools::drawBBox ( const CC_DRAW_CONTEXT context,
const ccBBox bbox 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 434 of file ecvDisplayTools.h.

Referenced by DrawBBox().

◆ DrawClickableItems()

◆ DrawCoordinates()

static void ecvDisplayTools::DrawCoordinates ( double  scale = 1.0,
const std::string &  id = "reference",
int  viewport = 0 
)
inlinestatic

Definition at line 460 of file ecvDisplayTools.h.

References drawCoordinates().

◆ drawCoordinates()

virtual void ecvDisplayTools::drawCoordinates ( double  scale = 1.0,
const std::string &  id = "reference",
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 466 of file ecvDisplayTools.h.

Referenced by DrawCoordinates().

◆ drawCross()

void ecvDisplayTools::drawCross ( )
static

Definition at line 3072 of file ecvDisplayTools.cpp.

◆ DrawForeground()

◆ drawing3D

void ecvDisplayTools::drawing3D ( )
signal

Signal emitted during 3D pass of OpenGL display process.

Any object connected to this slot can draw additional stuff in 3D. Depth buffering, lights and shaders are enabled by default.

◆ DrawOrientedBBox()

static void ecvDisplayTools::DrawOrientedBBox ( const CC_DRAW_CONTEXT context,
const ecvOrientedBBox obb 
)
inlinestatic

Definition at line 437 of file ecvDisplayTools.h.

References context, and drawOrientedBBox().

Referenced by ecvOrientedBBox::draw().

◆ drawOrientedBBox()

virtual void ecvDisplayTools::drawOrientedBBox ( const CC_DRAW_CONTEXT context,
const ecvOrientedBBox obb 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 441 of file ecvDisplayTools.h.

Referenced by DrawOrientedBBox().

◆ DrawPivot()

◆ drawTrihedron()

void ecvDisplayTools::drawTrihedron ( )
static

Definition at line 3074 of file ecvDisplayTools.cpp.

◆ drawWidgets()

virtual void ecvDisplayTools::drawWidgets ( const WIDGETS_PARAMETER param)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 453 of file ecvDisplayTools.h.

◆ DrawWidgets()

◆ EnableDebugTrace()

static void ecvDisplayTools::EnableDebugTrace ( bool  state)
inlinestatic

Shows debug info on screen.

Definition at line 1688 of file ecvDisplayTools.h.

References m_showDebugTraces.

◆ entitiesSelectionChanged

void ecvDisplayTools::entitiesSelectionChanged ( std::unordered_set< int >  entIDs)
signal

Signal emitted when multiple entities are selected in the 3D view.

◆ entitySelectionChanged

void ecvDisplayTools::entitySelectionChanged ( ccHObject entity)
signal

Signal emitted when an entity is selected in the 3D view.

◆ ExclusiveFullScreen()

static bool ecvDisplayTools::ExclusiveFullScreen ( )
inlinestatic

Returns whether the window is in exclusive full screen mode or not.

Definition at line 1415 of file ecvDisplayTools.h.

References m_exclusiveFullscreen.

Referenced by DrawClickableItems(), and QVTKWidgetCustom::mouseMoveEvent().

◆ exclusiveFullScreenToggled

void ecvDisplayTools::exclusiveFullScreenToggled ( bool  exclusive)
signal

Signal emitted when the exclusive fullscreen is toggled.

Referenced by QVTKWidgetCustom::event().

◆ fastPickingFinished

void ecvDisplayTools::fastPickingFinished ( )
signal

Signal emitted when fast picking is finished (FAST_PICKING mode only)

Referenced by onItemPickedFast().

◆ filesDropped

void ecvDisplayTools::filesDropped ( const QStringList &  filenames,
bool  displayDialog 
)
signal

Signal emitted when files are dropped on the window.

Referenced by QVTKWidgetCustom::dropEvent().

◆ FilterByEntityType()

void ecvDisplayTools::FilterByEntityType ( ccHObject::Container labels,
CV_CLASS_ENUM  type 
)
static

Definition at line 3368 of file ecvDisplayTools.cpp.

References s_tools, and type.

Referenced by Pick2DLabel(), Redraw2DLabel(), and Update2DLabel().

◆ fovChanged

void ecvDisplayTools::fovChanged ( float  fov)
signal

Signal emitted when the f.o.v. changes.

◆ FullScreen()

static void ecvDisplayTools::FullScreen ( bool  state)
inlinestatic

Definition at line 893 of file ecvDisplayTools.h.

References fullScreen().

◆ fullScreen()

virtual void ecvDisplayTools::fullScreen ( bool  state)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 896 of file ecvDisplayTools.h.

Referenced by FullScreen().

◆ GenerateViewMat()

ccGLMatrixd ecvDisplayTools::GenerateViewMat ( CC_VIEW_ORIENTATION  orientation)
static

Returns a 4x4 'OpenGL' matrix corresponding to a default 'view' orientation

Parameters
orientationview orientation
Returns
corresponding GL matrix

Definition at line 1366 of file ecvDisplayTools.cpp.

References CC_BACK_VIEW, CC_BOTTOM_VIEW, CC_FRONT_VIEW, CC_ISO_VIEW_1, CC_ISO_VIEW_2, CC_LEFT_VIEW, CC_RIGHT_VIEW, CC_TOP_VIEW, ccGLMatrixTpl< double >::FromViewDirAndUpDir(), Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.

Referenced by SetView().

◆ GetBaseViewMat()

static ccGLMatrixd& ecvDisplayTools::GetBaseViewMat ( )
inlinestatic

Definition at line 721 of file ecvDisplayTools.h.

References m_viewportParams, and ecvViewportParameters::viewMat.

◆ GetCameraClip()

static void ecvDisplayTools::GetCameraClip ( double *  clipPlanes,
int  viewport = 0 
)
inlinestatic

Definition at line 978 of file ecvDisplayTools.h.

References getCameraClip().

Referenced by GetGLCameraParameters(), and UpdateDisplayParameters().

◆ getCameraClip()

virtual void ecvDisplayTools::getCameraClip ( double *  clipPlanes,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 981 of file ecvDisplayTools.h.

Referenced by GetCameraClip().

◆ GetCameraFocal()

static void ecvDisplayTools::GetCameraFocal ( double *  focal,
int  viewport = 0 
)
inlinestatic

Definition at line 919 of file ecvDisplayTools.h.

References getCameraFocal().

Referenced by SetView(), and UpdateDisplayParameters().

◆ getCameraFocal()

virtual void ecvDisplayTools::getCameraFocal ( double *  focal,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 922 of file ecvDisplayTools.h.

Referenced by GetCameraFocal().

◆ GetCameraFocalDistance()

static double ecvDisplayTools::GetCameraFocalDistance ( int  viewport = 0)
inlinestatic

◆ getCameraFocalDistance()

virtual double ecvDisplayTools::getCameraFocalDistance ( int  viewport = 0)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 903 of file ecvDisplayTools.h.

Referenced by GetCameraFocalDistance().

◆ GetCameraFovy()

static double ecvDisplayTools::GetCameraFovy ( int  viewport = 0)
inlinestatic

Definition at line 1001 of file ecvDisplayTools.h.

References getCameraFovy().

Referenced by GetGLCameraParameters(), and UpdateDisplayParameters().

◆ getCameraFovy()

virtual double ecvDisplayTools::getCameraFovy ( int  viewport = 0)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1004 of file ecvDisplayTools.h.

Referenced by GetCameraFovy().

◆ GetCameraPos()

static void ecvDisplayTools::GetCameraPos ( double *  pos,
int  viewport = 0 
)
inlinestatic

Definition at line 914 of file ecvDisplayTools.h.

References getCameraPos().

Referenced by SetView(), and UpdateDisplayParameters().

◆ getCameraPos()

virtual void ecvDisplayTools::getCameraPos ( double *  pos,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 917 of file ecvDisplayTools.h.

Referenced by GetCameraPos().

◆ GetCameraUp()

static void ecvDisplayTools::GetCameraUp ( double *  up,
int  viewport = 0 
)
inlinestatic

Definition at line 924 of file ecvDisplayTools.h.

References getCameraUp().

Referenced by UpdateDisplayParameters().

◆ getCameraUp()

virtual void ecvDisplayTools::getCameraUp ( double *  up,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 927 of file ecvDisplayTools.h.

Referenced by GetCameraUp().

◆ GetCenterOfRotation() [1/2]

static void ecvDisplayTools::GetCenterOfRotation ( CCVector3d center)
inlinestatic

Definition at line 1276 of file ecvDisplayTools.h.

References getCenterOfRotation(), and Tuple3Tpl< Type >::u.

◆ GetCenterOfRotation() [2/2]

static void ecvDisplayTools::GetCenterOfRotation ( double  center[3])
inlinestatic

Get the current center of rotation

Definition at line 1273 of file ecvDisplayTools.h.

References getCenterOfRotation().

Referenced by GetGLCameraParameters(), and UpdateDisplayParameters().

◆ getCenterOfRotation()

virtual void ecvDisplayTools::getCenterOfRotation ( double  center[3])
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1279 of file ecvDisplayTools.h.

Referenced by GetCenterOfRotation().

◆ GetClick3DPos()

bool ecvDisplayTools::GetClick3DPos ( int  x,
int  y,
CCVector3d P3D 
)
static

◆ GetClickableItemsVisible()

static bool ecvDisplayTools::GetClickableItemsVisible ( )
inlinestatic

Definition at line 1770 of file ecvDisplayTools.h.

References m_clickableItemsVisible.

◆ GetContext()

void ecvDisplayTools::GetContext ( CC_DRAW_CONTEXT CONTEXT)
static

Returns context information.

Definition at line 2398 of file ecvDisplayTools.cpp.

References ccGLDrawContext::bbDefaultCol, ecvGui::ParamStruct::bbDefaultCol, ecvColor::bright(), ComputeActualPixelSize(), ccGLDrawContext::currentLODLevel, ccGLDrawContext::decimateCloudOnMove, ecvGui::ParamStruct::decimateCloudOnMove, ccGLDrawContext::defaultMat, ccGLDrawContext::devicePixelRatio, ecvGui::ParamStruct::displayedNumPrecision, ccGLDrawContext::dispNumberPrecision, ccGLDrawContext::drawingFlags, ccGLDrawContext::drawRoundedPoints, ecvGui::ParamStruct::drawRoundedPoints, GetDevicePixelRatio(), GetDisplayParameters(), ccGLDrawContext::glH, ccGLDrawContext::glW, ccGLDrawContext::higherLODLevelsAvailable, ecvGui::ParamStruct::labelBackgroundCol, ccGLDrawContext::labelDefaultBkgCol, ccGLDrawContext::labelDefaultMarkerCol, ecvGui::ParamStruct::labelMarkerCol, ccGLDrawContext::labelMarkerSize, ecvGui::ParamStruct::labelMarkerSize, ccGLDrawContext::labelMarkerTextShift_pix, ccGLDrawContext::labelOpacity, ecvGui::ParamStruct::labelOpacity, ecvGui::ParamStruct::meshBackDiff, ecvGui::ParamStruct::meshFrontDiff, ecvGui::ParamStruct::meshSpecular, ecvGui::ParamStruct::minLoDCloudSize, ecvGui::ParamStruct::minLoDMeshSize, ccGLDrawContext::minLODPointCount, ccGLDrawContext::minLODTriangleCount, ccGLDrawContext::moreLODPointsAvailable, ecvColor::night(), ccGLDrawContext::pointsDefaultCol, ecvGui::ParamStruct::pointsDefaultCol, s_tools, ccGLDrawContext::sfColorScaleToDisplay, ccGLDrawContext::textDefaultCol, ecvGui::ParamStruct::textDefaultCol, ccGLDrawContext::useVBOs, and ecvGui::ParamStruct::useVBOs.

Referenced by cc2DLabel::acceptClick(), define_ccDisplayTools(), DrawPivot(), PCLDisplayTools::drawWidgets(), DrawWidgets(), ccMapWindow::getContext(), ccPointPairRegistrationDlg::label2DMove(), Redraw2DLabel(), RedrawDisplay(), Update2DLabel(), cc2DLabel::updateLabel(), and cc2DViewportLabel::updateLabel().

◆ GetCurrentScreen()

static QWidget* ecvDisplayTools::GetCurrentScreen ( )
inlinestatic

Definition at line 666 of file ecvDisplayTools.h.

References m_currentScreen.

Referenced by ccPointPropertiesDlg::activatePointPropertiesDisplay(), qCanupo2DViewDialog::addOrSelectPoint(), ccPointPairRegistrationDlg::align(), ecvCustomViewpointsToolbar::ApplyCustomViewpoint(), ccCameraSensor::applyViewport(), ccGBLSensor::applyViewport(), ccPointPairRegistrationDlg::clear(), cc2DViewportLabel::clear2Dviews(), ccPointPropertiesDlg::close2DZone(), CC_ITEM_TREE::createPointLabel2D(), ecvCustomViewpointsToolbar::DeleteCustomViewpoint(), ccCompass::doAction(), MainWindow::doActionOrthogonalProjection(), MainWindow::doActionPerspectiveProjection(), ccOctree::draw(), DrawClickableItems(), ccRenderingTools::DrawColorRamp(), cc2DViewportLabel::drawMeOnly(), ccCameraSensor::drawMeOnly(), ccCoordinateSystem::drawMeOnly(), ccGBLSensor::drawMeOnly(), ccKdTree::drawMeOnly(), ccPointPair::drawMeOnly(), ccSNECloud::drawMeOnly(), ccTrace::drawMeOnly(), ccSymbolCloud::drawMeOnly(), cc2DLabel::drawMeOnly2D(), cc2DLabel::drawMeOnly3D(), ccPointPropertiesDlg::exportCurrentLabel(), qCanupo2DViewDialog::getClickPos(), qCanupo2DViewDialog::getClosestVertex(), cvProbeFilter::getOutput(), ccPlanarEntityInterface::glDrawNormal(), HideShowEntities(), ccPointPairRegistrationDlg::init(), ccTool::initializeTool(), ccPointPairRegistrationDlg::label2DMove(), ccPointPropertiesDlg::linkWith(), MainWindow::MainWindow(), qCanupo2DViewDialog::moveSelectedPoint(), ccHObject::notifyGeometryUpdate(), ccPointPairRegistrationDlg::onItemPicked(), ccTracePolylineTool::onItemPicked(), ccTracePolylineTool::onWidthSizeChanged(), ccGraphicalTransformationTool::pause(), ccGraphicalSegmentationTool::pauseSegmentationMode(), ccTracePolylineTool::polylineOverSampling(), ccPointPropertiesDlg::processClickedPoint(), ccPointListPickingDlg::processPickedPoint(), ccPointPropertiesDlg::processPickedPoint(), RemoveEntities(), qCanupo2DViewDialog::removePoint(), ccGraphicalSegmentationTool::reset(), ccPointPairRegistrationDlg::reset(), qCanupo2DViewDialog::resetBoundary(), ccTracePolylineTool::resetPoly3D(), ccGraphicalSegmentationTool::resetSegmentation(), ccTracePolylineTool::resetTip(), ccPointPairRegistrationDlg::resetTitle(), ccGraphicalSegmentationTool::segment(), ccTracePolylineTool::SegmentGLParams::SegmentGLParams(), cvRenderViewSelectionReaction::setCursor(), SetFocusToScreen(), MainWindow::setGlobalZoom(), SetInteractionMode(), MainWindow::setOrthoView(), MainWindow::setPerspectiveView(), SetPickingMode(), ecvCustomViewpointsToolbar::SetToCurrentViewpoint(), ecvFilterByLabelDlg::start(), ccGraphicalTransformationTool::start(), ccPointPairRegistrationDlg::start(), ccTracePolylineTool::start(), StartCPUBasedPointPicking(), ccGraphicalSegmentationTool::stop(), ccTracePolylineTool::stop(), ccPointPropertiesDlg::stop(), MainWindow::toggle3DView(), ccFitPlaneTool::toolActivated(), cvRenderViewSelectionReaction::unsetCursor(), ccPointPropertiesDlg::update2DZone(), ccPointPairRegistrationDlg::updateAlignedMarkers(), ccPointPairRegistrationDlg::updateAlignInfo(), ecvCustomViewpointsToolbar::updateEnabledState(), ccPointListPickingDlg::updateList(), ccTracePolylineTool::updatePoly3D(), ccTracePolylineTool::updatePolyLineTip(), ccPointPairRegistrationDlg::updateRefMarkers(), ccGraphicalSegmentationTool::updateSegmentation(), ccTracePolylineTool::updateTip(), cvRenderViewSelectionReaction::updateTooltip(), MainWindow::updateViewModePopUpMenu(), and qCanupo2DViewDialog::~qCanupo2DViewDialog().

◆ GetCurrentUpDir()

CCVector3d ecvDisplayTools::GetCurrentUpDir ( )
static

Returns current up direction.

This is the vertical direction of the screen (pointing 'upward') in world base.

Definition at line 2165 of file ecvDisplayTools.cpp.

References Vector3Tpl< Type >::normalize(), and s_tools.

◆ GetCurrentViewDir()

CCVector3d ecvDisplayTools::GetCurrentViewDir ( )
static

Returns current viewing direction.

This is the direction normal to the screen (pointing 'inside') in world base.

Definition at line 2155 of file ecvDisplayTools.cpp.

References Vector3Tpl< Type >::normalize(), and s_tools.

Referenced by MainWindow::onItemPicked().

◆ GetDataAxesGridProperties()

static void ecvDisplayTools::GetDataAxesGridProperties ( const QString &  viewID,
AxesGridProperties props,
int  viewport = 0 
)
inlinestatic

Get Data Axes Grid properties (Unified Interface)

Parameters
viewIDThe view ID of the ccHObject
propsOutput: current axes grid properties
viewportViewport ID (default: 0)

Definition at line 542 of file ecvDisplayTools.h.

References getDataAxesGridProperties().

◆ getDataAxesGridProperties()

virtual void ecvDisplayTools::getDataAxesGridProperties ( const QString &  viewID,
AxesGridProperties props,
int  viewport = 0 
) const
inlinevirtual

Get Data Axes Grid properties (Virtual interface for derived classes)

Reimplemented in PCLDisplayTools.

Definition at line 552 of file ecvDisplayTools.h.

Referenced by ccHObject::draw(), ccPropertiesTreeDelegate::fillWithViewProperties(), GetDataAxesGridProperties(), ccDBRoot::setData(), and ccPropertiesTreeDelegate::setEditorData().

◆ GetDevicePixelRatio()

◆ GetDisplayParameters()

◆ GetFontPointSize()

int ecvDisplayTools::GetFontPointSize ( )
static

Returns current font size.

Definition at line 2814 of file ecvDisplayTools.cpp.

References ecvGenericDisplayTools::FontSizeModifier(), GetDisplayParameters(), GetOptimizedFontSize(), and s_tools.

Referenced by define_ccDisplayTools(), and RedrawDisplay().

◆ GetFov()

float ecvDisplayTools::GetFov ( )
static

Returns the current f.o.v. (field of view) in degrees.

Definition at line 2174 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by ComputeActualPixelSize(), ComputePerspectiveZoom(), define_ccDisplayTools(), SetPerspectiveState(), and cloudViewer::ModelViewerWidget::ZoomScale().

◆ GetGLCameraParameters()

◆ GetGLDepth()

static double ecvDisplayTools::GetGLDepth ( int  x,
int  y 
)
inlinestatic

Definition at line 1313 of file ecvDisplayTools.h.

References getGLDepth(), x, and y.

Referenced by GetClick3DPos().

◆ getGLDepth()

virtual double ecvDisplayTools::getGLDepth ( int  x,
int  y 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1316 of file ecvDisplayTools.h.

Referenced by GetGLDepth().

◆ GetInteractionMode()

ecvDisplayTools::INTERACTION_FLAGS ecvDisplayTools::GetInteractionMode ( )
static

Returns the current interaction flags.

Definition at line 2151 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by define_ccDisplayTools().

◆ GetLabelDisplayFont()

QFont ecvDisplayTools::GetLabelDisplayFont ( )
static

◆ GetLabelFontPointSize()

int ecvDisplayTools::GetLabelFontPointSize ( )
static

Returns current font size for labels.

Definition at line 2823 of file ecvDisplayTools.cpp.

References ecvGenericDisplayTools::FontSizeModifier(), GetDisplayParameters(), GetOptimizedFontSize(), and s_tools.

Referenced by define_ccDisplayTools(), and GetLabelDisplayFont().

◆ GetLightIntensity()

static double ecvDisplayTools::GetLightIntensity ( )
inlinestatic

Get current global light intensity

Returns
Current light intensity (0.0-1.0)

Definition at line 644 of file ecvDisplayTools.h.

References getLightIntensity().

◆ getLightIntensity()

virtual double ecvDisplayTools::getLightIntensity ( ) const
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 647 of file ecvDisplayTools.h.

Referenced by GetLightIntensity(), and ccPropertiesTreeDelegate::setEditorData().

◆ GetMainScreen()

static QWidget* ecvDisplayTools::GetMainScreen ( )
inlinestatic

◆ GetMainWindow()

◆ GetModelViewMatrix()

ccGLMatrixd & ecvDisplayTools::GetModelViewMatrix ( )
static

Definition at line 1613 of file ecvDisplayTools.cpp.

References s_tools, and UpdateModelViewMatrix().

◆ GetOptimizedFontSize()

static int ecvDisplayTools::GetOptimizedFontSize ( int  baseFontSize = 12)
inlinestatic

◆ GetOwnDB()

◆ GetParallelScale()

static double ecvDisplayTools::GetParallelScale ( int  viewport = 0)
inlinestatic

Definition at line 1581 of file ecvDisplayTools.h.

References getParallelScale().

Referenced by UpdateDisplayParameters().

◆ getParallelScale()

virtual double ecvDisplayTools::getParallelScale ( int  viewport = 0)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1584 of file ecvDisplayTools.h.

Referenced by GetParallelScale().

◆ GetPerspectiveState()

static bool ecvDisplayTools::GetPerspectiveState ( int  viewport = 0)
inlinestatic

Definition at line 1467 of file ecvDisplayTools.h.

References getPerspectiveState().

◆ getPerspectiveState()

virtual bool ecvDisplayTools::getPerspectiveState ( int  viewport = 0) const
inlineoverridevirtual

Reimplemented from ecvGenericDisplayTools.

Definition at line 1470 of file ecvDisplayTools.h.

References m_viewportParams, and ecvViewportParameters::perspectiveView.

Referenced by GetPerspectiveState().

◆ GetPickedEntity()

ccHObject * ecvDisplayTools::GetPickedEntity ( const PickingParameters params)
static

◆ GetPickingMode()

ecvDisplayTools::PICKING_MODE ecvDisplayTools::GetPickingMode ( )
static

Definition at line 2758 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by define_ccDisplayTools().

◆ GetPickingRadius()

static int ecvDisplayTools::GetPickingRadius ( )
inlinestatic

Returns the current picking radius.

Definition at line 1789 of file ecvDisplayTools.h.

References m_pickRadius.

Referenced by define_ccDisplayTools().

◆ GetPivotVisibility()

static PivotVisibility ecvDisplayTools::GetPivotVisibility ( )
inlinestatic

Returns pivot visibility.

Definition at line 1565 of file ecvDisplayTools.h.

References m_pivotVisibility.

Referenced by define_ccDisplayTools().

◆ GetPlatformAwareDPIScale()

static double ecvDisplayTools::GetPlatformAwareDPIScale ( )
inlinestatic

Definition at line 819 of file ecvDisplayTools.h.

Referenced by DrawClickableItems(), and RenderText().

◆ GetProjectionMatrix() [1/2]

ccGLMatrixd & ecvDisplayTools::GetProjectionMatrix ( )
static

Definition at line 1619 of file ecvDisplayTools.cpp.

References s_tools, and UpdateProjectionMatrix().

Referenced by GetGLCameraParameters(), and RenderText().

◆ GetProjectionMatrix() [2/2]

static void ecvDisplayTools::GetProjectionMatrix ( double *  projArray,
int  viewport = 0 
)
inlinestatic

Definition at line 1084 of file ecvDisplayTools.h.

References getProjectionMatrix().

◆ getProjectionMatrix()

virtual void ecvDisplayTools::getProjectionMatrix ( double *  projArray,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1088 of file ecvDisplayTools.h.

Referenced by GetProjectionMatrix().

◆ GetRealCameraCenter()

◆ GetSceneDB()

◆ GetScreenRect()

static QRect ecvDisplayTools::GetScreenRect ( )
inlinestatic

Definition at line 872 of file ecvDisplayTools.h.

Referenced by SetFocusToScreen(), and ccContourExtractorDlg::zoomOn().

◆ GetScreenSize()

static QSize ecvDisplayTools::GetScreenSize ( )
inlinestatic

◆ GetTextDisplayFont()

◆ getViewAxesGridProperties()

virtual void ecvDisplayTools::getViewAxesGridProperties ( bool &  visible,
CCVector3 color,
double &  lineWidth,
double &  spacing,
int &  subdivisions,
bool &  showLabels,
double &  opacity,
int  viewport = 0 
) const
inlinevirtual

Get view axes grid properties.

Definition at line 592 of file ecvDisplayTools.h.

References color.

◆ GetViewerPos()

static void ecvDisplayTools::GetViewerPos ( int *  viewPos,
int  viewport = 0 
)
inlinestatic

Definition at line 1015 of file ecvDisplayTools.h.

Referenced by RenderText().

◆ GetViewMatrix()

static void ecvDisplayTools::GetViewMatrix ( double *  viewArray,
int  viewport = 0 
)
inlinestatic

◆ getViewMatrix()

virtual void ecvDisplayTools::getViewMatrix ( double *  viewArray,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1094 of file ecvDisplayTools.h.

Referenced by GetViewMatrix().

◆ GetViewportParameters()

◆ GetVisibleObjectsBB()

void ecvDisplayTools::GetVisibleObjectsBB ( ccBBox box)
static

◆ GetVisualizer2D()

static ecvGenericVisualizer2D* ecvDisplayTools::GetVisualizer2D ( )
inlinestatic

Definition at line 659 of file ecvDisplayTools.h.

References getVisualizer2D().

◆ getVisualizer2D()

virtual ecvGenericVisualizer2D* ecvDisplayTools::getVisualizer2D ( )
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 662 of file ecvDisplayTools.h.

Referenced by GetVisualizer2D().

◆ GetVisualizer3D()

◆ getVisualizer3D()

virtual ecvGenericVisualizer3D* ecvDisplayTools::getVisualizer3D ( )
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 656 of file ecvDisplayTools.h.

Referenced by GetVisualizer3D().

◆ GlHeight()

◆ GlSize()

static QSize ecvDisplayTools::GlSize ( )
inlinestatic

Returns the OpenGL context size.

Definition at line 2042 of file ecvDisplayTools.h.

References m_glViewport.

◆ GlWidth()

◆ Height()

◆ HideShowEntities() [1/3]

static bool ecvDisplayTools::HideShowEntities ( const CC_DRAW_CONTEXT CONTEXT)
inlinestatic

Definition at line 1105 of file ecvDisplayTools.h.

References hideShowEntities().

◆ hideShowEntities()

virtual bool ecvDisplayTools::hideShowEntities ( const CC_DRAW_CONTEXT CONTEXT)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1108 of file ecvDisplayTools.h.

Referenced by HideShowEntities().

◆ HideShowEntities() [2/3]

◆ HideShowEntities() [3/3]

void ecvDisplayTools::HideShowEntities ( const QStringList &  viewIDs,
ENTITY_TYPE  hideShowEntityType,
bool  visibility = false 
)
static

Definition at line 3123 of file ecvDisplayTools.cpp.

References context, and HideShowEntities().

◆ Init()

◆ InvalidateViewport()

◆ InvalidateVisualization()

◆ IsCameraOrientationWidgetShown()

static bool ecvDisplayTools::IsCameraOrientationWidgetShown ( )
inlinestatic

Check if Camera Orientation Widget is shown.

Definition at line 628 of file ecvDisplayTools.h.

References isCameraOrientationWidgetShown().

◆ isCameraOrientationWidgetShown()

virtual bool ecvDisplayTools::isCameraOrientationWidgetShown ( ) const
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 631 of file ecvDisplayTools.h.

Referenced by IsCameraOrientationWidgetShown().

◆ IsPickingModeLocked()

bool ecvDisplayTools::IsPickingModeLocked ( )
static

Returns whether picking mode is locked or not.

Definition at line 2766 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by define_ccDisplayTools().

◆ IsRectangularPickingAllowed()

bool ecvDisplayTools::IsRectangularPickingAllowed ( )
static

Returns whether rectangular picking is allowed or not.

Definition at line 2794 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by define_ccDisplayTools().

◆ IsRotationAxisLocked()

static bool ecvDisplayTools::IsRotationAxisLocked ( )
inlinestatic

Returns whether the rotation axis is locaked or not.

Definition at line 1677 of file ecvDisplayTools.h.

References m_rotationAxisLocked.

◆ itemPicked

void ecvDisplayTools::itemPicked ( ccHObject entity,
unsigned  subEntityID,
int  x,
int  y,
const CCVector3 P 
)
signal

Signal emitted when a point (or a triangle) is picked.

Parameters
entity'picked' entity
subEntityIDpoint or triangle index in entity
xmouse cursor x position
ymouse cursor y position
Pthe picked point

Referenced by ecvAnimationParamDlg::enableListener(), ccPickingHub::onActiveWindowChanged(), and ecvCameraParamEditDlg::pickPointAsPivot().

◆ itemPickedFast

void ecvDisplayTools::itemPickedFast ( ccHObject entity,
int  subEntityID,
int  x,
int  y 
)
signal

Signal emitted when an item is picked (FAST_PICKING mode only)

Parameters
entityentity
subEntityIDpoint or triangle index in entity
xmouse cursor x position
ymouse cursor y position

Referenced by Init().

◆ labelmove2D

void ecvDisplayTools::labelmove2D ( int  x,
int  y,
int  dx,
int  dy 
)
signal

◆ leftButtonClicked

void ecvDisplayTools::leftButtonClicked ( int  x,
int  y 
)
signal

Signal emitted when the left mouse button is cliked on the window.

See INTERACT_SIG_LB_CLICKED. Arguments correspond to the clicked point coordinates (x,y) in pixels relative to the window corner!

Referenced by ccPointPropertiesDlg::linkWith(), and QVTKWidgetCustom::mousePressEvent().

◆ LoadCameraParameters()

static void ecvDisplayTools::LoadCameraParameters ( const std::string &  file)
inlinestatic

Definition at line 1040 of file ecvDisplayTools.h.

References loadCameraParameters().

◆ loadCameraParameters()

virtual void ecvDisplayTools::loadCameraParameters ( const std::string &  file)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1043 of file ecvDisplayTools.h.

Referenced by LoadCameraParameters().

◆ LockPickingMode()

void ecvDisplayTools::LockPickingMode ( bool  state)
static

Locks picking mode.

Warning
Bes sure to unlock it at some point ;)

Definition at line 2762 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by define_ccDisplayTools().

◆ LockRotationAxis()

void ecvDisplayTools::LockRotationAxis ( bool  state,
const CCVector3d axis 
)
static

Lock the rotation axis.

Definition at line 2392 of file ecvDisplayTools.cpp.

References s_tools.

◆ mouseMoved

void ecvDisplayTools::mouseMoved ( int  x,
int  y,
Qt::MouseButtons  buttons 
)
signal

Signal emitted when the mouse is moved.

See INTERACT_SIG_MOUSE_MOVED. The two first arguments correspond to the current cursor coordinates (x,y) relative to the window corner!

Referenced by ccPointPropertiesDlg::linkWith(), ccTracePolylineTool::linkWith(), QVTKWidgetCustom::mouseMoveEvent(), and ccCloudLayersDlg::start().

◆ mousePosChanged

void ecvDisplayTools::mousePosChanged ( const QPoint &  pos)
signal

◆ mouseWheelChanged

void ecvDisplayTools::mouseWheelChanged ( QWheelEvent *  event)
signal

◆ mouseWheelRotated

void ecvDisplayTools::mouseWheelRotated ( float  wheelDelta_deg)
signal

Signal emitted when the mouse wheel is rotated.

Referenced by QVTKWidgetCustom::wheelEvent().

◆ MoveCamera() [1/2]

static void ecvDisplayTools::MoveCamera ( const CCVector3d v)
inlinestatic

Displaces camera.

Values are given in objects world along the current camera viewing directions (we use the right hand rule): X: horizontal axis (right) Y: vertical axis (up) Z: depth axis (pointing out of the screen)

Parameters
vdisplacement vector

Definition at line 1525 of file ecvDisplayTools.h.

References Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.

◆ MoveCamera() [2/2]

void ecvDisplayTools::MoveCamera ( float  dx,
float  dy,
float  dz 
)
static

Displaces camera.

Values are given in objects world along the current camera viewing directions (we use the right hand rule): X: horizontal axis (right) Y: vertical axis (up) Z: depth axis (pointing out of the screen)

Definition at line 1203 of file ecvDisplayTools.cpp.

References s_tools, and SetCameraPos().

Referenced by define_ccDisplayTools(), QVTKWidgetCustom::mouseMoveEvent(), and GamepadInput::update().

◆ newLabel

void ecvDisplayTools::newLabel ( ccHObject obj)
signal

Signal emitted when a new label is created.

◆ ObjectPerspectiveEnabled()

bool ecvDisplayTools::ObjectPerspectiveEnabled ( )
static

Shortcut: returns whether object-based perspective mode is enabled.

Definition at line 1905 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by define_ccDisplayTools().

◆ onItemPickedFast

void ecvDisplayTools::onItemPickedFast ( ccHObject pickedEntity,
int  pickedItemIndex,
int  x,
int  y 
)
slot

◆ onPointPicking

void ecvDisplayTools::onPointPicking ( const CCVector3 p,
int  index,
const std::string &  id 
)
slot

◆ onWheelEvent

◆ OrientationMarkerShown()

static bool ecvDisplayTools::OrientationMarkerShown ( )
inlinestatic

Definition at line 496 of file ecvDisplayTools.h.

References orientationMarkerShown().

Referenced by PclUtils::PCLVis::renderToImage().

◆ orientationMarkerShown()

virtual bool ecvDisplayTools::orientationMarkerShown ( )
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 499 of file ecvDisplayTools.h.

Referenced by OrientationMarkerShown().

◆ OverlayEntitiesAreDisplayed()

static bool ecvDisplayTools::OverlayEntitiesAreDisplayed ( )
inlinestatic

Returns whether overlay entities (scale, tetrahedron, etc.) are displayed or not

Definition at line 1797 of file ecvDisplayTools.h.

References m_displayOverlayEntities.

Referenced by PclUtils::PCLVis::renderToImage().

◆ PAN_ONLY()

ecvDisplayTools::INTERACTION_FLAGS ecvDisplayTools::PAN_ONLY ( )
static

◆ perspectiveStateChanged

void ecvDisplayTools::perspectiveStateChanged ( )
signal

Signal emitted when the perspective state changes (see setPerspectiveState)

Referenced by ecvCameraParamEditDlg::linkWith().

◆ Pick2DLabel()

void ecvDisplayTools::Pick2DLabel ( int  x,
int  y 
)
static

◆ pick2DLabel()

virtual QString ecvDisplayTools::pick2DLabel ( int  x,
int  y 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1128 of file ecvDisplayTools.h.

◆ Pick3DItem()

static QString ecvDisplayTools::Pick3DItem ( int  x = -1,
int  y = -1 
)
inlinestatic

Definition at line 1133 of file ecvDisplayTools.h.

References pick3DItem(), x, and y.

◆ pick3DItem()

virtual QString ecvDisplayTools::pick3DItem ( int  x = -1,
int  y = -1 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1136 of file ecvDisplayTools.h.

Referenced by Pick3DItem().

◆ PickObject()

static QString ecvDisplayTools::PickObject ( double  x = -1,
double  y = -1 
)
inlinestatic

Definition at line 1139 of file ecvDisplayTools.h.

References pickObject(), x, and y.

Referenced by StartCPUBasedPointPicking().

◆ pickObject()

virtual QString ecvDisplayTools::pickObject ( double  x = -1,
double  y = -1 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1142 of file ecvDisplayTools.h.

Referenced by PickObject().

◆ pivotPointChanged

void ecvDisplayTools::pivotPointChanged ( const CCVector3d )
signal

Signal emitted when the pivot point is changed.

Referenced by ecvCameraParamEditDlg::linkWith().

◆ pixelSizeChanged

void ecvDisplayTools::pixelSizeChanged ( float  pixelSize)
signal

Signal emitted when the pixel size is changed.

◆ pointPicked

void ecvDisplayTools::pointPicked ( double  x,
double  y,
double  z 
)
signal

◆ ProcessClickableItems()

◆ ProcessPickingResult()

◆ Redraw2DLabel()

◆ RedrawDisplay()

void ecvDisplayTools::RedrawDisplay ( bool  only2D = false,
bool  forceRedraw = true 
)
static

Definition at line 2883 of file ecvDisplayTools.cpp.

References ecvColor::RgbaTpl< Type >::a, CheckIfRemove(), ccGLDrawContext::clearColorLayer, ccGLDrawContext::clearDepthLayer, WIDGETS_PARAMETER::color, ecvColor::dark(), DEBUG_LAYER_ID, Deprecate3DLayer(), ecvGui::ParamStruct::displayCross, DrawBackground(), DrawForeground(), DrawWidgets(), ccGLDrawContext::forceRedraw, GetContext(), GetDisplayParameters(), GetFontPointSize(), GetTextDisplayFont(), ccGLDrawContext::glH, ccGLDrawContext::glW, height, WIDGETS_PARAMETER::rect, RemoveWidgets(), RenderText(), s_tools, SetFontPointSize(), SetGLViewport(), SetPivotPoint(), Update(), UpdateScreen(), WIDGET_RECTANGLE_2D, WIDGET_T2D, x, y, and ecvColor::yellow().

Referenced by ccRasterizeTool::activeLayerChanged(), qCanupo2DViewDialog::addOrSelectPoint(), ccCompass::addPinchNode(), ccPointPairRegistrationDlg::align(), ccGraphicalTransformationTool::apply(), ccLibAlgorithms::ApplyScaleMatchingAlgorithm(), DistanceMapGenerationDlg::baseRadiusChanged(), ccPointPairRegistrationDlg::cancel(), MainWindow::cancelPreviousPickingOperation(), masc::Classifier::classify(), ccCompass::cleanupBeforeToolChange(), DistanceMapGenerationDlg::clearOverlaySymbols(), DistanceMapGenerationDlg::colorScaleChanged(), define_ccDisplayTools(), ccGraphicalSegmentationTool::doActionUseExistingPolyline(), ccGraphicalSegmentationTool::doSetPolylineSelection(), ccGraphicalSegmentationTool::doSetRectangularSelection(), ccCompass::enableMapMode(), ccCompass::enableMeasureMode(), MainWindow::enablePickingOperation(), cloudViewer::ModelViewerWidget::EndRender(), masc::Classifier::evaluate(), JsonRPCPlugin::execute(), ccPointPropertiesDlg::exportCurrentLabel(), ccTraceTool::finishCurrentTrace(), ccRasterizeTool::generateContours(), ccRasterizeTool::generateHillshade(), ccPointPairRegistrationDlg::init(), DistanceMapGenerationDlg::labelFontSizeChanged(), DistanceMapGenerationDlg::labelPrecisionChanged(), DistanceMapGenerationDlg::loadOverlaySymbols(), ccPointListPickingDlg::markerSizeChanged(), QVTKWidgetCustom::mouseMoveEvent(), qCanupo2DViewDialog::moveSelectedPoint(), ccColorLevelsDlg::onApply(), ccThicknessTool::onNewSelection(), DistanceMapGenerationDlg::overlayGridColorChanged(), DistanceMapGenerationDlg::overlaySymbolsColorChanged(), DistanceMapGenerationDlg::overlaySymbolsSizeChanged(), ccGraphicalTransformationTool::pause(), ccGraphicalSegmentationTool::pauseSegmentationMode(), BasePclModule::performAction(), ccCompass::pointPicked(), ProcessClickableItems(), ccCompass::recalculateSelectedTraces(), ccHObject::redrawDisplay(), ccContourExtractorDlg::refresh(), MainWindow::refreshAll(), RefreshDisplay(), MainWindow::refreshObject(), MainWindow::refreshObjects(), MainWindow::refreshSelected(), ccRasterizeTool::removeContourLines(), ccGraphicalSegmentationTool::reset(), ccPointPairRegistrationDlg::reset(), qCanupo2DViewDialog::resetBoundary(), ccPointPairRegistrationDlg::EntityContext::restore(), ccGraphicalSegmentationTool::segment(), cloudViewer::ModelViewerWidget::SetBackgroundColor(), ccEntityAction::setColor(), ccAlignDlg::setColorsAndLabels(), ccVolumeCalcTool::setDisplayedNumberPrecision(), ccCompass::setLineation(), ccCompass::setNote(), ccCompass::setPick(), SetPivotPoint(), ccCompass::setPlane(), ccCompass::setThickness(), ccCompass::setTrace(), SetView(), ccCompass::setYoungerThan(), ccPointPairRegistrationDlg::showAlignedEntities(), ccPointPairRegistrationDlg::showReferenceEntities(), ccCompass::startMeasuring(), ccGraphicalSegmentationTool::stop(), DistanceMapGenerationDlg::toggleColorScaleDisplay(), MainWindow::toggleExclusiveFullScreen(), ccCompass::toggleLabels(), ccCompass::toggleNormals(), DistanceMapGenerationDlg::toggleOverlayGrid(), ccCompass::toggleStipple(), ccThicknessTool::toolActivated(), ccThicknessTool::toolDisactivated(), ccTraceTool::undo(), GamepadInput::update(), cc2Point5DimEditor::update2DDisplayZoom(), ccPointPairRegistrationDlg::updateAlignInfo(), UpdateConstellationCenterAndZoom(), ccComparisonDlg::updateDisplay(), ccRasterizeTool::updateGridAndDisplay(), ccVolumeCalcTool::updateGridAndDisplay(), ccRegistrationDlg::updateGUI(), FastGlobalRegistrationDialog::updateGUI(), DistanceMapGenerationDlg::updateMapTexture(), qCanupo2DViewDialog::updateZoom(), DistanceMapGenerationDlg::updateZoom(), QVTKWidgetCustom::wheelEvent(), ccRegistrationDlg::~ccRegistrationDlg(), and FastGlobalRegistrationDialog::~FastGlobalRegistrationDialog().

◆ RefreshDisplay()

void ecvDisplayTools::RefreshDisplay ( bool  only2D = false,
bool  forceRedraw = true 
)
static

Definition at line 2876 of file ecvDisplayTools.cpp.

References RedrawDisplay(), and s_tools.

Referenced by define_ccDisplayTools(), and QVTKWidgetCustom::mouseReleaseEvent().

◆ registerVisualizer()

virtual void ecvDisplayTools::registerVisualizer ( QMainWindow *  win,
bool  stereoMode = false 
)
protectedpure virtual

register visualizer callback function

Implemented in PCLDisplayTools.

◆ ReleaseInstance()

void ecvDisplayTools::ReleaseInstance ( )
static

Definition at line 245 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by MainWindow::~MainWindow().

◆ Remove3DLabel()

void ecvDisplayTools::Remove3DLabel ( const QString &  view_id)
static

Definition at line 4093 of file ecvDisplayTools.cpp.

References context, ECV_TEXT2D, RemoveEntities(), and UpdateScreen().

Referenced by define_ccDisplayTools().

◆ RemoveAllWidgets()

void ecvDisplayTools::RemoveAllWidgets ( bool  update = true)
static

Definition at line 4083 of file ecvDisplayTools.cpp.

References context, ECV_ALL, RemoveEntities(), and UpdateScreen().

Referenced by define_ccDisplayTools().

◆ RemoveBB() [1/2]

◆ RemoveBB() [2/2]

void ecvDisplayTools::RemoveBB ( const QString &  viewId)
static

Definition at line 3886 of file ecvDisplayTools.cpp.

References context, and RemoveBB().

◆ RemoveEntities() [1/3]

static void ecvDisplayTools::RemoveEntities ( const CC_DRAW_CONTEXT CONTEXT)
inlinestatic

Definition at line 1118 of file ecvDisplayTools.h.

References removeEntities().

◆ removeEntities()

virtual void ecvDisplayTools::removeEntities ( const CC_DRAW_CONTEXT CONTEXT)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1121 of file ecvDisplayTools.h.

Referenced by RemoveEntities().

◆ RemoveEntities() [2/3]

◆ RemoveEntities() [3/3]

void ecvDisplayTools::RemoveEntities ( const QStringList &  viewIDs,
ENTITY_TYPE  removeEntityType 
)
static

Definition at line 3158 of file ecvDisplayTools.cpp.

References context, and RemoveEntities().

◆ RemoveFromOwnDB()

◆ RemoveWidgets()

◆ RenderText() [1/2]

void ecvDisplayTools::RenderText ( double  x,
double  y,
double  z,
const QString &  str,
const QFont &  font = QFont(),
const ecvColor::Rgbub color = ecvColor::defaultLabelBkgColor,
const QString &  id = "" 
)
static

◆ RenderText() [2/2]

void ecvDisplayTools::RenderText ( int  x,
int  y,
const QString &  str,
const QFont &  font = QFont(),
const ecvColor::Rgbub color = ecvColor::defaultLabelBkgColor,
const QString &  id = "" 
)
static

◆ RenderToFile()

bool ecvDisplayTools::RenderToFile ( QString  filename,
float  zoomFactor = 1.0f,
bool  dontScaleFeatures = false,
bool  renderOverlayItems = false 
)
static

◆ RenderToImage()

static QImage ecvDisplayTools::RenderToImage ( int  zoomFactor = 1,
bool  renderOverlayItems = false,
bool  silent = false,
int  viewport = 0 
)
inlinestatic

◆ renderToImage()

virtual QImage ecvDisplayTools::renderToImage ( int  zoomFactor = 1,
bool  renderOverlayItems = false,
bool  silent = false,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1369 of file ecvDisplayTools.h.

Referenced by RenderToImage().

◆ ResetCamera() [1/2]

static void ecvDisplayTools::ResetCamera ( )
inlinestatic

Definition at line 1251 of file ecvDisplayTools.h.

References resetCamera().

Referenced by UpdateConstellationCenterAndZoom().

◆ resetCamera() [1/2]

virtual void ecvDisplayTools::resetCamera ( )
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1255 of file ecvDisplayTools.h.

◆ ResetCamera() [2/2]

static void ecvDisplayTools::ResetCamera ( const ccBBox bbox)
inlinestatic

Definition at line 1246 of file ecvDisplayTools.h.

References resetCamera().

◆ resetCamera() [2/2]

virtual void ecvDisplayTools::resetCamera ( const ccBBox bbox)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1250 of file ecvDisplayTools.h.

Referenced by ResetCamera().

◆ ResetCameraClippingRange()

static void ecvDisplayTools::ResetCameraClippingRange ( int  viewport = 0)
inlinestatic

◆ resetCameraClippingRange()

virtual void ecvDisplayTools::resetCameraClippingRange ( int  viewport = 0)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 997 of file ecvDisplayTools.h.

Referenced by ResetCameraClippingRange().

◆ ResetCameraViewpoint()

static void ecvDisplayTools::ResetCameraViewpoint ( const std::string &  viewID)
inlinestatic

Definition at line 1174 of file ecvDisplayTools.h.

References resetCameraViewpoint().

◆ resetCameraViewpoint()

virtual void ecvDisplayTools::resetCameraViewpoint ( const std::string &  viewID)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1177 of file ecvDisplayTools.h.

Referenced by ResetCameraViewpoint().

◆ ResetCenterOfRotation()

static void ecvDisplayTools::ResetCenterOfRotation ( int  viewport = 0)
inlinestatic

Resets the center of rotation to the focal point.

Definition at line 1285 of file ecvDisplayTools.h.

References resetCenterOfRotation().

◆ resetCenterOfRotation()

virtual void ecvDisplayTools::resetCenterOfRotation ( int  viewport = 0)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1289 of file ecvDisplayTools.h.

Referenced by ResetCenterOfRotation().

◆ ResizeGL()

void ecvDisplayTools::ResizeGL ( int  w,
int  h 
)
static

Sets current zoom.

Warning: has no effect in viewer-centered perspective mode

Definition at line 1186 of file ecvDisplayTools.cpp.

References Deprecate3DLayer(), DisplayNewMessage(), InvalidateVisualization(), LOWER_LEFT_MESSAGE, s_tools, SCREEN_SIZE_MESSAGE, and SetGLViewport().

Referenced by QVTKWidgetCustom::event(), and UpdateScreenSize().

◆ rightButtonClicked

void ecvDisplayTools::rightButtonClicked ( int  x,
int  y 
)
signal

Signal emitted when the right mouse button is cliked on the window.

See INTERACT_SIG_RB_CLICKED. Arguments correspond to the clicked point coordinates (x,y) in pixels relative to the window corner!

Referenced by ccTracePolylineTool::linkWith(), and QVTKWidgetCustom::mousePressEvent().

◆ RotateBaseViewMat()

void ecvDisplayTools::RotateBaseViewMat ( const ccGLMatrixd rotMat)
static

Rotates the base view matrix.

Warning: 'base view' marix is either:

  • the rotation around the object in object-centered mode
  • the rotation around the camera center in viewer-centered mode (see setPerspectiveState).

Definition at line 1341 of file ecvDisplayTools.cpp.

References ecvViewportParameters::focal, ccGLMatrixTpl< T >::getColumnAsVec3D(), ccGLMatrixTpl< T >::getTranslationAsVec3D(), GetViewportParameters(), Vector3Tpl< Type >::normalize(), s_tools, ecvViewportParameters::setCameraCenter(), ecvViewportParameters::setPivotPoint(), SetViewportParameters(), ecvViewportParameters::up, and ecvViewportParameters::viewMat.

Referenced by GamepadInput::update().

◆ RotateWithAxis()

static void ecvDisplayTools::RotateWithAxis ( const CCVector2i pos,
const CCVector3d axis,
double  angle,
int  viewport = 0 
)
inlinestatic

Rotate camera with axis given about angle.

Parameters
posThe mouse position on screen.
axisThe rotation axis.
angleThe ration angle in degrees. notify the external memory manager that the memory is no longer needed. It's up to the external manager to free the memory.

Definition at line 477 of file ecvDisplayTools.h.

References rotateWithAxis().

Referenced by QVTKWidgetCustom::mouseMoveEvent(), and ecvAnimationParamDlg::startAnimation().

◆ rotateWithAxis()

virtual void ecvDisplayTools::rotateWithAxis ( const CCVector2i pos,
const CCVector3d axis,
double  angle,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 484 of file ecvDisplayTools.h.

Referenced by RotateWithAxis().

◆ rotation

void ecvDisplayTools::rotation ( const ccGLMatrixd rotMat)
signal

Signal emitted when the selected object is rotated by the user.

Parameters
rotMatrotation applied to current viewport (4x4 OpenGL matrix)

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ SaveCameraParameters()

static void ecvDisplayTools::SaveCameraParameters ( const std::string &  file)
inlinestatic

Save or Load the current rendered camera parameters to disk or current camera.

Parameters
[in]filethe name of the param file

Definition at line 1034 of file ecvDisplayTools.h.

References saveCameraParameters().

◆ saveCameraParameters()

virtual void ecvDisplayTools::saveCameraParameters ( const std::string &  file)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1037 of file ecvDisplayTools.h.

Referenced by SaveCameraParameters().

◆ SaveScreenshot()

static void ecvDisplayTools::SaveScreenshot ( const std::string &  file)
inlinestatic

Save the current rendered image to disk, as a PNG screenshot.

Parameters
[in]filethe name of the PNG file

Definition at line 1025 of file ecvDisplayTools.h.

References saveScreenshot().

◆ saveScreenshot()

virtual void ecvDisplayTools::saveScreenshot ( const std::string &  file)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1028 of file ecvDisplayTools.h.

Referenced by SaveScreenshot().

◆ scheduleFullRedraw()

void ecvDisplayTools::scheduleFullRedraw ( unsigned  maxDelay_ms)

Schedules a full redraw.

Any previously scheduled redraw will be cancelled.

Warning
The redraw will be cancelled if redraw/update is called before.
Parameters
maxDelay_msthe maximum delay for the call to redraw (in ms)

Definition at line 297 of file ecvDisplayTools.cpp.

References m_scheduledFullRedrawTime, m_scheduleTimer, and m_timer.

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ SendAutoPickPivotAtCenter()

static void ecvDisplayTools::SendAutoPickPivotAtCenter ( bool  state)
inlinestatic

Definition at line 1665 of file ecvDisplayTools.h.

◆ SetAspectRatio()

void ecvDisplayTools::SetAspectRatio ( float  ar)
static

Sets current camera aspect ratio (width/height)

AR is only used in perspective mode.

Definition at line 2227 of file ecvDisplayTools.cpp.

References Deprecate3DLayer(), InvalidateViewport(), InvalidateVisualization(), s_tools, and CVLog::Warning().

Referenced by SetupProjectiveViewport().

◆ SetAutoPickPivotAtCenter()

void ecvDisplayTools::SetAutoPickPivotAtCenter ( bool  state)
static

Toggles the automatic setting of the pivot point at the center of the screen

Definition at line 2379 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by ecvGenericCameraTool::setAutoPickPivotAtCenter().

◆ SetAutoUpateCameraPos()

static void ecvDisplayTools::SetAutoUpateCameraPos ( bool  state)
inlinestatic

Definition at line 1265 of file ecvDisplayTools.h.

References setAutoUpateCameraPos().

Referenced by SetPivotPoint().

◆ setAutoUpateCameraPos()

virtual void ecvDisplayTools::setAutoUpateCameraPos ( bool  state)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1268 of file ecvDisplayTools.h.

Referenced by SetAutoUpateCameraPos().

◆ setBackgroundColor()

virtual void ecvDisplayTools::setBackgroundColor ( const CC_DRAW_CONTEXT CONTEXT)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1149 of file ecvDisplayTools.h.

◆ SetBaseViewMat()

void ecvDisplayTools::SetBaseViewMat ( ccGLMatrixd mat)
static

Definition at line 1802 of file ecvDisplayTools.cpp.

References InvalidateVisualization(), and s_tools.

Referenced by SetupProjectiveViewport().

◆ SetBubbleViewFov()

void ecvDisplayTools::SetBubbleViewFov ( float  fov_deg)
static

Set bubble-view f.o.v. (in degrees)

Definition at line 2672 of file ecvDisplayTools.cpp.

References Deprecate3DLayer(), InvalidateViewport(), InvalidateVisualization(), and s_tools.

Referenced by onWheelEvent(), SetBubbleViewMode(), and SetFov().

◆ SetBubbleViewMode()

void ecvDisplayTools::SetBubbleViewMode ( bool  state)
static

Sets bubble-view mode state.

Bubble-view is a kind of viewer-based perspective mode where the user can't displace the camera (apart from up-down or left-right rotations). The f.o.v. is also maximized.

Warning
Any call to a method that changes the perpsective will automatically disable this mode.

Definition at line 2641 of file ecvDisplayTools.cpp.

References s_tools, SetBubbleViewFov(), SetPerspectiveState(), and SetViewportParameters().

Referenced by ProcessClickableItems(), and SetupProjectiveViewport().

◆ SetCameraClip()

static void ecvDisplayTools::SetCameraClip ( double  znear,
double  zfar,
int  viewport = 0 
)
inlinestatic

◆ setCameraClip()

virtual void ecvDisplayTools::setCameraClip ( double  znear,
double  zfar,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 990 of file ecvDisplayTools.h.

Referenced by SetCameraClip().

◆ SetCameraFocalDistance()

static void ecvDisplayTools::SetCameraFocalDistance ( double  focal_distance,
int  viewport = 0 
)
inlinestatic

◆ setCameraFocalDistance()

virtual void ecvDisplayTools::setCameraFocalDistance ( double  focal_distance,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 911 of file ecvDisplayTools.h.

Referenced by SetCameraFocalDistance().

◆ SetCameraFovy()

static void ecvDisplayTools::SetCameraFovy ( double  fovy,
int  viewport = 0 
)
inlinestatic

◆ setCameraFovy()

virtual void ecvDisplayTools::setCameraFovy ( double  fovy,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1012 of file ecvDisplayTools.h.

Referenced by SetCameraFovy().

◆ SetCameraPos()

◆ SetCameraPosition() [1/4]

static void ecvDisplayTools::SetCameraPosition ( const CCVector3d pos,
int  viewport = 0 
)
inlinestatic

◆ setCameraPosition() [1/4]

virtual void ecvDisplayTools::setCameraPosition ( const CCVector3d pos,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 933 of file ecvDisplayTools.h.

Referenced by SetCameraPosition().

◆ SetCameraPosition() [2/4]

static void ecvDisplayTools::SetCameraPosition ( const double *  pos,
const double *  focal,
const double *  up,
int  viewport = 0 
)
inlinestatic

Definition at line 935 of file ecvDisplayTools.h.

References setCameraPosition().

◆ setCameraPosition() [2/4]

virtual void ecvDisplayTools::setCameraPosition ( const double *  pos,
const double *  focal,
const double *  up,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 941 of file ecvDisplayTools.h.

◆ SetCameraPosition() [3/4]

static void ecvDisplayTools::SetCameraPosition ( const double *  pos,
const double *  up,
int  viewport = 0 
)
inlinestatic

Definition at line 945 of file ecvDisplayTools.h.

References setCameraPosition().

◆ setCameraPosition() [3/4]

virtual void ecvDisplayTools::setCameraPosition ( const double *  pos,
const double *  up,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 950 of file ecvDisplayTools.h.

◆ SetCameraPosition() [4/4]

static void ecvDisplayTools::SetCameraPosition ( double  pos_x,
double  pos_y,
double  pos_z,
double  view_x,
double  view_y,
double  view_z,
double  up_x,
double  up_y,
double  up_z,
int  viewport = 0 
)
inlinestatic

Definition at line 953 of file ecvDisplayTools.h.

References setCameraPosition().

◆ setCameraPosition() [4/4]

virtual void ecvDisplayTools::setCameraPosition ( double  pos_x,
double  pos_y,
double  pos_z,
double  view_x,
double  view_y,
double  view_z,
double  up_x,
double  up_y,
double  up_z,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 966 of file ecvDisplayTools.h.

◆ SetCenterAxesVisible()

static void ecvDisplayTools::SetCenterAxesVisible ( bool  visible,
int  viewport = 0 
)
inlinestatic

Enable/disable center axes visualization.

Definition at line 611 of file ecvDisplayTools.h.

References setCenterAxesVisible().

◆ setCenterAxesVisible()

virtual void ecvDisplayTools::setCenterAxesVisible ( bool  visible,
int  viewport = 0 
)
inlinevirtual

Definition at line 615 of file ecvDisplayTools.h.

Referenced by SetCenterAxesVisible().

◆ SetCenterOfRotation() [1/3]

static void ecvDisplayTools::SetCenterOfRotation ( const CCVector3d center)
inlinestatic

Definition at line 1309 of file ecvDisplayTools.h.

References Tuple3Tpl< Type >::u.

◆ SetCenterOfRotation() [2/3]

static void ecvDisplayTools::SetCenterOfRotation ( const double  xyz[3])
inlinestatic

Definition at line 1305 of file ecvDisplayTools.h.

◆ SetCenterOfRotation() [3/3]

static void ecvDisplayTools::SetCenterOfRotation ( double  x,
double  y,
double  z 
)
inlinestatic

Set the center of rotation. For this to work, one should have appropriate interaction style and camera manipulators that use the center of rotation They are setup correctly by default

Definition at line 1298 of file ecvDisplayTools.h.

References setCenterOfRotation(), x, y, and z.

Referenced by SetPivotPoint().

◆ setCenterOfRotation()

virtual void ecvDisplayTools::setCenterOfRotation ( double  x,
double  y,
double  z 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1301 of file ecvDisplayTools.h.

Referenced by PCLDisplayTools::setCenterOfRotation(), and SetCenterOfRotation().

◆ SetClickableItemsVisible()

static void ecvDisplayTools::SetClickableItemsVisible ( bool  state)
inlinestatic

Definition at line 1767 of file ecvDisplayTools.h.

References m_clickableItemsVisible.

◆ SetCurrentScreen()

void ecvDisplayTools::SetCurrentScreen ( QWidget *  widget)
static

Definition at line 4151 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by PCLDisplayTools::registerVisualizer().

◆ SetDataAxesGridProperties()

static void ecvDisplayTools::SetDataAxesGridProperties ( const QString &  viewID,
const AxesGridProperties props,
int  viewport = 0 
)
inlinestatic

Set Data Axes Grid properties (Unified Interface) Each ccHObject has its own Data Axes Grid bound to its viewID.

Parameters
viewIDThe view ID of the ccHObject (empty string for current selected object)
propsAll axes grid properties encapsulated in AxesGridProperties struct
viewportViewport ID (default: 0)

Definition at line 518 of file ecvDisplayTools.h.

References setDataAxesGridProperties().

◆ setDataAxesGridProperties()

virtual void ecvDisplayTools::setDataAxesGridProperties ( const QString &  viewID,
const AxesGridProperties props,
int  viewport = 0 
)
inlinevirtual

Set Data Axes Grid properties (Virtual interface for derived classes)

Reimplemented in PCLDisplayTools.

Definition at line 530 of file ecvDisplayTools.h.

Referenced by SetDataAxesGridProperties(), and ccPropertiesTreeDelegate::setEditorData().

◆ SetDisplayParameters()

◆ SetExclusiveFullScreenFlage()

static void ecvDisplayTools::SetExclusiveFullScreenFlage ( bool  state)
inlinestatic

Definition at line 1418 of file ecvDisplayTools.h.

References m_exclusiveFullscreen.

◆ SetFocusToScreen()

void ecvDisplayTools::SetFocusToScreen ( )
static

Draws the main 3D layer.

Definition at line 2838 of file ecvDisplayTools.cpp.

References GetCurrentScreen(), GetScreenRect(), cloudViewer::utility::Sleep(), and CVLog::Warning().

◆ SetFontPointSize()

static void ecvDisplayTools::SetFontPointSize ( int  pixelSize)
inlinestatic

Sets current font size.

Warning: only used internally. Change 'defaultFontSize' with setDisplayParameters instead!

Definition at line 1759 of file ecvDisplayTools.h.

References m_font.

Referenced by RedrawDisplay().

◆ SetFov()

void ecvDisplayTools::SetFov ( float  fov)
static

◆ SetGLViewport() [1/2]

void ecvDisplayTools::SetGLViewport ( const QRect &  rect)
static

Sets the OpenGL viewport.

Definition at line 3064 of file ecvDisplayTools.cpp.

References GetDevicePixelRatio(), InvalidateViewport(), and s_tools.

◆ SetGLViewport() [2/2]

static void ecvDisplayTools::SetGLViewport ( int  x,
int  y,
int  w,
int  h 
)
inlinestatic

Sets the OpenGL viewport (shortut)

Definition at line 1346 of file ecvDisplayTools.h.

References x, and y.

Referenced by GetGLCameraParameters(), RedrawDisplay(), and ResizeGL().

◆ SetInteractionMode()

◆ SetLightIntensity()

static void ecvDisplayTools::SetLightIntensity ( double  intensity)
inlinestatic

Set global light intensity (ParaView-style, affects all scene objects) Directly modifies the renderer's default light intensity

Parameters
intensityLight intensity (0.0-1.0, default 1.0)

Definition at line 636 of file ecvDisplayTools.h.

References setLightIntensity().

◆ setLightIntensity()

virtual void ecvDisplayTools::setLightIntensity ( double  intensity)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 640 of file ecvDisplayTools.h.

Referenced by SetLightIntensity().

◆ SetLineWidth()

void ecvDisplayTools::SetLineWidth ( float  width,
bool  silent = false,
int  viewport = 0 
)
static

Sets line width.

Parameters
widthlines width (between MIN_LINE_WIDTH_F and MAX_LINE_WIDTH_F)

Definition at line 537 of file ecvDisplayTools.cpp.

References DisplayNewMessage(), LOWER_LEFT_MESSAGE, MAX_LINE_WIDTH_F, MIN_LINE_WIDTH_F, CVLog::Print(), s_tools, SCREEN_SIZE_MESSAGE, SetLineWithRecursive(), and width.

Referenced by define_ccDisplayTools(), and ProcessClickableItems().

◆ SetLineWithRecursive()

void ecvDisplayTools::SetLineWithRecursive ( PointCoordinateType  with)
static

Definition at line 559 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by SetLineWidth().

◆ SetLookUpTableID()

static void ecvDisplayTools::SetLookUpTableID ( const std::string &  viewID)
inlinestatic

Set the ID of a cloud or shape to be used for LUT display.

Parameters
[in]idThe id of the cloud/shape look up table to be displayed The look up table is displayed by pressing 'u' in the PCLVisualizer

Definition at line 1078 of file ecvDisplayTools.h.

References setLookUpTableID().

◆ setLookUpTableID()

virtual void ecvDisplayTools::setLookUpTableID ( const std::string &  viewID)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1081 of file ecvDisplayTools.h.

Referenced by SetLookUpTableID().

◆ SetMainScreen()

static void ecvDisplayTools::SetMainScreen ( QWidget *  widget)
inlinestatic

Definition at line 675 of file ecvDisplayTools.h.

References m_mainScreen.

Referenced by PCLDisplayTools::registerVisualizer().

◆ SetMainWindow()

static void ecvDisplayTools::SetMainWindow ( QMainWindow *  win)
inlinestatic

Definition at line 680 of file ecvDisplayTools.h.

References m_win.

Referenced by Init().

◆ SetOrthoProjection()

static void ecvDisplayTools::SetOrthoProjection ( int  viewport = 0)
inlinestatic

Definition at line 1052 of file ecvDisplayTools.h.

References setOrthoProjection().

Referenced by MainWindow::doActionOrthogonalProjection().

◆ setOrthoProjection()

virtual void ecvDisplayTools::setOrthoProjection ( int  viewport = 0)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1056 of file ecvDisplayTools.h.

Referenced by SetOrthoProjection().

◆ SetParallelScale()

static void ecvDisplayTools::SetParallelScale ( double  scale,
int  viewport = 0 
)
inlinestatic

Definition at line 1587 of file ecvDisplayTools.h.

References setParallelScale().

Referenced by SetupProjectiveViewport(), and SetViewportParameters().

◆ setParallelScale()

virtual void ecvDisplayTools::setParallelScale ( double  scale,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1590 of file ecvDisplayTools.h.

Referenced by SetParallelScale().

◆ SetPerspectiveProjection()

static void ecvDisplayTools::SetPerspectiveProjection ( int  viewport = 0)
inlinestatic

Definition at line 1058 of file ecvDisplayTools.h.

References setPerspectiveProjection().

Referenced by MainWindow::doActionPerspectiveProjection().

◆ setPerspectiveProjection()

virtual void ecvDisplayTools::setPerspectiveProjection ( int  viewport = 0)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1062 of file ecvDisplayTools.h.

Referenced by SetPerspectiveProjection().

◆ SetPerspectiveState()

void ecvDisplayTools::SetPerspectiveState ( bool  state,
bool  objectCenteredView 
)
static

Set perspective state/mode.

Persepctive mode can be:

  • object-centered (moving the mouse make the object rotate)
  • viewer-centered (moving the mouse make the camera move)
    Warning
    Disables bubble-view mode automatically
    Parameters
    statewhether perspective mode is enabled or not
    objectCenteredViewwhether view is object- or viewer-centered (forced to true in ortho. mode)

Definition at line 1813 of file ecvDisplayTools.cpp.

References c_ps_groupName, c_ps_objectMode, c_ps_perspectiveView, ComputePerspectiveZoom(), cloudViewer::DegreesToRadians(), Deprecate3DLayer(), DisplayNewMessage(), GetFov(), cloudViewer::GreaterThanEpsilon(), InvalidateViewport(), InvalidateVisualization(), LOWER_LEFT_MESSAGE, PERSPECTIVE_STATE_MESSAGE, s_tools, SetCameraPos(), SetZoom(), and Tuple3Tpl< Type >::z.

Referenced by cc2Point5DimEditor::create2DView(), define_ccDisplayTools(), DistanceMapGenerationDlg::DistanceMapGenerationDlg(), ccContourExtractorDlg::init(), Init(), ccCompassExport::saveSVG(), SetBubbleViewMode(), MainWindow::setOrthoView(), MainWindow::setPerspectiveView(), SetupProjectiveViewport(), SetView(), and ccFitPlaneTool::toolActivated().

◆ SetPickingMode()

◆ SetPickingRadius()

static void ecvDisplayTools::SetPickingRadius ( int  radius)
inlinestatic

Sets picking radius.

Definition at line 1785 of file ecvDisplayTools.h.

References m_pickRadius.

Referenced by define_ccDisplayTools().

◆ SetPivotPoint()

◆ SetPivotVisibility() [1/2]

static void ecvDisplayTools::SetPivotVisibility ( bool  state)
inlinestatic

Definition at line 1559 of file ecvDisplayTools.h.

References setPivotVisibility().

◆ setPivotVisibility()

virtual void ecvDisplayTools::setPivotVisibility ( bool  state)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1562 of file ecvDisplayTools.h.

Referenced by SetPivotVisibility().

◆ SetPivotVisibility() [2/2]

void ecvDisplayTools::SetPivotVisibility ( PivotVisibility  vis)
static

Sets pivot visibility.

Definition at line 1166 of file ecvDisplayTools.cpp.

References c_ps_groupName, c_ps_pivotVisibility, s_tools, and UpdateScreen().

Referenced by define_ccDisplayTools(), and Init().

◆ SetPixelSize()

void ecvDisplayTools::SetPixelSize ( float  pixelSize)
static

Sets pixel size (i.e. zoom base)

Emits the 'pixelSizeChanged' signal.

Definition at line 2689 of file ecvDisplayTools.cpp.

References Deprecate3DLayer(), InvalidateViewport(), InvalidateVisualization(), and s_tools.

Referenced by UpdateConstellationCenterAndZoom(), and ccContourExtractorDlg::zoomOn().

◆ SetPointSize()

◆ SetPointSizeRecursive()

void ecvDisplayTools::SetPointSizeRecursive ( int  size)
static

Definition at line 526 of file ecvDisplayTools.cpp.

References s_tools, and size().

Referenced by SetPointSize().

◆ SetRectangularPickingAllowed()

void ecvDisplayTools::SetRectangularPickingAllowed ( bool  state)
static

Sets whether rectangular picking is allowed or not.

Definition at line 2798 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by define_ccDisplayTools().

◆ SetRedrawRecursive() [1/2]

void ecvDisplayTools::SetRedrawRecursive ( bool  redraw = false)
static

Definition at line 1992 of file ecvDisplayTools.cpp.

References GetOwnDB(), GetSceneDB(), and ccHObject::setRedrawFlagRecursive().

Referenced by MainWindow::addToDB(), ccPointPairRegistrationDlg::align(), ccGraphicalTransformationTool::apply(), ccLibAlgorithms::ApplyScaleMatchingAlgorithm(), ccPointPairRegistrationDlg::cancel(), MainWindow::cancelPreviousPickingOperation(), ccDBRoot::changeSelection(), masc::Classifier::classify(), ccEntityAction::computeOctree(), ccDBRoot::deleteSelectedEntities(), ccGraphicalSegmentationTool::doActionUseExistingPolyline(), qCanupoPlugin::doClassifyAction(), qSRA::doComputeRadialDists(), ccGraphicalSegmentationTool::doSetPolylineSelection(), ccGraphicalSegmentationTool::doSetRectangularSelection(), masc::Classifier::evaluate(), ccPointPropertiesDlg::exportCurrentLabel(), ccPointPairRegistrationDlg::init(), ccMPlaneDlgController::onNormalCheckBoxClicked(), ccGraphicalTransformationTool::pause(), ccGraphicalSegmentationTool::pauseSegmentationMode(), BasePclModule::performAction(), ProcessClickableItems(), MainWindow::refreshObject(), MainWindow::refreshObjects(), MainWindow::refreshSelected(), ccGraphicalSegmentationTool::reset(), ccPointPairRegistrationDlg::reset(), ccPointPairRegistrationDlg::EntityContext::restore(), ccGraphicalSegmentationTool::segment(), ccEntityAction::setColor(), ccOrderChoiceDlg::setColorsAndLabels(), ccDBRoot::setData(), MainWindow::setGlobalZoom(), qVoxFallDialog::setMesh1Visibility(), qVoxFallDialog::setMesh2Visibility(), ccPointPairRegistrationDlg::showAlignedEntities(), ccPointPairRegistrationDlg::showReferenceEntities(), cloudViewer::ModelViewerWidget::StartRender(), ccGraphicalSegmentationTool::stop(), MainWindow::toggleExclusiveFullScreen(), ccPointPairRegistrationDlg::updateAlignInfo(), ccComparisonDlg::updateDisplay(), StereogramDialog::updateFacetsFilter(), ccRegistrationDlg::updateGUI(), FastGlobalRegistrationDialog::updateGUI(), QVTKWidgetCustom::wheelEvent(), ccOrderChoiceDlg::~ccOrderChoiceDlg(), ccRegistrationDlg::~ccRegistrationDlg(), and FastGlobalRegistrationDialog::~FastGlobalRegistrationDialog().

◆ SetRedrawRecursive() [2/2]

void ecvDisplayTools::SetRedrawRecursive ( ccHObject obj,
bool  redraw = false 
)
static

Definition at line 2002 of file ecvDisplayTools.cpp.

References ccHObject::setRedrawFlagRecursive().

◆ SetRemoveAllFlag()

static void ecvDisplayTools::SetRemoveAllFlag ( bool  state)
inlinestatic

Definition at line 727 of file ecvDisplayTools.h.

References m_removeAllFlag.

Referenced by CheckIfRemove(), and ccDBRoot::unloadAll().

◆ SetRemoveViewIDs()

void ecvDisplayTools::SetRemoveViewIDs ( std::vector< removeInfo > &  removeinfos)
static

Definition at line 2113 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by ccDBRoot::deleteSelectedEntities().

◆ SetRenderWindowSize()

static void ecvDisplayTools::SetRenderWindowSize ( int  xw,
int  yw 
)
inlinestatic

Definition at line 888 of file ecvDisplayTools.h.

References setRenderWindowSize().

◆ setRenderWindowSize()

virtual void ecvDisplayTools::setRenderWindowSize ( int  xw,
int  yw 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 891 of file ecvDisplayTools.h.

Referenced by SetRenderWindowSize().

◆ SetScaleBarVisible()

static void ecvDisplayTools::SetScaleBarVisible ( bool  visible)
inlinestatic

Definition at line 1376 of file ecvDisplayTools.h.

References setScaleBarVisible().

Referenced by DrawForeground().

◆ setScaleBarVisible()

virtual void ecvDisplayTools::setScaleBarVisible ( bool  visible)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1379 of file ecvDisplayTools.h.

Referenced by SetScaleBarVisible().

◆ SetSceneDB()

void ecvDisplayTools::SetSceneDB ( ccHObject root)
static

Definition at line 2088 of file ecvDisplayTools.cpp.

References s_tools, and ZoomGlobal().

Referenced by define_ccDisplayTools(), and MainWindow::~MainWindow().

◆ SetScreenSize()

static void ecvDisplayTools::SetScreenSize ( int  xw,
int  yw 
)
inlinestatic

Definition at line 879 of file ecvDisplayTools.h.

◆ SetupProjectiveViewport()

◆ SetUseVbos()

static void ecvDisplayTools::SetUseVbos ( bool  useVbos)
inlinestatic

Use Vertex Buffer Objects renderers. This is an optimization for the obsolete OpenGL backend. Modern OpenGL2 backend (VTK \A1\DD 6.3) uses vertex buffer objects by default, transparently for the user.

Parameters
[in]use_vbosset to true to use VBOs

Definition at line 1070 of file ecvDisplayTools.h.

References setUseVbos().

◆ setUseVbos()

virtual void ecvDisplayTools::setUseVbos ( bool  useVbos)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1073 of file ecvDisplayTools.h.

Referenced by SetUseVbos().

◆ SetView() [1/2]

◆ SetView() [2/2]

◆ SetViewAxesGridProperties()

static void ecvDisplayTools::SetViewAxesGridProperties ( bool  visible,
const CCVector3 color,
double  lineWidth,
double  spacing,
int  subdivisions,
bool  showLabels,
double  opacity,
int  viewport = 0 
)
inlinestatic

Configure view axes grid properties.

Definition at line 568 of file ecvDisplayTools.h.

References color, and setViewAxesGridProperties().

◆ setViewAxesGridProperties()

virtual void ecvDisplayTools::setViewAxesGridProperties ( bool  visible,
const CCVector3 color,
double  lineWidth,
double  spacing,
int  subdivisions,
bool  showLabels,
double  opacity,
int  viewport = 0 
)
inlinevirtual

Definition at line 581 of file ecvDisplayTools.h.

Referenced by SetViewAxesGridProperties().

◆ SetViewAxesGridVisible()

static void ecvDisplayTools::SetViewAxesGridVisible ( bool  visible,
int  viewport = 0 
)
inlinestatic

Enable/disable view axes grid (aligned with camera/view)

Definition at line 560 of file ecvDisplayTools.h.

References setViewAxesGridVisible().

◆ setViewAxesGridVisible()

virtual void ecvDisplayTools::setViewAxesGridVisible ( bool  visible,
int  viewport = 0 
)
inlinevirtual

Definition at line 564 of file ecvDisplayTools.h.

Referenced by SetViewAxesGridVisible().

◆ SetViewMatrix()

static void ecvDisplayTools::SetViewMatrix ( const ccGLMatrixd viewMat,
int  viewport = 0 
)
inlinestatic

Definition at line 1097 of file ecvDisplayTools.h.

References setViewMatrix().

◆ setViewMatrix()

virtual void ecvDisplayTools::setViewMatrix ( const ccGLMatrixd viewMat,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1101 of file ecvDisplayTools.h.

Referenced by SetViewMatrix().

◆ SetViewportParameters()

◆ SetZNearCoef()

void ecvDisplayTools::SetZNearCoef ( double  coef)
static

Sets current camera 'zNear' coefficient.

zNear coef. is only used in perspective mode.

Definition at line 673 of file ecvDisplayTools.cpp.

References Deprecate3DLayer(), DisplayNewMessage(), LOWER_LEFT_MESSAGE, s_tools, SCREEN_SIZE_MESSAGE, SetCameraClip(), UpdateProjectionMatrix(), and CVLog::Warning().

Referenced by QVTKWidgetCustom::wheelEvent().

◆ SetZoom()

void ecvDisplayTools::SetZoom ( float  value)
static

Sets current zoom.

Warning: has no effect in viewer-centered perspective mode

Definition at line 2698 of file ecvDisplayTools.cpp.

References CC_GL_MAX_ZOOM_RATIO, CC_GL_MIN_ZOOM_RATIO, InvalidateViewport(), InvalidateVisualization(), and s_tools.

Referenced by SetPerspectiveState(), UpdateConstellationCenterAndZoom(), and UpdateZoom().

◆ ShowCursorCoordinates()

static void ecvDisplayTools::ShowCursorCoordinates ( bool  state)
inlinestatic

Sets whether to display the coordinates of the point below the cursor position

Definition at line 1653 of file ecvDisplayTools.h.

References m_showCursorCoordinates.

◆ ShowOrientationMarker()

static void ecvDisplayTools::ShowOrientationMarker ( )
inlinestatic

Definition at line 1046 of file ecvDisplayTools.h.

References showOrientationMarker().

Referenced by DrawWidgets().

◆ showOrientationMarker()

virtual void ecvDisplayTools::showOrientationMarker ( )
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1050 of file ecvDisplayTools.h.

Referenced by ShowOrientationMarker().

◆ ShowPivotSymbol()

void ecvDisplayTools::ShowPivotSymbol ( bool  state)
static

Shows or hide the pivot symbol.

Warnings:

  • not to be mistaken with setPivotVisibility
  • only taken into account if pivot visibility is set to PIVOT_SHOW_ON_MOVE

Definition at line 2802 of file ecvDisplayTools.cpp.

References Deprecate3DLayer(), InvalidateViewport(), PIVOT_HIDE, and s_tools.

Referenced by define_ccDisplayTools(), QVTKWidgetCustom::mouseMoveEvent(), and QVTKWidgetCustom::mouseReleaseEvent().

◆ size()

static QSize ecvDisplayTools::size ( )
inlinestatic

Definition at line 2035 of file ecvDisplayTools.h.

Referenced by SetPointSize(), and SetPointSizeRecursive().

◆ StartCPUBasedPointPicking()

void ecvDisplayTools::StartCPUBasedPointPicking ( const PickingParameters params)
static

Starts OpenGL picking process.

Definition at line 798 of file ecvDisplayTools.cpp.

References ecvGui::ParamStruct::ALWAYS, ecvGui::ParamStruct::ASK_USER, ecvGui::ParamStruct::autoComputeOctree, CV_TYPES::CAMERA_SENSOR, ecvDisplayTools::PickingParameters::centerX, ecvDisplayTools::PickingParameters::centerY, CV_TYPES::COORDINATESYSTEM, Vector3Tpl< PointCoordinateType >::fromArray(), ccGenericMesh::getAssociatedCloud(), ccSubMesh::getAssociatedMesh(), ccHObject::getChild(), ccHObject::getChildrenNumber(), GetCurrentScreen(), GetDisplayParameters(), GetGLCameraParameters(), ccCameraSensor::getNearPlane(), ccGenericPointCloud::getOctree(), GetPickedEntity(), cc2DLabel::getPickedPoint(), cloudViewer::GenericIndexedCloud::getPoint(), cc2DLabel::PickedPoint::getPointPosition(), ccObject::getUniqueID(), ccHObject::getViewId(), ccObject::isA(), cloudViewer::geometry::LineSet::IsEmpty(), ccObject::isEnabled(), ccObject::isKindOf(), ccGenericMesh::isShownAsWire(), CV_TYPES::LABEL_2D, CV_TYPES::MESH, CV_TYPES::MESH_GROUP, ecvDisplayTools::PickingParameters::mode, ecvGui::ParamStruct::NEVER, Vector3Tpl< Type >::norm(), ecvGui::Parameters(), ecvDisplayTools::PickingParameters::pickHeight, PickObject(), ecvDisplayTools::PickingParameters::pickWidth, CV_TYPES::POINT_CLOUD, POINT_OR_TRIANGLE_OR_LABEL_PICKING, POINT_OR_TRIANGLE_PICKING, cc2DLabel::pointPicking(), ccGenericPointCloud::pointPicking(), ProcessPickingResult(), s_tools, CV_TYPES::SENSOR, ecvGui::Set(), cc2DLabel::size(), cloudViewer::GenericCloud::size(), CV_TYPES::SUB_MESH, ccHObjectCaster::ToGenericMesh(), ccHObjectCaster::ToGenericPointCloud(), ecvGui::ParamStruct::toPersistentSettings(), ccGenericMesh::trianglePicking(), Tuple3Tpl< Type >::u, USE_VTK_PICK, CVLog::Warning(), Vector2Tpl< Type >::x, Tuple3Tpl< Type >::x, Vector2Tpl< Type >::y, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.

Referenced by StartPicking().

◆ StartOpenGLPicking()

◆ StartPicking()

◆ TheInstance()

◆ ToBeRefreshed()

void ecvDisplayTools::ToBeRefreshed ( )
static

◆ ToCenteredGLCoordinates()

QPointF ecvDisplayTools::ToCenteredGLCoordinates ( int  x,
int  y 
)
static

Definition at line 1145 of file ecvDisplayTools.cpp.

References Height(), Width(), x, and y.

Referenced by define_ccDisplayTools().

◆ Toggle2Dviewer()

static void ecvDisplayTools::Toggle2Dviewer ( bool  state)
inlinestatic

Definition at line 1191 of file ecvDisplayTools.h.

References toggle2Dviewer().

Referenced by MainWindow::toggle3DView().

◆ toggle2Dviewer()

virtual void ecvDisplayTools::toggle2Dviewer ( bool  state)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1194 of file ecvDisplayTools.h.

Referenced by Toggle2Dviewer().

◆ ToggleCameraOrientationWidget()

static void ecvDisplayTools::ToggleCameraOrientationWidget ( bool  show)
inlinestatic

Toggle Camera Orientation Widget visibility (ParaView-style interactive widget)

Definition at line 620 of file ecvDisplayTools.h.

References toggleCameraOrientationWidget().

Referenced by MainWindow::MainWindow().

◆ toggleCameraOrientationWidget()

virtual void ecvDisplayTools::toggleCameraOrientationWidget ( bool  show)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 624 of file ecvDisplayTools.h.

Referenced by ToggleCameraOrientationWidget().

◆ ToggleDebugTrace()

static void ecvDisplayTools::ToggleDebugTrace ( )
inlinestatic

Toggles debug info on screen.

Definition at line 1693 of file ecvDisplayTools.h.

References m_showDebugTraces.

◆ ToggleExclusiveFullScreen()

static void ecvDisplayTools::ToggleExclusiveFullScreen ( bool  state)
inlinestatic

Toggles (exclusive) full-screen mode.

Definition at line 1408 of file ecvDisplayTools.h.

References toggleExclusiveFullScreen().

◆ toggleExclusiveFullScreen()

virtual void ecvDisplayTools::toggleExclusiveFullScreen ( bool  state)
inlinevirtual

Definition at line 1411 of file ecvDisplayTools.h.

Referenced by ToggleExclusiveFullScreen().

◆ ToggleOrientationMarker()

static void ecvDisplayTools::ToggleOrientationMarker ( bool  state = true)
inlinestatic

Definition at line 489 of file ecvDisplayTools.h.

References toggleOrientationMarker().

Referenced by PclUtils::PCLVis::renderToImage().

◆ toggleOrientationMarker()

virtual void ecvDisplayTools::toggleOrientationMarker ( bool  state = true)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 493 of file ecvDisplayTools.h.

Referenced by ToggleOrientationMarker().

◆ ToVtkCoordinates() [1/3]

void ecvDisplayTools::ToVtkCoordinates ( CCVector2i sP)
static

Definition at line 1161 of file ecvDisplayTools.cpp.

References GetDevicePixelRatio(), Height(), and Vector2Tpl< Type >::y.

◆ ToVtkCoordinates() [2/3]

void ecvDisplayTools::ToVtkCoordinates ( CCVector3d sP)
static

Definition at line 1156 of file ecvDisplayTools.cpp.

References GetDevicePixelRatio(), Height(), and Tuple3Tpl< Type >::y.

◆ ToVtkCoordinates() [3/3]

◆ TRANSFORM_CAMERA()

◆ TRANSFORM_ENTITIES()

ecvDisplayTools::INTERACTION_FLAGS ecvDisplayTools::TRANSFORM_ENTITIES ( )
static

◆ TransformCameraProjection()

static void ecvDisplayTools::TransformCameraProjection ( const ccGLMatrixd projMat)
inlinestatic

Definition at line 736 of file ecvDisplayTools.h.

References transformCameraProjection().

◆ transformCameraProjection()

virtual void ecvDisplayTools::transformCameraProjection ( const ccGLMatrixd projMat)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 739 of file ecvDisplayTools.h.

Referenced by TransformCameraProjection().

◆ TransformCameraView()

static void ecvDisplayTools::TransformCameraView ( const ccGLMatrixd viewMat)
inlinestatic

Definition at line 731 of file ecvDisplayTools.h.

References transformCameraView().

◆ transformCameraView()

virtual void ecvDisplayTools::transformCameraView ( const ccGLMatrixd viewMat)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 734 of file ecvDisplayTools.h.

Referenced by TransformCameraView().

◆ translation

void ecvDisplayTools::translation ( const CCVector3d t)
signal

Signal emitted when the selected object is translated by the user.

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ Update()

static void ecvDisplayTools::Update ( )
inlinestatic

◆ Update2DLabel()

◆ UpdateActiveItemsList()

void ecvDisplayTools::UpdateActiveItemsList ( int  x,
int  y,
bool  extendToSelectedLabels = false 
)
static

Updates currently active items list (m_activeItems)

The items must be currently displayed in this context AND at least one of them must be under the mouse cursor.

Definition at line 1223 of file ecvDisplayTools.cpp.

References FAST_PICKING, ccObject::isA(), ccDrawableObject::isSelected(), ccDrawableObject::isVisible(), CV_TYPES::LABEL_2D, s_tools, StartPicking(), x, and y.

Referenced by doPicking(), QVTKWidgetCustom::mouseMoveEvent(), and QVTKWidgetCustom::mouseReleaseEvent().

◆ UpdateCamera()

static void ecvDisplayTools::UpdateCamera ( )
inlinestatic

Definition at line 1256 of file ecvDisplayTools.h.

References updateCamera().

Referenced by cvGenericFilter::modelReady().

◆ updateCamera()

virtual void ecvDisplayTools::updateCamera ( )
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1260 of file ecvDisplayTools.h.

Referenced by UpdateCamera().

◆ UpdateConstellationCenterAndZoom()

◆ UpdateDisplayParameters()

◆ UpdateMeshTextures()

static void ecvDisplayTools::UpdateMeshTextures ( const CC_DRAW_CONTEXT context,
const ccGenericMesh mesh 
)
inlinestatic

Definition at line 422 of file ecvDisplayTools.h.

References context, and updateMeshTextures().

Referenced by ccGenericMesh::updateTextures().

◆ updateMeshTextures()

virtual void ecvDisplayTools::updateMeshTextures ( const CC_DRAW_CONTEXT context,
const ccGenericMesh mesh 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 426 of file ecvDisplayTools.h.

Referenced by UpdateMeshTextures().

◆ UpdateModelViewMatrix()

void ecvDisplayTools::UpdateModelViewMatrix ( )
static

Definition at line 1795 of file ecvDisplayTools.cpp.

References ComputeModelViewMatrix(), and s_tools.

Referenced by GetModelViewMatrix().

◆ UpdateNamePoseRecursive()

void ecvDisplayTools::UpdateNamePoseRecursive ( )
static

◆ UpdateProjectionMatrix()

◆ UpdateScene()

static void ecvDisplayTools::UpdateScene ( )
inlinestatic

Definition at line 1262 of file ecvDisplayTools.h.

References updateScene().

◆ updateScene()

virtual void ecvDisplayTools::updateScene ( )
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 1263 of file ecvDisplayTools.h.

Referenced by UpdateScene().

◆ UpdateScreen()

◆ UpdateScreenSize()

void ecvDisplayTools::UpdateScreenSize ( )
static

Definition at line 1287 of file ecvDisplayTools.cpp.

References Height(), ResizeGL(), and Width().

◆ UpdateZoom()

void ecvDisplayTools::UpdateZoom ( float  zoomFactor)
static

Updates current zoom.

Warning: has no effect in viewer-centered perspective mode

Definition at line 2715 of file ecvDisplayTools.cpp.

References s_tools, and SetZoom().

Referenced by QVTKWidgetCustom::event(), onWheelEvent(), and ZoomCamera().

◆ ViewerPerspectiveEnabled()

bool ecvDisplayTools::ViewerPerspectiveEnabled ( )
static

Shortcut: returns whether viewer-based perspective mode is enabled.

Definition at line 1913 of file ecvDisplayTools.cpp.

References s_tools.

Referenced by define_ccDisplayTools().

◆ viewMatRotated

void ecvDisplayTools::viewMatRotated ( const ccGLMatrixd rotMat)
signal

Signal emitted when the window 'model view' matrix is interactively changed

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ Width()

◆ zNearCoefChanged

void ecvDisplayTools::zNearCoefChanged ( float  coef)
signal

Signal emitted when the zNear coef changes.

◆ ZoomCamera()

void ecvDisplayTools::ZoomCamera ( double  zoomFactor,
int  viewport = 0 
)
static

◆ zoomCamera()

virtual void ecvDisplayTools::zoomCamera ( double  zoomFactor,
int  viewport = 0 
)
inlinevirtual

Reimplemented in PCLDisplayTools.

Definition at line 899 of file ecvDisplayTools.h.

Referenced by ZoomCamera().

◆ ZoomGlobal()

Member Data Documentation

◆ DefaultPickRadius

const int ecvDisplayTools::DefaultPickRadius = 5
static

Default picking radius value.

Definition at line 1782 of file ecvDisplayTools.h.

Referenced by Init().

◆ m_activeItems

std::list<ccInteractor*> ecvDisplayTools::m_activeItems

Currently active items.

Active items can be moved with mouse, etc.

Definition at line 1804 of file ecvDisplayTools.h.

Referenced by doPicking(), QVTKWidgetCustom::mouseMoveEvent(), QVTKWidgetCustom::mouseReleaseEvent(), onItemPickedFast(), and QVTKWidgetCustom::updateActivateditems().

◆ m_allowRectangularEntityPicking

bool ecvDisplayTools::m_allowRectangularEntityPicking

Whether rectangular picking is allowed or not.

Definition at line 1928 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ m_alwaysUseFBO

bool ecvDisplayTools::m_alwaysUseFBO

Whether to always use FBO or only for GL filters.

Definition at line 1946 of file ecvDisplayTools.h.

◆ m_autoPickPivotAtCenter

bool ecvDisplayTools::m_autoPickPivotAtCenter

Whether the pivot point is automatically picked at the center of the screen (when possible)

Definition at line 1883 of file ecvDisplayTools.h.

Referenced by AutoPickPivotAtCenter(), and QVTKWidgetCustom::mousePressEvent().

◆ m_autoPivotCandidate

CCVector3d ecvDisplayTools::m_autoPivotCandidate

Candidate pivot point (will be used when the mouse is released)

Definition at line 1889 of file ecvDisplayTools.h.

◆ m_autoRefresh

bool ecvDisplayTools::m_autoRefresh

Auto-refresh mode.

Definition at line 1901 of file ecvDisplayTools.h.

◆ m_bbHalfDiag

double ecvDisplayTools::m_bbHalfDiag

Half size of the displayed objects bounding-box.

Definition at line 1919 of file ecvDisplayTools.h.

Referenced by onWheelEvent().

◆ m_bubbleViewFov_deg

float ecvDisplayTools::m_bubbleViewFov_deg

Bubble-view mode f.o.v. (degrees)

Definition at line 1972 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseMoveEvent(), and onWheelEvent().

◆ m_bubbleViewModeEnabled

bool ecvDisplayTools::m_bubbleViewModeEnabled

Bubble-view mode state.

Definition at line 1969 of file ecvDisplayTools.h.

Referenced by BubbleViewModeEnabled(), QVTKWidgetCustom::mouseMoveEvent(), and onWheelEvent().

◆ m_cameraToBBCenterDist

double ecvDisplayTools::m_cameraToBBCenterDist

Distance between the camera and the displayed objects bounding-box.

Definition at line 1917 of file ecvDisplayTools.h.

Referenced by onWheelEvent().

◆ m_captureMode

CaptureModeOptions ecvDisplayTools::m_captureMode

Display capturing mode options.

Definition at line 1995 of file ecvDisplayTools.h.

◆ m_clickableItems

std::vector<ClickableItem> ecvDisplayTools::m_clickableItems

Currently displayed clickable items.

Definition at line 1840 of file ecvDisplayTools.h.

◆ m_clickableItemsVisible

bool ecvDisplayTools::m_clickableItemsVisible

Whether clickable items are visible (= mouse over) or not.

Definition at line 1843 of file ecvDisplayTools.h.

Referenced by GetClickableItemsVisible(), QVTKWidgetCustom::mouseMoveEvent(), and SetClickableItemsVisible().

◆ m_currentScreen

QWidget* ecvDisplayTools::m_currentScreen
protected

Definition at line 1812 of file ecvDisplayTools.h.

Referenced by GetCurrentScreen().

◆ m_customLightEnabled

bool ecvDisplayTools::m_customLightEnabled

Whether custom light is enabled or not.

Definition at line 1966 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ m_customLightPos

float ecvDisplayTools::m_customLightPos[4]

Custom light position.

Relative to object.

Definition at line 1963 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ m_deferredPickingTimer

QTimer ecvDisplayTools::m_deferredPickingTimer

◆ m_diagStrings

QStringList ecvDisplayTools::m_diagStrings

Definition at line 2019 of file ecvDisplayTools.h.

◆ m_displayOverlayEntities

bool ecvDisplayTools::m_displayOverlayEntities

Whether to display overlay entities or not (scale, tetrahedron, etc.)

Definition at line 1869 of file ecvDisplayTools.h.

Referenced by OverlayEntitiesAreDisplayed().

◆ m_exclusiveFullscreen

bool ecvDisplayTools::m_exclusiveFullscreen

Wether exclusive full screen is enabled or not.

Definition at line 1875 of file ecvDisplayTools.h.

Referenced by ExclusiveFullScreen(), and SetExclusiveFullScreenFlage().

◆ m_font

QFont ecvDisplayTools::m_font

Default font.

Definition at line 1981 of file ecvDisplayTools.h.

Referenced by GetTextDisplayFont(), and SetFontPointSize().

◆ m_globalDBRoot

ccHObject* ecvDisplayTools::m_globalDBRoot

CV main DB.

Definition at line 1939 of file ecvDisplayTools.h.

Referenced by GetSceneDB().

◆ m_glViewport

QRect ecvDisplayTools::m_glViewport

viewport

Definition at line 1892 of file ecvDisplayTools.h.

Referenced by GlHeight(), GlSize(), and GlWidth().

◆ m_hotZone

HotZone* ecvDisplayTools::m_hotZone

Hot zone.

Definition at line 2012 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseMoveEvent(), and ~ecvDisplayTools().

◆ m_ignoreMouseReleaseEvent

bool ecvDisplayTools::m_ignoreMouseReleaseEvent

◆ m_interactionFlags

INTERACTION_FLAGS ecvDisplayTools::m_interactionFlags

◆ m_last_picked_id

QString ecvDisplayTools::m_last_picked_id = QString()

Definition at line 2006 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mousePressEvent(), and onPointPicking().

◆ m_last_picked_point

CCVector3 ecvDisplayTools::m_last_picked_point

Definition at line 2004 of file ecvDisplayTools.h.

Referenced by onPointPicking().

◆ m_last_point_index

int ecvDisplayTools::m_last_point_index = -1

Definition at line 2005 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mousePressEvent(), and onPointPicking().

◆ m_lastClickTime_ticks

qint64 ecvDisplayTools::m_lastClickTime_ticks

Last click time (msec)

Definition at line 2009 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mousePressEvent(), and QVTKWidgetCustom::mouseReleaseEvent().

◆ m_lastMouseMovePos

QPoint ecvDisplayTools::m_lastMouseMovePos

Definition at line 2017 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ m_lastMousePos

QPoint ecvDisplayTools::m_lastMousePos

◆ m_lockedRotationAxis

CCVector3d ecvDisplayTools::m_lockedRotationAxis

Locked rotation axis.

Definition at line 1906 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseMoveEvent().

◆ m_mainScreen

QWidget* ecvDisplayTools::m_mainScreen
protected

Definition at line 1813 of file ecvDisplayTools.h.

Referenced by GetMainScreen(), and SetMainScreen().

◆ m_messagesToDisplay

std::list<MessageToDisplay> ecvDisplayTools::m_messagesToDisplay

List of messages to display.

Definition at line 219 of file ecvDisplayTools.h.

Referenced by checkScheduledRedraw().

◆ m_mouseButtonPressed

bool ecvDisplayTools::m_mouseButtonPressed

Whether the mouse is currently pressed or not.

Definition at line 2024 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mousePressEvent(), and QVTKWidgetCustom::mouseReleaseEvent().

◆ m_mouseMoved

bool ecvDisplayTools::m_mouseMoved

Whether the mouse (cursor) has moved after being pressed or not.

Definition at line 2022 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseMoveEvent(), QVTKWidgetCustom::mousePressEvent(), and QVTKWidgetCustom::mouseReleaseEvent().

◆ m_overridenDisplayParameters

ecvGui::ParamStruct ecvDisplayTools::m_overridenDisplayParameters

Overridden display parameter.

Definition at line 1866 of file ecvDisplayTools.h.

◆ m_overridenDisplayParametersEnabled

bool ecvDisplayTools::m_overridenDisplayParametersEnabled

Whether display parameters are overidden for this window.

Definition at line 1872 of file ecvDisplayTools.h.

◆ m_pickingMode

PICKING_MODE ecvDisplayTools::m_pickingMode

Definition at line 1848 of file ecvDisplayTools.h.

Referenced by doPicking(), and QVTKWidgetCustom::mouseMoveEvent().

◆ m_pickingModeLocked

bool ecvDisplayTools::m_pickingModeLocked

Whether picking mode is locked or not.

Definition at line 1850 of file ecvDisplayTools.h.

◆ m_pickRadius

int ecvDisplayTools::m_pickRadius

Picking radius (pixels)

Definition at line 1898 of file ecvDisplayTools.h.

Referenced by doPicking(), GetPickingRadius(), onPointPicking(), and SetPickingRadius().

◆ m_pivotSymbolShown

bool ecvDisplayTools::m_pivotSymbolShown

Whether pivot symbol should be shown or not.

Definition at line 1925 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseReleaseEvent().

◆ m_pivotVisibility

PivotVisibility ecvDisplayTools::m_pivotVisibility

Pivot symbol visibility.

Definition at line 1922 of file ecvDisplayTools.h.

Referenced by GetPivotVisibility(), and QVTKWidgetCustom::mouseReleaseEvent().

◆ m_preBubbleViewParameters

ecvViewportParameters ecvDisplayTools::m_preBubbleViewParameters

Pre-bubble-view camera parameters (backup)

Definition at line 1975 of file ecvDisplayTools.h.

◆ m_projMatd

ccGLMatrixd ecvDisplayTools::m_projMatd

Projection matrix (GL style - double version)

Definition at line 1913 of file ecvDisplayTools.h.

◆ m_rectPickingPoly

ccPolyline* ecvDisplayTools::m_rectPickingPoly

Rectangular picking polyline.

Definition at line 1931 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::mouseMoveEvent(), QVTKWidgetCustom::mouseReleaseEvent(), and ~ecvDisplayTools().

◆ m_removeAllFlag

bool ecvDisplayTools::m_removeAllFlag

Definition at line 1942 of file ecvDisplayTools.h.

Referenced by SetRemoveAllFlag().

◆ m_removeFlag

bool ecvDisplayTools::m_removeFlag

Definition at line 1941 of file ecvDisplayTools.h.

◆ m_removeInfos

std::vector<removeInfo> ecvDisplayTools::m_removeInfos

Definition at line 1943 of file ecvDisplayTools.h.

◆ m_rotationAxisLocked

bool ecvDisplayTools::m_rotationAxisLocked

Wheter the rotation axis is locked or not.

Definition at line 1904 of file ecvDisplayTools.h.

Referenced by IsRotationAxisLocked(), and QVTKWidgetCustom::mouseMoveEvent().

◆ m_scale_lineset

cloudViewer::geometry::LineSet* ecvDisplayTools::m_scale_lineset

Definition at line 1933 of file ecvDisplayTools.h.

◆ m_scheduledFullRedrawTime

qint64 ecvDisplayTools::m_scheduledFullRedrawTime

Scheduled full redraw (no LOD)

Definition at line 1863 of file ecvDisplayTools.h.

Referenced by cancelScheduledRedraw(), checkScheduledRedraw(), and scheduleFullRedraw().

◆ m_scheduleTimer

QTimer ecvDisplayTools::m_scheduleTimer

Scheduler timer.

Definition at line 1861 of file ecvDisplayTools.h.

Referenced by cancelScheduledRedraw(), and scheduleFullRedraw().

◆ m_shouldBeRefreshed

bool ecvDisplayTools::m_shouldBeRefreshed

Whether the display should be refreshed on next call to 'refresh'.

Definition at line 1886 of file ecvDisplayTools.h.

◆ m_showCursorCoordinates

bool ecvDisplayTools::m_showCursorCoordinates

Whether to display the coordinates of the point below the cursor position

Definition at line 1879 of file ecvDisplayTools.h.

Referenced by CursorCoordinatesShown(), QVTKWidgetCustom::mouseMoveEvent(), and ShowCursorCoordinates().

◆ m_showDebugTraces

bool ecvDisplayTools::m_showDebugTraces

Debug traces visibility.

Definition at line 1895 of file ecvDisplayTools.h.

Referenced by EnableDebugTrace(), and ToggleDebugTrace().

◆ m_sunLightEnabled

bool ecvDisplayTools::m_sunLightEnabled

Whether sun light is enabled or not.

Definition at line 1958 of file ecvDisplayTools.h.

◆ m_sunLightPos

float ecvDisplayTools::m_sunLightPos[4]

Sun light position.

Relative to screen.

Definition at line 1955 of file ecvDisplayTools.h.

◆ m_timer

QElapsedTimer ecvDisplayTools::m_timer

◆ m_touchBaseDist

qreal ecvDisplayTools::m_touchBaseDist

Touch gesture initial distance.

Definition at line 1858 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::event().

◆ m_touchInProgress

bool ecvDisplayTools::m_touchInProgress

Touch event in progress.

Definition at line 1856 of file ecvDisplayTools.h.

Referenced by QVTKWidgetCustom::event().

◆ m_uniqueID

int ecvDisplayTools::m_uniqueID

Unique ID.

Definition at line 1978 of file ecvDisplayTools.h.

◆ m_updateFBO

bool ecvDisplayTools::m_updateFBO

Whether FBO should be updated (or simply displayed as a texture = faster!)

Definition at line 1950 of file ecvDisplayTools.h.

Referenced by Deprecate3DLayer().

◆ m_validModelviewMatrix

bool ecvDisplayTools::m_validModelviewMatrix

Whether the model veiw matrix is valid (or need to be recomputed)

Definition at line 1911 of file ecvDisplayTools.h.

Referenced by InvalidateVisualization().

◆ m_validProjectionMatrix

bool ecvDisplayTools::m_validProjectionMatrix

Whether the projection matrix is valid (or need to be recomputed)

Definition at line 1915 of file ecvDisplayTools.h.

Referenced by InvalidateViewport().

◆ m_viewMatd

ccGLMatrixd ecvDisplayTools::m_viewMatd

Complete visualization matrix (GL style - double version)

Definition at line 1909 of file ecvDisplayTools.h.

◆ m_viewportParams

◆ m_widgetClicked

bool ecvDisplayTools::m_widgetClicked

Flag to indicate that a VTK widget was clicked (to prevent deferred picking)

Definition at line 2031 of file ecvDisplayTools.h.

Referenced by doPicking(), QVTKWidgetCustom::mouseReleaseEvent(), and CustomVtkCaptionWidget::OnWidgetInteraction().

◆ m_win

QMainWindow* ecvDisplayTools::m_win
protected

Definition at line 1814 of file ecvDisplayTools.h.

Referenced by GetMainWindow(), and SetMainWindow().

◆ m_winDBRoot

ccHObject* ecvDisplayTools::m_winDBRoot

Window own DB.

Definition at line 1936 of file ecvDisplayTools.h.

Referenced by GetOwnDB(), and ~ecvDisplayTools().

◆ USE_2D

bool ecvDisplayTools::USE_2D = true
static

◆ USE_VTK_PICK

bool ecvDisplayTools::USE_VTK_PICK = false
static

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