6#include <QtQuick3DRuntimeRender/private/qssgrendercamera_p.h> 
   12#include <QtQuick3DUtils/private/qssgutils_p.h> 
   86    return m_frustumCullingEnabled;
 
  116    if (m_lookAtNode == node)
 
  131    emit lookAtNodeChanged();
 
  156    QVector4D scenePosRightHand(scenePos, 1);
 
  171    const QVector4D clipNearPos(scenePosView.
x(), scenePosView.
y(), -1, 1);
 
  172    auto invProj = projectionViewMatrix.
inverted();
 
  176    const QVector4D clipNearPosScene = clipNearPosTransformed / clipNearPosTransformed.
w();
 
  182    const QVector4D clipFarPosScene = clipFarPosTransformed / clipFarPosTransformed.
w();
 
  186    const float distanceToScenePos = scenePosVec.
length()
 
  189    scenePosView.
setZ(distanceToScenePos);
 
  192    scenePosView.
setX((scenePosView.
x() / 2) + 0.5f);
 
  193    scenePosView.
setY((scenePosView.
y() / 2) + 0.5f);
 
  195    scenePosView.
setY(1 - scenePosView.
y());
 
  222    clipNearPos.
setY(1 - clipNearPos.
y());
 
  224    clipNearPos.
setX((clipNearPos.
x() * 2.0f) - 1.0f);
 
  225    clipNearPos.
setY((clipNearPos.
y() * 2.0f) - 1.0f);
 
  229    clipNearPos.
setZ(-1);
 
  244            / transformedClipNearPos.
w();
 
  246            / transformedClipFarPos.
w();
 
  250    const float distanceFromClipNear = viewportPos.
z();
 
  266        cameraNode->calculateGlobalVariables(
QRect(0, 0, 
width * cameraNode->dpr, 
height * cameraNode->dpr));
 
  282        cameraNode->calculateGlobalVariables(
QRect(0, 0, 
width * cameraNode->dpr, 
height * cameraNode->dpr));
 
  300    const auto &targetPosition = scenePos;
 
  303    QVector3D targetVector = sourcePosition - targetPosition;
 
  356void QQuick3DCamera::updateLookAt()
 
  388    return m_levelOfDetailBias;
 
  391void QQuick3DCamera::setLevelOfDetailBias(
float newLevelOfDetailBias)
 
  393    if (
qFuzzyCompare(m_levelOfDetailBias, newLevelOfDetailBias))
 
  395    m_levelOfDetailBias = newLevelOfDetailBias;
 
  396    emit levelOfDetailBiasChanged();
 
The QMatrix4x4 class represents a 4x4 transformation matrix in 3D space.
 
QMatrix4x4 inverted(bool *invertible=nullptr) const
Returns the inverse of this matrix.
 
static QMetaObject::Connection connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
\threadsafe
 
bool frustumCullingEnabled
 
QQuick3DNode * lookAtNode
 
QSSGRenderGraphObject * updateSpatialNode(QSSGRenderGraphObject *node) override
 
Q_INVOKABLE QVector3D mapFromViewport(const QVector3D &viewportPos) const
\qmlmethod vector3d Camera::mapFromViewport(vector3d viewportPos)
 
void frustumCullingEnabledChanged()
 
void updateGlobalVariables(const QRectF &inViewport)
 
void setLookAtNode(QQuick3DNode *node)
 
Q_INVOKABLE void lookAt(const QVector3D &scenePos)
\qmlmethod vector3d Camera::lookAt(vector3d scenePos)
 
QQuick3DCamera(QQuick3DNodePrivate &dd, QQuick3DNode *parent=nullptr)
\qmltype Camera \inherits Node \inqmlmodule QtQuick3D
 
Q_INVOKABLE QVector3D mapToViewport(const QVector3D &scenePos) const
\qmlmethod vector3d Camera::mapToViewport(vector3d scenePos)
 
float levelOfDetailBias
\qmlproperty float Camera::levelOfDetailBias
 
void setFrustumCullingEnabled(bool frustumCullingEnabled)
 
void setEulerRotation(const QVector3D &eulerRotation)
 
void markAllDirty() override
 
QMatrix4x4 sceneTransform
 
void scenePositionChanged()
 
QSSGRenderGraphObject * updateSpatialNode(QSSGRenderGraphObject *node) override
 
static QQuick3DObjectPrivate * get(QQuick3DObject *item)
 
QSSGRenderGraphObject * spatialNode
 
\inmodule QtCore\reentrant
 
\inmodule QtCore\reentrant
 
The QVector2D class represents a vector or vertex in 2D space.
 
The QVector3D class represents a vector or vertex in 3D space.
 
constexpr void setX(float x) noexcept
Sets the x coordinate of this point to the given finite x coordinate.
 
float length() const noexcept
Returns the length of the vector from the origin.
 
constexpr void setY(float y) noexcept
Sets the y coordinate of this point to the given finite y coordinate.
 
constexpr float y() const noexcept
Returns the y coordinate of this point.
 
constexpr float x() const noexcept
Returns the x coordinate of this point.
 
constexpr void setZ(float z) noexcept
Sets the z coordinate of this point to the given finite z coordinate.
 
static constexpr float dotProduct(QVector3D v1, QVector3D v2) noexcept
Returns the dot product of v1 and v2.
 
constexpr float z() const noexcept
Returns the z coordinate of this point.
 
The QVector4D class represents a vector or vertex in 4D space.
 
constexpr void setZ(float z) noexcept
Sets the z coordinate of this point to the given finite z coordinate.
 
constexpr float x() const noexcept
Returns the x coordinate of this point.
 
constexpr void setY(float y) noexcept
Sets the y coordinate of this point to the given finite y coordinate.
 
constexpr float w() const noexcept
Returns the w coordinate of this point.
 
constexpr void setX(float x) noexcept
Sets the x coordinate of this point to the given finite x coordinate.
 
constexpr float y() const noexcept
Returns the y coordinate of this point.
 
constexpr QVector3D toVector3D() const noexcept
Returns the 3D vector form of this 4D vector, dropping the w coordinate.
 
Combined button and popup list for selecting options.
 
QVector3D Q_QUICK3DUTILS_EXPORT transform(const QMatrix4x4 &m, const QVector3D &v)
 
bool qFuzzyCompare(qfloat16 p1, qfloat16 p2) noexcept
 
bool qFuzzyIsNull(qfloat16 f) noexcept
 
bool qIsNaN(qfloat16 f) noexcept
 
static QVector3D toVector3D(const QDoubleVector3D &in)
 
constexpr float qRadiansToDegrees(float radians)
 
GLint GLsizei GLsizei height
 
GLint GLenum GLboolean normalized
 
QT_BEGIN_NAMESPACE bool qUpdateIfNeeded(T &orig, T updated)
 
myObject disconnect()
[26]
 
QSSGCameraGlobalCalculationResult calculateGlobalVariables(const QRectF &inViewport)
 
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent