QCullFace Class | Qt 3D 5.12.6

Qt 5.12 | Qt 3D | C++ Classes | QCullFace

Qt 5.12.6 Reference Documentation

# QCullFace Class

(Qt3DRender::QCullFace)

The QCullFace class specifies whether front or back face culling is enabled. More...

Header: | #include <QCullFace>
qmake: | QT += 3drender
Since: | Qt 5.7
Instantiated By: | CullFace
Inherits: | Qt3DRender::QRenderState

- List of all members, including inherited members
- Obsolete members

## Public Types

enum | CullingMode { NoCulling, Front, Back, FrontAndBack }

## Properties

- mode : CullingMode

- 3 properties inherited from Qt3DCore::QNode
- 1 property inherited from QObject

## Public Functions

| QCullFace(Qt3DCore::QNode *parent = nullptr)
Qt3DRender::QCullFace::CullingMode | mode() const

- 13 public functions inherited from Qt3DCore::QNode
- 31 public functions inherited from QObject

## Public Slots

void | setMode(Qt3DRender::QCullFace::CullingMode mode)

- 3 public slots inherited from Qt3DCore::QNode
- 1 public slot inherited from QObject

## Signals

void | modeChanged(Qt3DRender::QCullFace::CullingMode mode)

- 4 signals inherited from Qt3DCore::QNode
- 2 signals inherited from QObject

## Static Public Members

const QMetaObject | staticMetaObject

- 9 static public members inherited from QObject

### Additional Inherited Members

- 2 protected functions inherited from Qt3DCore::QNode
- 9 protected functions inherited from QObject

## Detailed Description

The QCullFace class specifies whether front or back face culling is enabled.

QCullFace sets whether the front or back facets are culled. Facets include triangles, quadrilaterals, polygons and rectangles.

It can be added by calling the addRenderState() method on a QRenderPass:

      // using namespace Qt3DRender;

      QRenderPass *renderPass = new QRenderPass();

      // Create a front face culling render state
      QCullFace *cullFront = new QCullFace();
      cullFront->setMode(QCullFace::Front);

      // Add the render state to the render pass
      renderPass->addRenderState(cullFront);

Or by calling the addRenderState() method on a QRenderStateSet:

      // using namespace Qt3DRender;

      QRenderStateSet *renderStateSet = new QRenderStateSet();

      // Create a front face culling render state
      QCullFace *cullFront = new QCullFace();
      cullFront->setMode(QCullFace::Front);

      // Add the render state to the render pass
      renderStateSet->addRenderState(cullFront);

See also QFrontFace.

## Member Type Documentation

### enum QCullFace::CullingMode

This enumeration specifies values for the culling mode.

Constant | Value | Description
--- | --- | ---
`Qt3DRender::QCullFace::NoCulling` | `0x0` | Culling is disabled
`Qt3DRender::QCullFace::Front` | `0x0404` | Culling is enabled for front facing polygons
`Qt3DRender::QCullFace::Back` | `0x0405` | Culling is enabled for back facing polygons
`Qt3DRender::QCullFace::FrontAndBack` | `0x0408` | Culling is enabled for all polygons, points and lines are drawn

## Property Documentation

### mode : CullingMode

Holds the culling mode used by QCullFace. Default is set to QCullFace.Back.

Access functions:

Qt3DRender::QCullFace::CullingMode | mode() const
void | setMode(Qt3DRender::QCullFace::CullingMode mode)

Notifier signal:

void | modeChanged(Qt3DRender::QCullFace::CullingMode mode)

## Member Function Documentation

### QCullFace::QCullFace(Qt3DCore::QNode *parent = nullptr)

Constructs a new QCullFace::QCullFace instance with parent as parent.