- class QAbstractRayCaster#
An abstract base class for ray casting in 3d scenes. More…
Inherited by:
QScreenRayCaster
,QRayCaster
Synopsis#
Properties#
Methods#
def
__init__()
def
addLayer()
def
filterMode()
def
hits()
def
layers()
def
removeLayer()
def
runMode()
Slots#
def
setFilterMode()
def
setRunMode()
Signals#
def
hitsChanged()
def
runModeChanged()
Note
This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE
Detailed Description#
QAbstractRayCaster
is an abstract base class for casting rays into a 3d scene.QAbstractRayCaster
can not be directly instantiated, but rather through its subclasses.QAbstractRayCaster
specifies common properties for all ray casters, such as run mode and layer handling, while leaving the actual ray casting details to the subclasses.Ray castings differs from picking (using
QObjectPicker
) in that it does not require mouse events to trigger.By default, the instances of
QAbstractRayCaster
are disabled. When enabled, the specified ray will be tested for intersecting objects at every frame. Thehits
property will be updated with the results of the ray casting, even if no objects are found.The
QPickingSettings
can be used to control the ray casting, such as which primitives are tested and how the results are returned.Furthermore,
QLayer
components can be used to control how entities, or entity sub-graphs, react to ray casting.Note
Components derived from
QAbstractRayCaster
should not be shared amount multiple entities.See also
QRayCaster
QScreenRayCaster
QObjectPicker
QPickingSettings
QNoPicking
- class RunMode#
This enumeration specifies how often ray casting is performed
Constant
Description
Qt3DRender.QAbstractRayCaster.Continuous
Ray casting is performed at every frame as long as the component is enabled.
Qt3DRender.QAbstractRayCaster.SingleShot
Ray casting is done once then the component disables itself. This is the default
- class FilterMode#
Specifies the rules for selecting entities to test for raycasting.
Constant
Description
Qt3DRender.QAbstractRayCaster.AcceptAnyMatchingLayers
Accept entities that reference one or more
QLayer
objects added to thisQAbstractRayCaster
. This is the defaultQt3DRender.QAbstractRayCaster.AcceptAllMatchingLayers
Accept entities that reference all the
QLayer
objects added to thisQAbstractRayCaster
Qt3DRender.QAbstractRayCaster.DiscardAnyMatchingLayers
Discard entities that reference one or more
QLayer
objects added to thisQAbstractRayCaster
Qt3DRender.QAbstractRayCaster.DiscardAllMatchingLayers
Discard entities that reference all
QLayer
objects added to thisQAbstractRayCaster
Note
Properties can be used directly when
from __feature__ import true_property
is used or via accessor functions otherwise.- property filterModeᅟ: Qt3DRender.QAbstractRayCaster.FilterMode#
Holds the filter mode specifying the entities to select for ray casting tests.
The default value is AcceptMatchingLayers.
- Access functions:
- property runModeᅟ: Qt3DRender.QAbstractRayCaster.RunMode#
Holds the run mode controlling how often ray casting tests are performed.
If set to
SingleShot
(the default), when the component is enabled, a single ray casting test will be performed and the component will automatically disable itself.If set to Continuous, ray casting tests will be performed at every frame as long as the component is enabled.
- Access functions:
- __init__([parent=None])#
- Parameters:
parent –
QNode
- addLayer(layer)#
- Parameters:
layer –
QLayer
Add
layer
to the current list of layers- filterMode()#
- Return type:
FilterMode
See also
setFilterMode()
Getter of property
filterModeᅟ
.- filterModeChanged(filterMode)#
- Parameters:
filterMode –
FilterMode
Notification signal of property
filterModeᅟ
.- hits()#
- Return type:
.list of Qt3DRender.QRayCasterHit
- hitsChanged(hits)#
- Parameters:
hits – .list of Qt3DRender.QRayCasterHit
- layers()#
- Return type:
.list of Qt3DRender.QLayer
Returns the current list of layers
- removeLayer(layer)#
- Parameters:
layer –
QLayer
Remove
layer
from the current list of layers- runMode()#
- Return type:
RunMode
See also
setRunMode()
Getter of property
runModeᅟ
.- runModeChanged(runMode)#
- Parameters:
runMode –
RunMode
Notification signal of property
runModeᅟ
.- setFilterMode(filterMode)#
- Parameters:
filterMode –
FilterMode
See also
filterMode()
Setter of property
filterModeᅟ
.- setRunMode(runMode)#
- Parameters:
runMode –
RunMode
See also
runMode()
Setter of property
runModeᅟ
.