ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ecvDrawContext.h File Reference
#include <CVGeom.h>
#include <QFont>
#include <QImage>
#include <QPoint>
#include <QRect>
#include "ecvColorTypes.h"
#include "ecvGLMatrix.h"
#include "ecvMaterial.h"
Include dependency graph for ecvDrawContext.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  glDrawParams
 Display parameters of a 3D entity. More...
 
struct  PROPERTY_PARAM
 
struct  LineWidget
 
struct  removeInfo
 to be removed structure More...
 
struct  hideInfo
 
struct  TransformInfo
 
struct  TransformInfo::RotateParam
 
struct  ecvTextParam
 
struct  ccGLDrawContext
 Display context. More...
 
struct  WIDGETS_PARAMETER
 

Macros

#define MACRO_Draw2D(context)   (context.drawingFlags & CC_DRAW_2D)
 
#define MACRO_Draw3D(context)   (context.drawingFlags & CC_DRAW_3D)
 
#define MACRO_EntityPicking(context)   (context.drawingFlags & CC_ENTITY_PICKING)
 
#define MACRO_FastEntityPicking(context)    (context.drawingFlags & CC_FAST_ENTITY_PICKING)
 
#define MACRO_SkipUnselected(context)    (context.drawingFlags & CC_SKIP_UNSELECTED)
 
#define MACRO_SkipSelected(context)   (context.drawingFlags & CC_SKIP_SELECTED)
 
#define MACRO_LightIsEnabled(context)   (context.drawingFlags & CC_LIGHT_ENABLED)
 
#define MACRO_Foreground(context)   (context.drawingFlags & CC_DRAW_FOREGROUND)
 
#define MACRO_LODActivated(context)   (context.drawingFlags & CC_LOD_ACTIVATED)
 
#define MACRO_VirtualTransEnabled(context)    (context.drawingFlags & CC_VIRTUAL_TRANS_ENABLED)
 

Typedefs

using CC_DRAW_CONTEXT = ccGLDrawContext
 

Enumerations

enum  PROPERTY_MODE {
  ECV_POINTSSIZE_PROPERTY , ECV_LINEWITH_PROPERTY , ECV_COLOR_PROPERTY , ECV_OPACITY_PROPERTY ,
  ECV_SHADING_PROPERTY
}
 
enum  SHADING_MODE { ECV_SHADING_FLAT , ECV_SHADING_GOURAUD , ECV_SHADING_PHONG }
 
enum  MESH_RENDERING_MODE { ECV_POINTS_MODE , ECV_WIREFRAME_MODE , ECV_SURFACE_MODE }
 
enum  ENTITY_TYPE {
  ECV_HIERARCHY_OBJECT , ECV_POINT_CLOUD , ECV_MARK_POINT , ECV_MESH ,
  ECV_SHAPE , ECV_OCTREE , ECV_KDTREE , ECV_FACET ,
  ECV_LINES_3D , ECV_LINES_2D , ECV_TRIANGLE_2D , ECV_RECTANGLE_2D ,
  ECV_POLYLINE_2D , ECV_CIRCLE_2D , ECV_POLYGON , ECV_2DLABLE ,
  ECV_2DLABLE_VIEWPORT , ECV_CAPTION , ECV_SCALAR_BAR , ECV_TEXT3D ,
  ECV_TEXT2D , ECV_IMAGE , ECV_SENSOR , ECV_ALL ,
  ECV_NONE
}
 
enum  WIDGETS_TYPE {
  WIDGET_BBOX , WIDGET_IMAGE , WIDGET_LINE_2D , WIDGET_TRIANGLE_2D ,
  WIDGET_POINTS_2D , WIDGET_CIRCLE_2D , WIDGET_RECTANGLE_2D , WIDGET_POLYGONMESH ,
  WIDGET_COORDINATE , WIDGET_POLYLINE , WIDGET_POLYLINE_2D , WIDGET_LINE_3D ,
  WIDGET_SPHERE , WIDGET_CAPTION , WIDGET_SCALAR_BAR , WIDGET_T3D ,
  WIDGET_T2D
}
 
enum  CC_DRAWING_FLAGS {
  CC_DRAW_2D = 0x0001 , CC_DRAW_3D = 0x0002 , CC_DRAW_FOREGROUND = 0x0004 , CC_LIGHT_ENABLED = 0x0008 ,
  CC_SKIP_UNSELECTED = 0x0010 , CC_SKIP_SELECTED = 0x0020 , CC_SKIP_ALL = 0x0030 , CC_ENTITY_PICKING = 0x0040 ,
  CC_FAST_ENTITY_PICKING = 0x0200 , CC_LOD_ACTIVATED = 0x0400 , CC_VIRTUAL_TRANS_ENABLED = 0x0800
}
 

Macro Definition Documentation

◆ MACRO_Draw2D

#define MACRO_Draw2D (   context)    (context.drawingFlags & CC_DRAW_2D)

Definition at line 350 of file ecvDrawContext.h.

