QPointLight Class | Qt 3D 5.12.12

- Qt 5.12
- Qt 3D
- C++ Classes
- QPointLight
- Qt 5.12.12 Reference Documentation

# QPointLight Class

(Qt3DRender::QPointLight)

Encapsulate a Point Light object in a Qt 3D scene. More...

Header: | #include <QPointLight>
qmake: | QT += 3drender
Since: | Qt 5.5
Instantiated By: | PointLight
Inherits: | Qt3DRender::QAbstractLight

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

## Properties

- constantAttenuation : float
- linearAttenuation : float
- quadraticAttenuation : float

- 3 properties inherited from Qt3DRender::QAbstractLight
- 1 property inherited from Qt3DCore::QComponent
- 3 properties inherited from Qt3DCore::QNode
- 1 property inherited from QObject

## Public Functions

| QPointLight(Qt3DCore::QNode *parent = nullptr)
float | constantAttenuation() const
float | linearAttenuation() const
float | quadraticAttenuation() const

- 3 public functions inherited from Qt3DRender::QAbstractLight
- 2 public functions inherited from Qt3DCore::QComponent
- 13 public functions inherited from Qt3DCore::QNode
- 31 public functions inherited from QObject

## Public Slots

void | setConstantAttenuation(float value)
void | setLinearAttenuation(float value)
void | setQuadraticAttenuation(float value)

- 2 public slots inherited from Qt3DRender::QAbstractLight
- 1 public slot inherited from Qt3DCore::QComponent
- 3 public slots inherited from Qt3DCore::QNode
- 1 public slot inherited from QObject

## Signals

void | constantAttenuationChanged(float constantAttenuation)
void | linearAttenuationChanged(float linearAttenuation)
void | quadraticAttenuationChanged(float quadraticAttenuation)

- 2 signals inherited from Qt3DRender::QAbstractLight
- 3 signals inherited from Qt3DCore::QComponent
- 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

Encapsulate a Point Light object in a Qt 3D scene.

A point light is a light source that emits light in all directions, from a single point. Conceptually, this is similar to light given off by a standard light bulb.

A point light uses three attenuation factors to describe how the intensity of the light decreases over distance. These factors are designed to be used together in calcuating total attenuation. For the materials in Qt3D Extras the following formula is used, where distance is the distance from the light to the surface being rendered:

     totalAttenuation = 1.0 / (constantAttenuation + (linearAttenuation * distance) + (quadraticAttenuation * distance * distance));

Custom materials may choose to interpret these factors differently.

## Property Documentation

### constantAttenuation : float

Specifies the constant attenuation of the point light

Access functions:

float | constantAttenuation() const
void | setConstantAttenuation(float value)

Notifier signal:

void | constantAttenuationChanged(float constantAttenuation)

### linearAttenuation : float

Specifies the linear attenuation of the point light

Access functions:

float | linearAttenuation() const
void | setLinearAttenuation(float value)

Notifier signal:

void | linearAttenuationChanged(float linearAttenuation)

### quadraticAttenuation : float

Specifies the quadratic attenuation of the point light

Access functions:

float | quadraticAttenuation() const
void | setQuadraticAttenuation(float value)

Notifier signal:

void | quadraticAttenuationChanged(float quadraticAttenuation)

## Member Function Documentation

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

Constructs a new QPointLight with the specified parent.