![]() |
Qt 6.x
The Qt SDK
|
#include <qabstractphysicsnode_p.h>
Public Member Functions | |
QAbstractPhysicsNode () | |
\qmltype PhysicsNode \inherits Node \inqmlmodule QtQuick3D.Physics | |
~QAbstractPhysicsNode () override | |
QQmlListProperty< QAbstractCollisionShape > | collisionShapes () |
const QVector< QAbstractCollisionShape * > & | getCollisionShapesList () const |
void | updateFromPhysicsTransform (const physx::PxTransform &transform) |
void | registerContact (QAbstractPhysicsNode *body, const QVector< QVector3D > &positions, const QVector< QVector3D > &impulses, const QVector< QVector3D > &normals) |
bool | sendContactReports () const |
void | setSendContactReports (bool sendContactReports) |
bool | receiveContactReports () const |
void | setReceiveContactReports (bool receiveContactReports) |
Q_REVISION (6, 5) bool sendTriggerReports() const | |
Q_REVISION (6, 5) void setSendTriggerReports(bool sendTriggerReports) | |
Q_REVISION (6, 5) bool receiveTriggerReports() const | |
Q_REVISION (6, 5) void setReceiveTriggerReports(bool receiveTriggerReports) | |
bool | hasStaticShapes () const |
![]() | |
QQuick3DNode (QQuick3DNode *parent=nullptr) | |
\qmltype Node \inherits Object3D \inqmlmodule QtQuick3D | |
~QQuick3DNode () override | |
float | x () const |
\qmlproperty real QtQuick3D::Node::x | |
float | y () const |
\qmlproperty real QtQuick3D::Node::y | |
float | z () const |
\qmlproperty real QtQuick3D::Node::z | |
QQuaternion | rotation () const |
\qmlproperty quaternion QtQuick3D::Node::rotation | |
QVector3D | eulerRotation () const |
\qmlproperty vector3d QtQuick3D::Node::eulerRotation | |
QVector3D | position () const |
\qmlproperty vector3d QtQuick3D::Node::position | |
QVector3D | scale () const |
\qmlproperty vector3d QtQuick3D::Node::scale | |
QVector3D | pivot () const |
\qmlproperty vector3d QtQuick3D::Node::pivot | |
float | localOpacity () const |
\qmlproperty real QtQuick3D::Node::opacity | |
bool | visible () const |
\qmlproperty bool QtQuick3D::Node::visible | |
int | staticFlags () const |
\qmlproperty int QtQuick3D::Node::staticFlags | |
QQuick3DNode * | parentNode () const |
QVector3D | forward () const |
\qmlproperty vector3d QtQuick3D::Node::forward \readonly | |
QVector3D | up () const |
\qmlproperty vector3d QtQuick3D::Node::up \readonly | |
QVector3D | right () const |
\qmlproperty vector3d QtQuick3D::Node::right \readonly | |
QVector3D | scenePosition () const |
\qmlproperty vector3d QtQuick3D::Node::scenePosition \readonly | |
QQuaternion | sceneRotation () const |
\qmlproperty quaternion QtQuick3D::Node::sceneRotation \readonly | |
QVector3D | sceneScale () const |
\qmlproperty vector3d QtQuick3D::Node::sceneScale \readonly | |
QMatrix4x4 | sceneTransform () const |
\qmlproperty matrix4x4 QtQuick3D::Node::sceneTransform \readonly | |
Q_INVOKABLE void | rotate (qreal degrees, const QVector3D &axis, QQuick3DNode::TransformSpace space) |
\qmlmethod QtQuick3D::Node::rotate(real degrees, vector3d axis, enumeration space) | |
Q_INVOKABLE QVector3D | mapPositionToScene (const QVector3D &localPosition) const |
\qmlmethod vector3d QtQuick3D::Node::mapPositionToScene(vector3d localPosition) | |
Q_INVOKABLE QVector3D | mapPositionFromScene (const QVector3D &scenePosition) const |
\qmlmethod vector3d QtQuick3D::Node::mapPositionFromScene(vector3d scenePosition) | |
Q_INVOKABLE QVector3D | mapPositionToNode (const QQuick3DNode *node, const QVector3D &localPosition) const |
\qmlmethod vector3d QtQuick3D::Node::mapPositionToNode(QtQuick3D::Node node, vector3d localPosition) | |
Q_INVOKABLE QVector3D | mapPositionFromNode (const QQuick3DNode *node, const QVector3D &localPosition) const |
\qmlmethod vector3d QtQuick3D::Node::mapPositionFromNode(QtQuick3D::Node node, vector3d localPosition) | |
Q_INVOKABLE QVector3D | mapDirectionToScene (const QVector3D &localDirection) const |
\qmlmethod vector3d QtQuick3D::Node::mapDirectionToScene(vector3d localDirection) | |
Q_INVOKABLE QVector3D | mapDirectionFromScene (const QVector3D &sceneDirection) const |
\qmlmethod vector3d QtQuick3D::Node::mapDirectionFromScene(vector3d sceneDirection) | |
Q_INVOKABLE QVector3D | mapDirectionToNode (const QQuick3DNode *node, const QVector3D &localDirection) const |
\qmlmethod vector3d QtQuick3D::Node::mapDirectionToNode(QtQuick3D::Node node, vector3d localDirection) | |
Q_INVOKABLE QVector3D | mapDirectionFromNode (const QQuick3DNode *node, const QVector3D &localDirection) const |
\qmlmethod vector3d QtQuick3D::Node::mapDirectionFromNode(QtQuick3D::Node node, vector3d localDirection) | |
void | markAllDirty () override |
![]() | |
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 | event (QEvent *event) |
This virtual function receives events to an object and should return true if the event e was recognized and processed. | |
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. | |
void | moveToThread (QThread *thread) |
Changes the thread affinity for this object and its children. | |
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::milliseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
void | killTimer (int id) |
Kills the timer with timer identifier, id. | |
template<typename T > | |
T | findChild (const QString &aName=QString(), 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 (const QString &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 > | |
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 . | |
![]() | |
QQmlParserStatus () | |
virtual | ~QQmlParserStatus () |
virtual void | classBegin ()=0 |
Invoked after class creation, but before any properties have been set. | |
virtual void | componentComplete ()=0 |
Invoked after the root component that caused this instantiation has completed construction. | |
Properties | |
QQmlListProperty< QAbstractCollisionShape > | collisionShapes |
bool | sendContactReports |
bool | receiveContactReports |
bool | sendTriggerReports |
bool | receiveTriggerReports |
![]() | |
float | x |
float | y |
float | z |
QQuaternion | rotation |
QVector3D | eulerRotation |
QVector3D | position |
QVector3D | scale |
QVector3D | pivot |
float | opacity |
bool | visible |
QVector3D | forward |
QVector3D | up |
QVector3D | right |
QVector3D | scenePosition |
QQuaternion | sceneRotation |
QVector3D | sceneScale |
QMatrix4x4 | sceneTransform |
int | staticFlags |
![]() | |
QQuick3DObject * | parent |
\qmlproperty Object3D QtQuick3D::Object3D::parent This property holds the parent of the Object3D in a 3D scene. | |
![]() | |
QString | objectName |
the name of this object | |
Friends | |
class | QAbstractPhysXNode |
class | QPhysicsWorld |
class | SimulationEventCallback |
Additional Inherited Members | |
![]() | |
enum | TransformSpace { LocalSpace , ParentSpace , SceneSpace } |
enum | StaticFlags { None } |
![]() | |
void | setX (float x) |
void | setY (float y) |
void | setZ (float z) |
void | setRotation (const QQuaternion &rotation) |
void | setEulerRotation (const QVector3D &eulerRotation) |
void | setPosition (const QVector3D &position) |
void | setScale (const QVector3D &scale) |
void | setPivot (const QVector3D &pivot) |
void | setLocalOpacity (float opacity) |
void | setVisible (bool visible) |
void | setStaticFlags (int staticFlags) |
![]() | |
void | update () |
void | setParentItem (QQuick3DObject *parentItem) |
![]() | |
void | deleteLater () |
\threadsafe | |
![]() | |
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) |
![]() | |
void | connectNotify (const QMetaMethod &signal) override |
void | disconnectNotify (const QMetaMethod &signal) override |
void | componentComplete () override |
Invoked after the root component that caused this instantiation has completed construction. | |
QQuick3DNode (QQuick3DNodePrivate &dd, QQuick3DNode *parent=nullptr) | |
QSSGRenderGraphObject * | updateSpatialNode (QSSGRenderGraphObject *node) override |
virtual void | itemChange (ItemChange, const ItemChangeData &) override |
![]() | |
virtual QSSGRenderGraphObject * | updateSpatialNode (QSSGRenderGraphObject *node) |
virtual void | markAllDirty () |
virtual void | itemChange (ItemChange, const ItemChangeData &) |
QQuick3DObject (QQuick3DObjectPrivate &dd, QQuick3DObject *parent=nullptr) | |
void | classBegin () override |
Invoked after class creation, but before any properties have been set. | |
void | componentComplete () override |
Invoked after the root component that caused this instantiation has completed construction. | |
bool | isComponentComplete () const |
virtual void | preSync () |
![]() | |
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) | |
![]() | |
QScopedPointer< QObjectData > | d_ptr |
![]() | |
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 33 of file qabstractphysicsnode_p.h.
QT_BEGIN_NAMESPACE QAbstractPhysicsNode::QAbstractPhysicsNode | ( | ) |
\qmltype PhysicsNode \inherits Node \inqmlmodule QtQuick3D.Physics
Base type for all objects in the physics scene.
PhysicsNode is the base type for all the objects that take part in the physics simulation. These objects have a position in three-dimensional space and a geometrical shape.
\qmlproperty list<CollisionShape> PhysicsNode::collisionShapes
This property contains the list of collision shapes. These shapes will be combined and act as a single rigid body when interacting with other bodies.
\qmlproperty bool PhysicsNode::sendContactReports This property determines whether this body will send contact reports when colliding with other bodies.
\qmlproperty bool PhysicsNode::receiveContactReports This property determines whether this body will receive contact reports when colliding with other bodies. If activated, this means that the bodyContact signal will be emitted on a collision with a body that has sendContactReports set to true.
\qmlproperty bool PhysicsNode::sendTriggerReports This property determines whether this body will send reports when entering or leaving a trigger body.
\qmlproperty bool PhysicsNode::receiveTriggerReports This property determines whether this body will receive reports when entering or leaving a trigger body.
\qmlsignal PhysicsNode::bodyContact(PhysicsNode *body, list<vector3D> positions, list<vector3D> impulses, list<vector3D> normals)
This signal is emitted when there is a collision between a non-kinematic dynamic body and any other body. The \l {PhysicsNode::} {receiveContactReports} in this body and \l {PhysicsNode::} {sendContactReports} in the colliding body need to be set to true. The parameters body, positions, impulses and normals contain the other body, position, impulse force and normal for each contact point at the same index.
\qmlsignal PhysicsNode::enteredTriggerBody(TriggerBody *body)
This signal is emitted when this body enters the specified trigger body.
true
\qmlsignal PhysicsNode::exitedTriggerBody(TriggerBody *body)
This signal is emitted when this body exits the specified trigger body.
true
Definition at line 87 of file qabstractphysicsnode.cpp.
References QPhysicsWorld::registerNode().
|
override |
Definition at line 92 of file qabstractphysicsnode.cpp.
References QPhysicsWorld::deregisterNode().
QQmlListProperty< QAbstractCollisionShape > QAbstractPhysicsNode::collisionShapes | ( | ) |
const QVector< QAbstractCollisionShape * > & QAbstractPhysicsNode::getCollisionShapesList | ( | ) | const |
Definition at line 107 of file qabstractphysicsnode.cpp.
Referenced by QPhysXActorBody::buildShapes(), and QPhysXActorBody::markDirtyShapes().
|
inline |
Definition at line 73 of file qabstractphysicsnode_p.h.
Referenced by QPhysicsCommandSetMass::execute(), QPhysicsCommandSetMassAndInertiaTensor::execute(), QPhysicsCommandSetMassAndInertiaMatrix::execute(), QPhysicsCommandSetDensity::execute(), QPhysicsCommandSetIsKinematic::execute(), QPhysXDynamicBody::rebuildDirtyShapes(), and QDynamicRigidBody::setIsKinematic().
QAbstractPhysicsNode::Q_REVISION | ( | 6 | , |
5 | |||
) | const |
QAbstractPhysicsNode::Q_REVISION | ( | 6 | , |
5 | |||
) | const |
|
signal |
|
signal |
|
signal |
|
signal |
QAbstractPhysicsNode::Q_REVISION | ( | 6 | , |
5 | |||
) |
QAbstractPhysicsNode::Q_REVISION | ( | 6 | , |
5 | |||
) |
bool QAbstractPhysicsNode::receiveContactReports | ( | ) | const |
Definition at line 147 of file qabstractphysicsnode.cpp.
|
signal |
void QAbstractPhysicsNode::registerContact | ( | QAbstractPhysicsNode * | body, |
const QVector< QVector3D > & | positions, | ||
const QVector< QVector3D > & | impulses, | ||
const QVector< QVector3D > & | normals | ||
) |
Definition at line 189 of file qabstractphysicsnode.cpp.
References bodyContact(), emit, and positions.
Referenced by SimulationEventCallback::onContact().
bool QAbstractPhysicsNode::sendContactReports | ( | ) | const |
Definition at line 133 of file qabstractphysicsnode.cpp.
|
signal |
void QAbstractPhysicsNode::setReceiveContactReports | ( | bool | receiveContactReports | ) |
Definition at line 152 of file qabstractphysicsnode.cpp.
References emit, receiveContactReports, and receiveContactReportsChanged().
void QAbstractPhysicsNode::setSendContactReports | ( | bool | sendContactReports | ) |
Definition at line 138 of file qabstractphysicsnode.cpp.
References emit, sendContactReports, and sendContactReportsChanged().
void QAbstractPhysicsNode::updateFromPhysicsTransform | ( | const physx::PxTransform & | transform | ) |
Definition at line 112 of file qabstractphysicsnode.cpp.
References QQuaternion::inverted(), QQuick3DNode::mapPositionFromScene(), QQuick3DNode::parentNode(), pos, QQuick3DNode::rotation, QQuick3DNode::sceneRotation, QQuick3DNode::setPosition(), QQuick3DNode::setRotation(), QQuaternion::x(), QQuaternion::y(), and QQuaternion::z().
Referenced by QPhysXDynamicBody::sync().
|
friend |
Definition at line 105 of file qabstractphysicsnode_p.h.
|
friend |
Definition at line 106 of file qabstractphysicsnode_p.h.
|
friend |
Definition at line 107 of file qabstractphysicsnode_p.h.
|
read |
Definition at line 111 of file qabstractphysicsnode_p.h.
|
readwrite |
Definition at line 111 of file qabstractphysicsnode_p.h.
Referenced by SimulationEventCallback::onContact(), and setReceiveContactReports().
|
readwrite |
Definition at line 111 of file qabstractphysicsnode_p.h.
Referenced by SimulationEventCallback::onTrigger().
|
readwrite |
Definition at line 111 of file qabstractphysicsnode_p.h.
Referenced by SimulationEventCallback::onContact(), and setSendContactReports().
|
readwrite |
Definition at line 111 of file qabstractphysicsnode_p.h.
Referenced by SimulationEventCallback::onTrigger().