◆ MACRO_Draw3D

#define MACRO_Draw3D (   context)    (context.drawingFlags & CC_DRAW_3D)

Definition at line 351 of file ecvDrawContext.h.

◆ MACRO_EntityPicking

#define MACRO_EntityPicking (   context)    (context.drawingFlags & CC_ENTITY_PICKING)

Definition at line 352 of file ecvDrawContext.h.

◆ MACRO_FastEntityPicking

#define MACRO_FastEntityPicking (   context)     (context.drawingFlags & CC_FAST_ENTITY_PICKING)

Definition at line 353 of file ecvDrawContext.h.

◆ MACRO_Foreground

#define MACRO_Foreground (   context)    (context.drawingFlags & CC_DRAW_FOREGROUND)

Definition at line 359 of file ecvDrawContext.h.

◆ MACRO_LightIsEnabled

#define MACRO_LightIsEnabled (   context)    (context.drawingFlags & CC_LIGHT_ENABLED)

Definition at line 358 of file ecvDrawContext.h.

◆ MACRO_LODActivated

#define MACRO_LODActivated (   context)    (context.drawingFlags & CC_LOD_ACTIVATED)

Definition at line 360 of file ecvDrawContext.h.

◆ MACRO_SkipSelected

#define MACRO_SkipSelected (   context)    (context.drawingFlags & CC_SKIP_SELECTED)

Definition at line 357 of file ecvDrawContext.h.

◆ MACRO_SkipUnselected

#define MACRO_SkipUnselected (   context)     (context.drawingFlags & CC_SKIP_UNSELECTED)

Definition at line 355 of file ecvDrawContext.h.

◆ MACRO_VirtualTransEnabled

#define MACRO_VirtualTransEnabled (   context)     (context.drawingFlags & CC_VIRTUAL_TRANS_ENABLED)

Definition at line 361 of file ecvDrawContext.h.

Typedef Documentation

◆ CC_DRAW_CONTEXT

Definition at line 531 of file ecvDrawContext.h.

Enumeration Type Documentation

◆ CC_DRAWING_FLAGS

Enumerator
CC_DRAW_2D 
CC_DRAW_3D 
CC_DRAW_FOREGROUND 
CC_LIGHT_ENABLED 
CC_SKIP_UNSELECTED 
CC_SKIP_SELECTED 
CC_SKIP_ALL 
CC_ENTITY_PICKING 
CC_FAST_ENTITY_PICKING 
CC_LOD_ACTIVATED 
CC_VIRTUAL_TRANS_ENABLED 

Definition at line 329 of file ecvDrawContext.h.

◆ ENTITY_TYPE

Enumerator
ECV_HIERARCHY_OBJECT 
ECV_POINT_CLOUD 
ECV_MARK_POINT 
ECV_MESH 
ECV_SHAPE 
ECV_OCTREE 
ECV_KDTREE 
ECV_FACET 
ECV_LINES_3D 
ECV_LINES_2D 
ECV_TRIANGLE_2D 
ECV_RECTANGLE_2D 
ECV_POLYLINE_2D 
ECV_CIRCLE_2D 
ECV_POLYGON 
ECV_2DLABLE 
ECV_2DLABLE_VIEWPORT 
ECV_CAPTION 
ECV_SCALAR_BAR 
ECV_TEXT3D 
ECV_TEXT2D 
ECV_IMAGE 
ECV_SENSOR 
ECV_ALL 
ECV_NONE 

Definition at line 50 of file ecvDrawContext.h.

◆ MESH_RENDERING_MODE

Enumerator
ECV_POINTS_MODE 
ECV_WIREFRAME_MODE 
ECV_SURFACE_MODE 

Definition at line 44 of file ecvDrawContext.h.

◆ PROPERTY_MODE

Enumerator
ECV_POINTSSIZE_PROPERTY 
ECV_LINEWITH_PROPERTY 
ECV_COLOR_PROPERTY 
ECV_OPACITY_PROPERTY 
ECV_SHADING_PROPERTY 

Definition at line 34 of file ecvDrawContext.h.

◆ SHADING_MODE

Enumerator
ECV_SHADING_FLAT 
ECV_SHADING_GOURAUD 
ECV_SHADING_PHONG 

Definition at line 42 of file ecvDrawContext.h.

◆ WIDGETS_TYPE

Enumerator
WIDGET_BBOX 
WIDGET_IMAGE 
WIDGET_LINE_2D 
WIDGET_TRIANGLE_2D 
WIDGET_POINTS_2D 
WIDGET_CIRCLE_2D 
WIDGET_RECTANGLE_2D 
WIDGET_POLYGONMESH 
WIDGET_COORDINATE 
WIDGET_POLYLINE 
WIDGET_POLYLINE_2D 
WIDGET_LINE_3D 
WIDGET_SPHERE 
WIDGET_CAPTION 
WIDGET_SCALAR_BAR 
WIDGET_T3D 
WIDGET_T2D 

Definition at line 78 of file ecvDrawContext.h.