Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
#include <qquick3dviewport_p.h>
Public Slots | |
void | setCamera (QQuick3DCamera *camera) |
void | setEnvironment (QQuick3DSceneEnvironment *environment) |
void | setImportScene (QQuick3DNode *inScene) |
void | setRenderMode (QQuick3DViewport::RenderMode renderMode) |
Q_REVISION (6, 7) void setExplicitTextureWidth(int width) | |
Q_REVISION (6, 7) void setExplicitTextureHeight(int height) | |
void | cleanupDirectRenderer () |
void | setGlobalPickingEnabled (bool isEnabled) |
Public Slots inherited from QQuickItem | |
void | update () |
Schedules a call to updatePaintNode() for this item. | |
Public Slots inherited from QObject | |
void | deleteLater () |
\threadsafe | |
Public Member Functions | |
QQuick3DViewport (QQuickItem *parent=nullptr) | |
\qmltype View3D \inherits QQuickItem \inqmlmodule QtQuick3D | |
~QQuick3DViewport () override | |
QQmlListProperty< QObject > | data () |
QQuick3DCamera * | camera () const |
\qmlproperty QtQuick3D::Camera QtQuick3D::View3D::camera | |
QQuick3DSceneEnvironment * | environment () const |
\qmlproperty QtQuick3D::SceneEnvironment QtQuick3D::View3D::environment | |
QQuick3DNode * | scene () const |
\qmlproperty QtQuick3D::Node QtQuick3D::View3D::scene \readonly | |
QQuick3DNode * | importScene () const |
\qmlproperty QtQuick3D::Node QtQuick3D::View3D::importScene | |
RenderMode | renderMode () const |
\qmlproperty enumeration QtQuick3D::View3D::renderMode | |
QQuick3DRenderStats * | renderStats () const |
\qmlproperty enumeration QtQuick3D::View3D::renderFormat | |
QQuick3DSceneRenderer * | createRenderer () const |
bool | isTextureProvider () const override |
Returns true if this item is a texture provider. | |
QSGTextureProvider * | textureProvider () const override |
Returns the texture provider for an item. | |
void | releaseResources () override |
This function is called when an item should release graphics resources which are not already managed by the nodes returned from QQuickItem::updatePaintNode(). | |
Q_INVOKABLE QVector3D | mapFrom3DScene (const QVector3D &scenePos) const |
\qmlmethod vector3d View3D::mapFrom3DScene(vector3d scenePos) | |
Q_INVOKABLE QVector3D | mapTo3DScene (const QVector3D &viewPos) const |
\qmlmethod vector3d View3D::mapTo3DScene(vector3d viewPos) | |
Q_INVOKABLE QQuick3DPickResult | pick (float x, float y) const |
\qmlmethod pickResult View3D::pick(float x, float y) | |
Q_REVISION (6, 8) Q_INVOKABLE QQuick3DPickResult pick(float x | |
Q_REVISION (6, 8) Q_INVOKABLE QList< QQuick3DPickResult > pickSubset(float x | |
Q_REVISION (6, 2) Q_INVOKABLE QList< QQuick3DPickResult > pickAll(float x | |
Q_REVISION (6, 2) Q_INVOKABLE QQuick3DPickResult rayPick(const QVector3D &origin | |
Q_REVISION (6, 2) Q_INVOKABLE QList< QQuick3DPickResult > rayPickAll(const QVector3D &origin | |
void | processPointerEventFromRay (const QVector3D &origin, const QVector3D &direction, QPointerEvent *event) |
bool | singlePointPick (QSinglePointEvent *event, const QVector3D &origin, const QVector3D &direction) |
Q_REVISION (6, 8) Q_INVOKABLE void setTouchpoint(QQuickItem *target | |
QQuick3DLightmapBaker * | maybeLightmapBaker () |
QQuick3DLightmapBaker * | lightmapBaker () |
Q_INVOKABLE void | bakeLightmap () |
QQmlListProperty< QQuick3DObject > | extensions () |
Q_REVISION (6, 7) int explicitTextureWidth() const | |
Q_REVISION (6, 7) int explicitTextureHeight() const | |
Q_REVISION (6, 7) QSize effectiveTextureSize() const | |
bool | extensionListDirty () const |
const QList< QQuick3DObject * > & | extensionList () const |
void | clearExtensionListDirty () |
Q_REVISION (6, 7) Q_INVOKABLE void rebuildExtensionList() | |
Public Member Functions inherited from QQuickItem | |
QQuickItem (QQuickItem *parent=nullptr) | |
Constructs a QQuickItem with the given parent. | |
~QQuickItem () override | |
Destroys the QQuickItem. | |
QQuickWindow * | window () const |
Returns the window in which this item is rendered. | |
QQuickItem * | parentItem () const |
void | setParentItem (QQuickItem *parent) |
void | stackBefore (const QQuickItem *) |
Moves the specified sibling item to the index before this item within the list of children. | |
void | stackAfter (const QQuickItem *) |
Moves the specified sibling item to the index after this item within the list of children. | |
QRectF | childrenRect () |
\qmlpropertygroup QtQuick::Item::childrenRect \qmlproperty real QtQuick::Item::childrenRect.x \qmlproperty real QtQuick::Item::childrenRect.y \qmlproperty real QtQuick::Item::childrenRect.width \qmlproperty real QtQuick::Item::childrenRect.height \readonly | |
QList< QQuickItem * > | childItems () const |
Returns the children of this item. | |
bool | clip () const |
\qmlproperty bool QtQuick::Item::clip This property holds whether clipping is enabled. | |
void | setClip (bool) |
QString | state () const |
\qmlproperty string QtQuick::Item::state | |
void | setState (const QString &) |
qreal | baselineOffset () const |
\qmlproperty int QtQuick::Item::baselineOffset | |
void | setBaselineOffset (qreal) |
QQmlListProperty< QQuickTransform > | transform () |
qreal | x () const |
qreal | y () const |
QPointF | position () const |
void | setX (qreal) |
void | setY (qreal) |
void | setPosition (const QPointF &) |
QBindable< qreal > | bindableX () |
QBindable< qreal > | bindableY () |
qreal | width () const |
void | setWidth (qreal) |
void | resetWidth () |
void | setImplicitWidth (qreal) |
qreal | implicitWidth () const |
Returns the width of the item that is implied by other properties that determine the content. | |
QBindable< qreal > | bindableWidth () |
qreal | height () const |
void | setHeight (qreal) |
void | resetHeight () |
void | setImplicitHeight (qreal) |
qreal | implicitHeight () const |
QBindable< qreal > | bindableHeight () |
QSizeF | size () const |
void | setSize (const QSizeF &size) |
TransformOrigin | transformOrigin () const |
void | setTransformOrigin (TransformOrigin) |
QPointF | transformOriginPoint () const |
void | setTransformOriginPoint (const QPointF &) |
qreal | z () const |
void | setZ (qreal) |
qreal | rotation () const |
void | setRotation (qreal) |
qreal | scale () const |
void | setScale (qreal) |
qreal | opacity () const |
void | setOpacity (qreal) |
bool | isVisible () const |
void | setVisible (bool) |
bool | isEnabled () const |
void | setEnabled (bool) |
bool | smooth () const |
void | setSmooth (bool) |
bool | activeFocusOnTab () const |
\qmlproperty bool QtQuick::Item::activeFocusOnTab | |
void | setActiveFocusOnTab (bool) |
bool | antialiasing () const |
void | setAntialiasing (bool) |
void | resetAntialiasing () |
Flags | flags () const |
Returns the item flags for this item. | |
void | setFlag (Flag flag, bool enabled=true) |
Enables the specified flag for this item if enabled is true; if enabled is false, the flag is disabled. | |
void | setFlags (Flags flags) |
Enables the specified flags for this item. | |
virtual QRectF | boundingRect () const |
Returns the extents of the item in its own coordinate system: a rectangle from {0, 0} to \l width() and \l height(). | |
virtual QRectF | clipRect () const |
Returns the rectangular area within this item that is currently visible in \l viewportItem(), if there is a viewport and the \l ItemObservesViewport flag is set; otherwise, the extents of this item in its own coordinate system: a rectangle from {0, 0} to \l width() and \l height(). | |
QQuickItem * | viewportItem () const |
If the \l ItemObservesViewport flag is set, returns the nearest parent with the \l ItemIsViewport flag. | |
bool | hasActiveFocus () const |
bool | hasFocus () const |
void | setFocus (bool) |
void | setFocus (bool focus, Qt::FocusReason reason) |
bool | isFocusScope () const |
Returns true if this item is a focus scope, and false otherwise. | |
QQuickItem * | scopedFocusItem () const |
If this item is a focus scope, this returns the item in its focus chain that currently has focus. | |
Qt::FocusPolicy | focusPolicy () const |
void | setFocusPolicy (Qt::FocusPolicy policy) |
Sets the focus policy of this item to policy. | |
bool | isAncestorOf (const QQuickItem *child) const |
Returns true if this item is an ancestor of child (i.e., if this item is child's parent, or one of child's parent's ancestors). | |
Qt::MouseButtons | acceptedMouseButtons () const |
Returns the mouse buttons accepted by this item. | |
void | setAcceptedMouseButtons (Qt::MouseButtons buttons) |
Sets the mouse buttons accepted by this item to buttons. | |
bool | acceptHoverEvents () const |
Returns whether hover events are accepted by this item. | |
void | setAcceptHoverEvents (bool enabled) |
If enabled is true, this sets the item to accept hover events; otherwise, hover events are not accepted by this item. | |
bool | acceptTouchEvents () const |
Returns whether touch events are accepted by this item. | |
void | setAcceptTouchEvents (bool accept) |
If enabled is true, this sets the item to accept touch events; otherwise, touch events are not accepted by this item. | |
bool | isUnderMouse () const |
void | grabMouse () |
void | ungrabMouse () |
bool | keepMouseGrab () const |
Returns whether mouse input should exclusively remain with this item. | |
void | setKeepMouseGrab (bool) |
Sets whether the mouse input should remain exclusively with this item. | |
bool | filtersChildMouseEvents () const |
Returns whether pointer events intended for this item's children should be filtered through this item. | |
void | setFiltersChildMouseEvents (bool filter) |
Sets whether pointer events intended for this item's children should be filtered through this item. | |
void | grabTouchPoints (const QList< int > &ids) |
void | ungrabTouchPoints () |
bool | keepTouchGrab () const |
Returns whether the touch points grabbed by this item should exclusively remain with this item. | |
void | setKeepTouchGrab (bool) |
Sets whether the touch points grabbed by this item should remain exclusively with this item. | |
Q_REVISION (2, 4) Q_INVOKABLE bool grabToImage(const QJSValue &callback | |
QSharedPointer< QQuickItemGrabResult > | grabToImage (const QSize &targetSize=QSize()) |
Grabs the item into an in-memory image. | |
virtual Q_INVOKABLE bool | contains (const QPointF &point) const |
\qmlmethod bool QtQuick::Item::contains(point point) | |
QObject * | containmentMask () const |
void | setContainmentMask (QObject *mask) |
QTransform | itemTransform (QQuickItem *, bool *) const |
\qmlmethod point QtQuick::Item::mapFromItem(Item item, real x, real y) \qmlmethod point QtQuick::Item::mapFromItem(Item item, point p) \qmlmethod rect QtQuick::Item::mapFromItem(Item item, real x, real y, real width, real height) \qmlmethod rect QtQuick::Item::mapFromItem(Item item, rect r) | |
QPointF | mapToScene (const QPointF &point) const |
Maps the given point in this item's coordinate system to the equivalent point within the scene's coordinate system, and returns the mapped coordinate. | |
QRectF | mapRectToItem (const QQuickItem *item, const QRectF &rect) const |
Maps the given rect in this item's coordinate system to the equivalent rectangular area within item's coordinate system, and returns the mapped rectangle value. | |
QRectF | mapRectToScene (const QRectF &rect) const |
Maps the given rect in this item's coordinate system to the equivalent rectangular area within the scene's coordinate system, and returns the mapped rectangle value. | |
QPointF | mapFromScene (const QPointF &point) const |
Maps the given point in the scene's coordinate system to the equivalent point within this item's coordinate system, and returns the mapped coordinate. | |
QRectF | mapRectFromItem (const QQuickItem *item, const QRectF &rect) const |
Maps the given rect in item's coordinate system to the equivalent rectangular area within this item's coordinate system, and returns the mapped rectangle value. | |
QRectF | mapRectFromScene (const QRectF &rect) const |
Maps the given rect in the scene's coordinate system to the equivalent rectangular area within this item's coordinate system, and returns the mapped rectangle value. | |
void | polish () |
Schedules a polish event for this item. | |
Q_INVOKABLE QPointF | mapFromItem (const QQuickItem *item, const QPointF &point) const |
Maps the given point in item's coordinate system to the equivalent point within this item's coordinate system, and returns the mapped coordinate. | |
Q_INVOKABLE QPointF | mapFromItem (const QQuickItem *item, qreal x, qreal y) |
Q_INVOKABLE QRectF | mapFromItem (const QQuickItem *item, const QRectF &rect) const |
Q_INVOKABLE QRectF | mapFromItem (const QQuickItem *item, qreal x, qreal y, qreal width, qreal height) const |
Q_INVOKABLE QPointF | mapToItem (const QQuickItem *item, const QPointF &point) const |
Maps the given point in this item's coordinate system to the equivalent point within item's coordinate system, and returns the mapped coordinate. | |
Q_INVOKABLE QPointF | mapToItem (const QQuickItem *item, qreal x, qreal y) |
Q_INVOKABLE QRectF | mapToItem (const QQuickItem *item, const QRectF &rect) const |
Q_INVOKABLE QRectF | mapToItem (const QQuickItem *item, qreal x, qreal y, qreal width, qreal height) const |
Q_REVISION (2, 7) Q_INVOKABLE QPointF mapFromGlobal(qreal x | |
Q_REVISION (2, 7) Q_INVOKABLE QPointF mapFromGlobal(const QPointF &point) const | |
Q_REVISION (2, 7) Q_INVOKABLE QPointF mapToGlobal(qreal x | |
Q_REVISION (2, 7) Q_INVOKABLE QPointF mapToGlobal(const QPointF &point) const | |
Q_INVOKABLE void | forceActiveFocus () |
\qmlmethod point QtQuick::Item::mapToItem(Item item, real x, real y) \qmlmethod point QtQuick::Item::mapToItem(Item item, point p) \qmlmethod rect QtQuick::Item::mapToItem(Item item, real x, real y, real width, real height) \qmlmethod rect QtQuick::Item::mapToItem(Item item, rect r) | |
Q_INVOKABLE void | forceActiveFocus (Qt::FocusReason reason) |
\qmlmethod QtQuick::Item::forceActiveFocus(Qt::FocusReason reason) This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Forces active focus on the item with the given reason. | |
Q_REVISION (2, 1) Q_INVOKABLE QQuickItem *nextItemInFocusChain(bool forward | |
Q_INVOKABLE QQuickItem * | childAt (qreal x, qreal y) const |
\qmlmethod QtQuick::Item::childAt(real x, real y) | |
Q_REVISION (6, 3) Q_INVOKABLE void ensurePolished() | |
Q_REVISION (6, 3) Q_INVOKABLE void dumpItemTree() const | |
Public Member Functions inherited from QObject | |
Q_INVOKABLE | QObject (QObject *parent=nullptr) |
Constructs an object with parent object parent. | |
virtual | ~QObject () |
Destroys the object, deleting all its child objects. | |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
Filters events if this object has been installed as an event filter for the watched object. | |
QString | objectName () const |
Q_WEAK_OVERLOAD void | setObjectName (const QString &name) |
Sets the object's name to name. | |
void | setObjectName (QAnyStringView name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
QBindable< QString > | bindableObjectName () |
bool | isWidgetType () const |
Returns true if the object is a widget; otherwise returns false . | |
bool | isWindowType () const |
Returns true if the object is a window; otherwise returns false . | |
bool | isQuickItemType () const |
Returns true if the object is a QQuickItem; otherwise returns false . | |
bool | signalsBlocked () const noexcept |
Returns true if signals are blocked; otherwise returns false . | |
bool | blockSignals (bool b) noexcept |
If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). | |
QThread * | thread () const |
Returns the thread in which the object lives. | |
bool | moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL) |
Changes the thread affinity for this object and its children and returns true on success. | |
int | startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer) |
This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds. | |
int | startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
void | killTimer (int id) |
Kills the timer with timer identifier, id. | |
void | killTimer (Qt::TimerId id) |
template<typename T > | |
T | findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object. | |
template<typename T > | |
QList< T > | findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. | |
template<typename T > | |
T | findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
template<typename T > | |
QList< T > | findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
const QObjectList & | children () const |
Returns a list of child objects. | |
void | setParent (QObject *parent) |
Makes the object a child of parent. | |
void | installEventFilter (QObject *filterObj) |
Installs an event filter filterObj on this object. | |
void | removeEventFilter (QObject *obj) |
Removes an event filter object obj from this object. | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const |
bool | disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const |
bool | disconnect (const QObject *receiver, const char *member=nullptr) const |
void | dumpObjectTree () const |
Dumps a tree of children to the debug output. | |
void | dumpObjectInfo () const |
Dumps information about signal connections, etc. | |
bool | setProperty (const char *name, const QVariant &value) |
Sets the value of the object's name property to value. | |
bool | setProperty (const char *name, QVariant &&value) |
QVariant | property (const char *name) const |
Returns the value of the object's name property. | |
QList< QByteArray > | dynamicPropertyNames () const |
QBindingStorage * | bindingStorage () |
const QBindingStorage * | bindingStorage () const |
QObject * | parent () const |
Returns a pointer to the parent object. | |
bool | inherits (const char *classname) const |
Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false . | |
Public Member Functions inherited from QQmlParserStatus | |
QQmlParserStatus () | |
virtual | ~QQmlParserStatus () |
Public Attributes | |
float | y |
float QQuick3DModel *model | const |
float const QJSValue &models | const |
float y | const |
const QVector3D &direction | const |
const QPointF & | position |
const QPointF int | pointId |
const QPointF int bool | active |
Public Attributes inherited from QQuickItem | |
const QSize & | targetSize = QSize()) |
qreal y | const |
Protected Member Functions | |
void | geometryChange (const QRectF &newGeometry, const QRectF &oldGeometry) override |
QSGNode * | updatePaintNode (QSGNode *, UpdatePaintNodeData *) override |
Called on the render thread when it is time to sync the state of the item with the scene graph. | |
void | itemChange (QQuickItem::ItemChange change, const QQuickItem::ItemChangeData &value) override |
Called when change occurs for this item. | |
bool | event (QEvent *) override |
This virtual function receives events to an object and should return true if the event e was recognized and processed. | |
void | componentComplete () override |
Invoked after the root component that caused this instantiation has completed construction. | |
Protected Member Functions inherited from QQuickItem | |
bool | event (QEvent *) override |
\reimp | |
bool | isComponentComplete () const |
Returns true if construction of the QML component is complete; otherwise returns false. | |
bool | widthValid () const |
Returns whether the width property has been set explicitly. | |
bool | heightValid () const |
Returns whether the height property has been set explicitly. | |
void | setImplicitSize (qreal, qreal) |
void | classBegin () override |
\reimp Derived classes should call the base class method before adding their own action to perform at classBegin. | |
void | componentComplete () override |
\reimp Derived classes should call the base class method before adding their own actions to perform at componentComplete. | |
virtual void | keyPressEvent (QKeyEvent *event) |
This event handler can be reimplemented in a subclass to receive key press events for an item. | |
virtual void | keyReleaseEvent (QKeyEvent *event) |
This event handler can be reimplemented in a subclass to receive key release events for an item. | |
virtual void | focusInEvent (QFocusEvent *) |
This event handler can be reimplemented in a subclass to receive focus-in events for an item. | |
virtual void | focusOutEvent (QFocusEvent *) |
This event handler can be reimplemented in a subclass to receive focus-out events for an item. | |
virtual void | mousePressEvent (QMouseEvent *event) |
This event handler can be reimplemented in a subclass to receive mouse press events for an item. | |
virtual void | mouseMoveEvent (QMouseEvent *event) |
This event handler can be reimplemented in a subclass to receive mouse move events for an item. | |
virtual void | mouseReleaseEvent (QMouseEvent *event) |
This event handler can be reimplemented in a subclass to receive mouse release events for an item. | |
virtual void | mouseDoubleClickEvent (QMouseEvent *event) |
This event handler can be reimplemented in a subclass to receive mouse double-click events for an item. | |
virtual void | mouseUngrabEvent () |
This event handler can be reimplemented in a subclass to be notified when a mouse ungrab event has occurred on this item. | |
virtual void | touchUngrabEvent () |
This event handler can be reimplemented in a subclass to be notified when a touch ungrab event has occurred on this item. | |
virtual void | touchEvent (QTouchEvent *event) |
This event handler can be reimplemented in a subclass to receive touch events for an item. | |
virtual void | hoverEnterEvent (QHoverEvent *event) |
This event handler can be reimplemented in a subclass to receive hover-enter events for an item. | |
virtual void | hoverMoveEvent (QHoverEvent *event) |
This event handler can be reimplemented in a subclass to receive hover-move events for an item. | |
virtual void | hoverLeaveEvent (QHoverEvent *event) |
This event handler can be reimplemented in a subclass to receive hover-leave events for an item. | |
virtual bool | childMouseEventFilter (QQuickItem *, QEvent *) |
Reimplement this method to filter the pointer events that are received by this item's children. | |
virtual void | updatePolish () |
This function should perform any layout as required for this item. | |
QQuickItem (QQuickItemPrivate &dd, QQuickItem *parent=nullptr) | |
Protected Member Functions inherited from QObject | |
QObject * | sender () const |
Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr. | |
int | senderSignalIndex () const |
int | receivers (const char *signal) const |
Returns the number of receivers connected to the signal. | |
bool | isSignalConnected (const QMetaMethod &signal) const |
virtual void | timerEvent (QTimerEvent *event) |
This event handler can be reimplemented in a subclass to receive timer events for the object. | |
virtual void | childEvent (QChildEvent *event) |
This event handler can be reimplemented in a subclass to receive child events. | |
virtual void | customEvent (QEvent *event) |
This event handler can be reimplemented in a subclass to receive custom events. | |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
QObject (QObjectPrivate &dd, QObject *parent=nullptr) | |
Properties | |
QQmlListProperty< QObject > | data |
QQuick3DCamera * | camera |
QQuick3DSceneEnvironment * | environment |
QQuick3DNode * | scene |
QQuick3DNode * | importScene |
RenderMode | renderMode |
QQuick3DRenderStats * | renderStats |
QQmlListProperty< QQuick3DObject > | extensions |
\qmlproperty List<QtQuick3D::Object3D> View3D::extensions | |
int | explicitTextureWidth |
\qmlproperty int QtQuick3D::View3D::explicitTextureWidth | |
int | explicitTextureHeight |
\qmlproperty int QtQuick3D::View3D::explicitTextureHeight | |
QSize | effectiveTextureSize |
\qmlproperty size QtQuick3D::View3D::effectiveTextureSize | |
Properties inherited from QQuickItem | |
QQuickItem * | parent |
\qmlproperty Item QtQuick::Item::parent This property holds the visual parent of the item. | |
qreal | x |
\qmlproperty real QtQuick::Item::x \qmlproperty real QtQuick::Item::y \qmlproperty real QtQuick::Item::width \qmlproperty real QtQuick::Item::height | |
qreal | y |
Defines the item's y position relative to its parent. | |
qreal | z |
\qmlproperty real QtQuick::Item::z | |
qreal | width |
This property holds the width of this item. | |
qreal | height |
This property holds the height of this item. | |
qreal | opacity |
\qmlproperty real QtQuick::Item::opacity | |
bool | enabled |
\qmlproperty bool QtQuick::Item::enabled | |
bool | visible |
\qmlproperty bool QtQuick::Item::visible | |
Qt::FocusPolicy | focusPolicy |
\qmlproperty enumeration QtQuick::Item::focusPolicy | |
qreal | rotation |
\qmlproperty real QtQuick::Item::rotation This property holds the rotation of the item in degrees clockwise around its transformOrigin. | |
qreal | scale |
\qmlproperty real QtQuick::Item::scale This property holds the scale factor for this item. | |
TransformOrigin | transformOrigin |
\qmlproperty enumeration QtQuick::Item::transformOrigin This property holds the origin point around which scale and rotation transform. | |
QPointF | transformOriginPoint |
QQmlListProperty< QQuickTransform > | transform |
\qmlproperty list<Transform> QtQuick::Item::transform This property holds the list of transformations to apply. | |
bool | smooth |
\qmlproperty bool QtQuick::Item::smooth | |
bool | antialiasing |
\qmlproperty bool QtQuick::Item::antialiasing | |
qreal | implicitWidth |
qreal | implicitHeight |
QObject * | containmentMask |
\qmlproperty QObject* QtQuick::Item::containmentMask | |
Properties inherited from QObject | |
QString | objectName |
the name of this object | |
Friends | |
class | QQuick3DExtensionListHelper |
class | QQuick3DXrManager |
class | QQuick3DXrManagerPrivate |
class | QQuick3DRenderLayerHelpers |
Additional Inherited Members | |
Static Public Member Functions inherited from QObject | |
static QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection) |
\threadsafe | |
static QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot) |
static bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member) |
\threadsafe | |
static bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member) |
static bool | disconnect (const QMetaObject::Connection &) |
Disconnect a connection. | |
template<typename Func1 , typename Func2 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot) |
template<typename Func1 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero) |
Protected Attributes inherited from QObject | |
QScopedPointer< QObjectData > | d_ptr |
Related Symbols inherited from QObject | |
template< class T > T | qobject_cast (const QObject *object) |
Returns the given object cast to type T if the object is of type T (or of a subclass); otherwise returns \nullptr. | |
template< typename T > T | qFindChildqFindChildren (const QObject *obj, const QString &name)() |
template< typename T > QList< T > | qFindChildrenqFindChildren (const QObject *obj, const QString &name)() |
QObjectList | |
\macro Q_CLASSINFO(Name, Value) | |
Definition at line 48 of file qquick3dviewport_p.h.
Enumerator | |
---|---|
Offscreen | |
Underlay | |
Overlay | |
Inline |
Definition at line 70 of file qquick3dviewport_p.h.
|
explicit |
\qmltype View3D \inherits QQuickItem \inqmlmodule QtQuick3D
Provides a viewport on which to render a 3D scene.
View3D provides a 2D surface on which a 3D scene can be rendered. This surface is a Qt Quick \l Item and can be placed in a Qt Quick scene.
There are two ways to define the 3D scene that is visualized on the View3D: If you define a hierarchy of \l{Node}{Node-based} items as children of the View3D directly, then this will become the implicit scene of the View3D.
It is also possible to reference an existing scene by using the \l importScene property and setting it to the root \l Node of the scene you want to visualize. This \l Node does not have to be an ancestor of the View3D, and you can have multiple View3Ds that import the same scene.
This is demonstrated in \l {Qt Quick 3D - View3D example}{View3D example}.
If the View3D both has child \l{Node}{Nodes} and the \l importScene property is set simultaneously, then both scenes will be rendered as if they were sibling subtrees in the same scene.
To control how a scene is rendered, you can set the \l environment property. The type \l SceneEnvironment has a number of visual properties that can be adjusted, such as background color, tone mapping, anti-aliasing and more. \l ExtendedSceneEnvironment in the {QtQuick3D.Helpers} module extends \l SceneEnvironment with even more features, adding common post-processing effects.
In addition, in order for anything to be rendered in the View3D, the scene needs a \l Camera. If there is only a single \l Camera in the scene, then this will automatically be picked. Otherwise, the \l camera property can be used to select the camera. The \l Camera decides which parts of the scene are visible, and how they are projected onto the 2D surface.
By default, the 3D scene will first be rendered into an off-screen buffer and then composited with the rest of the Qt Quick scene when it is done. This provides the maximum level of compatibility, but may have performance implications on some graphics hardware. If this is the case, the \l renderMode property can be used to switch how the View3D is rendered into the window.
A View3D with the default Offscreen \l renderMode is implicitly a \l{QSGTextureProvider}{texture provider} as well. This means that \l ShaderEffect or \l{QtQuick3D::Texture::sourceItem}{Texture.sourceItem} can reference the View3D directly as long as all items live within the same \l{QQuickWindow}{window}. Like with any other \l Item, it is also possible to switch the View3D, or one of its ancestors, into a texture-based \l{QtQuick::Item::layer.enabled}{item layer}.
Definition at line 243 of file qquick3dviewport.cpp.
|
override |
Definition at line 266 of file qquick3dviewport.cpp.
void QQuick3DViewport::bakeLightmap | ( | ) |
Definition at line 1377 of file qquick3dviewport.cpp.
QQuick3DCamera * QQuick3DViewport::camera | ( | ) | const |
\qmlproperty QtQuick3D::Camera QtQuick3D::View3D::camera
This property specifies which \l Camera is used to render the scene. If this property is not set, then the first enabled camera in the scene will be used.
Definition at line 362 of file qquick3dviewport.cpp.
|
signal |
|
slot |
Definition at line 610 of file qquick3dviewport.cpp.
|
inline |
Definition at line 128 of file qquick3dviewport_p.h.
|
overrideprotectedvirtual |
Invoked after the root component that caused this instantiation has completed construction.
At this point all static values and binding values have been assigned to the class.
Implements QQmlParserStatus.
Definition at line 697 of file qquick3dviewport.cpp.
QQuick3DSceneRenderer * QQuick3DViewport::createRenderer | ( | ) | const |
Definition at line 518 of file qquick3dviewport.cpp.
QQmlListProperty< QObject > QQuick3DViewport::data | ( | ) |
QQuick3DSceneEnvironment * QQuick3DViewport::environment | ( | ) | const |
\qmlproperty QtQuick3D::SceneEnvironment QtQuick3D::View3D::environment
This property specifies the SceneEnvironment used to render the scene.
Definition at line 374 of file qquick3dviewport.cpp.
|
signal |
|
overrideprotectedvirtual |
This virtual function receives events to an object and should return true if the event e was recognized and processed.
The event() function can be reimplemented to customize the behavior of an object.
Make sure you call the parent event class implementation for all the events you did not handle.
Example:
Reimplemented from QObject.
Definition at line 689 of file qquick3dviewport.cpp.
|
inlinenodiscard |
Definition at line 127 of file qquick3dviewport_p.h.
|
inlinenodiscard |
Definition at line 126 of file qquick3dviewport_p.h.
QQmlListProperty< QQuick3DObject > QQuick3DViewport::extensions | ( | ) |
|
overrideprotectedvirtual |
This function is called to handle this item's changes in geometry from oldGeometry to newGeometry. If the two geometries are the same, it doesn't do anything.
Derived classes must call the base class method within their implementation.
Reimplemented from QQuickItem.
Definition at line 616 of file qquick3dviewport.cpp.
QQuick3DNode * QQuick3DViewport::importScene | ( | ) | const |
\qmlproperty QtQuick3D::Node QtQuick3D::View3D::importScene
This property defines the reference node of the scene to render to the viewport. The node does not have to be a child of the View3D. This referenced node becomes a sibling with child nodes of View3D, if there are any.
You can also define a hierarchy of \l{Node}{Node-based} items as children of the View3D directly, then this will become the implicit scene of the View3D.
To return the current scene of the View3D, use the \l scene property.
Definition at line 423 of file qquick3dviewport.cpp.
|
signal |
|
overridevirtual |
Returns true if this item is a texture provider.
The default implementation returns false.
This function can be called from any thread.
Reimplemented from QQuickItem.
Definition at line 559 of file qquick3dviewport.cpp.
|
overrideprotectedvirtual |
Called when change occurs for this item.
value contains extra information relating to the change, when applicable.
If you re-implement this method in a subclass, be sure to call
typically at the end of your implementation, to ensure the \l windowChanged() signal will be emitted.
Reimplemented from QQuickItem.
Definition at line 673 of file qquick3dviewport.cpp.
QQuick3DLightmapBaker * QQuick3DViewport::lightmapBaker | ( | ) |
Definition at line 1366 of file qquick3dviewport.cpp.
\qmlmethod vector3d View3D::mapFrom3DScene(vector3d scenePos)
Transforms scenePos from scene space (3D) into view space (2D).
The returned x- and y-values will be be in view coordinates, with the top-left corner at [0, 0] and the bottom-right corner at [width, height]. The returned z-value contains the distance from the near clip plane of the frustum (clipNear) to scenePos in scene coordinates. If the distance is negative, that means the scenePos is behind the active camera. If scenePos cannot be mapped to a position in the scene, a position of [0, 0, 0] is returned.
This function requires that \l camera is assigned to the view.
Definition at line 948 of file qquick3dviewport.cpp.
\qmlmethod vector3d View3D::mapTo3DScene(vector3d viewPos)
Transforms viewPos from view space (2D) into scene space (3D).
The x- and y-values of viewPos should be in view coordinates, with the top-left corner at [0, 0] and the bottom-right corner at [width, height]. The z-value is interpreted as the distance from the near clip plane of the frustum (clipNear) in scene coordinates.
If viewPos cannot successfully be mapped to a position in the scene, a position of [0, 0, 0] is returned.
This function requires that a \l camera is assigned to the view.
Definition at line 981 of file qquick3dviewport.cpp.
QQuick3DLightmapBaker * QQuick3DViewport::maybeLightmapBaker | ( | ) |
Definition at line 1361 of file qquick3dviewport.cpp.
QQuick3DPickResult QQuick3DViewport::pick | ( | float | x, |
float | y ) const |
\qmlmethod pickResult View3D::pick(float x, float y)
\qmlmethod pickResult View3D::pick(float x, float y, Model model)
This method will "shoot" a ray into the scene from view coordinates x and y and return information about the nearest intersection with an object in the scene.
This can, for instance, be called with mouse coordinates to find the object under the mouse cursor.
This method will "shoot" a ray into the scene from view coordinates x and y and return information about the intersection between the ray and the specified model.
This can, for instance, be called with mouse coordinates to find the object under the mouse cursor.
Definition at line 1005 of file qquick3dviewport.cpp.
void QQuick3DViewport::processPointerEventFromRay | ( | const QVector3D & | origin, |
const QVector3D & | direction, | ||
QPointerEvent * | event ) |
Definition at line 1230 of file qquick3dviewport.cpp.
QQuick3DViewport::Q_REVISION | ( | 6 | , |
2 | ) |
QQuick3DViewport::Q_REVISION | ( | 6 | , |
2 | ) const & |
QQuick3DViewport::Q_REVISION | ( | 6 | , |
2 | ) const & |
|
signal |
QQuick3DViewport::Q_REVISION | ( | 6 | , |
7 | ) const |
QQuick3DViewport::Q_REVISION | ( | 6 | , |
7 | ) const |
QQuick3DViewport::Q_REVISION | ( | 6 | , |
7 | ) |
QQuick3DViewport::Q_REVISION | ( | 6 | , |
7 | ) const |
|
signal |
|
signal |
|
signal |
|
slot |
|
slot |
QQuick3DViewport::Q_REVISION | ( | 6 | , |
8 | ) |
QQuick3DViewport::Q_REVISION | ( | 6 | , |
8 | ) |
QQuick3DViewport::Q_REVISION | ( | 6 | , |
8 | ) |
|
overridevirtual |
This function is called when an item should release graphics resources which are not already managed by the nodes returned from QQuickItem::updatePaintNode().
This happens when the item is about to be removed from the window it was previously rendering to. The item is guaranteed to have a \l {QQuickItem::window()}{window} when the function is called.
The function is called on the GUI thread and the state of the rendering thread, when it is used, is unknown. Objects should not be deleted directly, but instead scheduled for cleanup using QQuickWindow::scheduleRenderJob().
Reimplemented from QQuickItem.
Definition at line 600 of file qquick3dviewport.cpp.
QQuick3DViewport::RenderMode QQuick3DViewport::renderMode | ( | ) | const |
\qmlproperty enumeration QtQuick3D::View3D::renderMode
This property determines how the View3D is combined with the other parts of the Qt Quick scene.
By default, the scene will be rendered into an off-screen buffer as an intermediate step. This off-screen buffer is then rendered into the window (or render target) like any other Qt Quick \l Item.
For most users, there will be no need to change the render mode, and this property can safely be ignored. But on some graphics hardware, the use of an off-screen buffer can be a performance bottleneck. If this is the case, it might be worth experimenting with other modes.
\value View3D.Offscreen The scene is rendered into an off-screen buffer as an intermediate step. This off-screen buffer is then composited with the rest of the Qt Quick scene.
\value View3D.Underlay The scene is rendered directly to the window before the rest of the Qt Quick scene is rendered. With this mode, the View3D cannot be placed on top of other Qt Quick items.
\value View3D.Overlay The scene is rendered directly to the window after Qt Quick is rendered. With this mode, the View3D will always be on top of other Qt Quick items.
\value View3D.Inline The View3D's scene graph is embedded into the main scene graph, and the same ordering semantics are applied as to any other Qt Quick \l Item. As this mode can lead to subtle issues, depending on the contents of the scene, due to injecting depth-based 3D content into a 2D scene graph, it is not recommended to be used, unless a specific need arises.
The default is {View3D.Offscreen}.
{View3D.Offscreen} (the default) is the only mode which guarantees perfect graphics fidelity. The other modes all have limitations that can cause visual glitches, so it is important to check that the visual output still looks correct when changing this property.Definition at line 471 of file qquick3dviewport.cpp.
|
signal |
QQuick3DRenderStats * QQuick3DViewport::renderStats | ( | ) | const |
\qmlproperty enumeration QtQuick3D::View3D::renderFormat
This property determines the backing texture's format. Applicable only when the View3D is rendering to a texture, for example because the \l renderMode is {View3D.Offscreen}.
The default is {ShaderEffectSource.RGBA8}.
If the format is not supported by the underlying graphics driver at run time, RGBA8 is used.
\list
\qmlproperty QtQuick3D::RenderStats QtQuick3D::View3D::renderStats \readonly
This property provides statistics about the rendering of a frame, such as \l {RenderStats::fps}{fps}, \l {RenderStats::frameTime}{frameTime}, \l {RenderStats::renderTime}{renderTime}, \l {RenderStats::syncTime}{syncTime}, and \l {RenderStats::maxFrameTime}{maxFrameTime}.
Definition at line 513 of file qquick3dviewport.cpp.
QQuick3DNode * QQuick3DViewport::scene | ( | ) | const |
\qmlproperty QtQuick3D::Node QtQuick3D::View3D::scene \readonly
Returns the root \l Node of the View3D's scene.
To define the 3D scene that is visualized in the View3D:
\list
Definition at line 399 of file qquick3dviewport.cpp.
|
signal |
|
slot |
Definition at line 703 of file qquick3dviewport.cpp.
|
slot |
Definition at line 749 of file qquick3dviewport.cpp.
|
slot |
Definition at line 1382 of file qquick3dviewport.cpp.
|
slot |
Definition at line 761 of file qquick3dviewport.cpp.
|
slot |
Definition at line 819 of file qquick3dviewport.cpp.
bool QQuick3DViewport::singlePointPick | ( | QSinglePointEvent * | event, |
const QVector3D & | origin, | ||
const QVector3D & | direction ) |
Definition at line 1835 of file qquick3dviewport.cpp.
|
overridevirtual |
Returns the texture provider for an item.
The default implementation returns \nullptr.
This function may only be called on the rendering thread.
Reimplemented from QQuickItem.
Definition at line 568 of file qquick3dviewport.cpp.
|
overrideprotectedvirtual |
Called on the render thread when it is time to sync the state of the item with the scene graph.
The function is called as a result of QQuickItem::update(), if the user has set the QQuickItem::ItemHasContents flag on the item.
The function should return the root of the scene graph subtree for this item. Most implementations will return a single QSGGeometryNode containing the visual representation of this item. oldNode is the node that was returned the last time the function was called. updatePaintNodeData provides a pointer to the QSGTransformNode associated with this QQuickItem.
The main thread is blocked while this function is executed so it is safe to read values from the QQuickItem instance and other objects in the main thread.
If no call to QQuickItem::updatePaintNode() result in actual scene graph changes, like QSGNode::markDirty() or adding and removing nodes, then the underlying implementation may decide to not render the scene again as the visual outcome is identical.
Reimplemented from QQuickItem.
Definition at line 624 of file qquick3dviewport.cpp.
|
friend |
Definition at line 181 of file qquick3dviewport_p.h.
|
friend |
Definition at line 184 of file qquick3dviewport_p.h.
|
friend |
Definition at line 182 of file qquick3dviewport_p.h.
|
friend |
Definition at line 183 of file qquick3dviewport_p.h.
Definition at line 112 of file qquick3dviewport_p.h.
Definition at line 103 of file qquick3dviewport_p.h.
float const QJSValue& models QQuick3DViewport::const |
Definition at line 104 of file qquick3dviewport_p.h.
float y QQuick3DViewport::const |
Definition at line 105 of file qquick3dviewport_p.h.
Definition at line 106 of file qquick3dviewport_p.h.
Definition at line 112 of file qquick3dviewport_p.h.
Definition at line 112 of file qquick3dviewport_p.h.
float QQuick3DViewport::y |
Definition at line 103 of file qquick3dviewport_p.h.
|
readwrite |
Definition at line 52 of file qquick3dviewport_p.h.
|
read |
Definition at line 51 of file qquick3dviewport_p.h.
|
read |
\qmlproperty size QtQuick3D::View3D::effectiveTextureSize
This property exposes the size, in pixels, of the underlying color (and depth/stencil) buffers. It is provided for use on the GUI (main) thread, in QML bindings or JavaScript.
This is a read-only property.
Offscreen
.Definition at line 64 of file qquick3dviewport_p.h.
|
readwrite |
Definition at line 53 of file qquick3dviewport_p.h.
|
readwrite |
\qmlproperty int QtQuick3D::View3D::explicitTextureHeight
The height, in pixels, of the item's associated texture. Relevant when a fixed texture size is desired that does not depend on the item's size. This size has no effect on the geometry of the item (its size and placement within the scene), which means the texture's content will appear scaled up or down (and possibly stretched) onto the item's area.
By default the value is 0
. A value of 0 means that texture's size follows the item's size. ({texture size in pixels} =
{item's logical size} *
{device pixel ratio}).
Offscreen
. Its value is ignored otherwise.Definition at line 63 of file qquick3dviewport_p.h.
|
readwrite |
\qmlproperty int QtQuick3D::View3D::explicitTextureWidth
The width, in pixels, of the item's associated texture. Relevant when a fixed texture size is desired that does not depend on the item's size. This size has no effect on the geometry of the item (its size and placement within the scene), which means the texture's content will appear scaled up or down (and possibly stretched) onto the item's area.
By default the value is 0
. A value of 0 means that texture's size follows the item's size. ({texture size in pixels} =
{item's logical size} *
{device pixel ratio}).
Offscreen
. Its value is ignored otherwise.Definition at line 62 of file qquick3dviewport_p.h.
|
read |
\qmlproperty List<QtQuick3D::Object3D> View3D::extensions
This property contains a list of user extensions that should be used with this \l View3D.
Definition at line 61 of file qquick3dviewport_p.h.
|
readwrite |
Definition at line 55 of file qquick3dviewport_p.h.
|
readwrite |
Definition at line 56 of file qquick3dviewport_p.h.
|
read |
Definition at line 60 of file qquick3dviewport_p.h.
|
read |
Definition at line 54 of file qquick3dviewport_p.h.