用于在 3D 场景中,投射光线的抽象基类。 更多 …
继承者: Qt3DRender.QRayCaster , Qt3DRender.QScreenRayCaster
New in version 5.11.
def
addLayer
(layer)
def
filterMode
()
def
hits
()
def
layers
()
def
removeLayer
(layer)
def
runMode
()
def
setFilterMode
(filterMode)
def
setRunMode
(runMode)
def
filterModeChanged
(filterMode)
def
hitsChanged
(hits)
def
runModeChanged
(runMode)
QAbstractRayCasteris an abstract base class for casting rays into a 3d scene.QAbstractRayCastercan not be directly instantiated, but rather through its subclasses.QAbstractRayCasterspecifies 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
QAbstractRayCasterare disabled. When enabled, the specified ray will be tested for intersecting objects at every frame. Thehitsproperty will be updated with the results of the ray casting, even if no objects are found.
QPickingSettingscan be used to control the ray casting, such as which primitives are tested and how the results are returned.Furthermore,
QLayercomponents can be used to control how entities, or entity sub-graphs, react to ray casting.注意
Components derived from
QAbstractRayCastershould not be shared amount multiple entities.另请参阅
QRayCasterQScreenRayCasterQObjectPickerQPickingSettingsQNoPicking
PySide2.Qt3DRender.Qt3DRender.
QAbstractRayCaster
(
[
parent=None
]
)
¶
parent
–
QNode
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
RunMode
¶
This enumeration specifies how often ray casting is performed
|
常量 |
描述 |
|---|---|
|
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 |
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
FilterMode
¶
Specifies the rules for selecting entities to test for raycasting.
|
常量 |
描述 |
|---|---|
|
Qt3DRender.QAbstractRayCaster.AcceptAnyMatchingLayers |
Accept entities that reference one or more
|
|
Qt3DRender.QAbstractRayCaster.AcceptAllMatchingLayers |
Accept entities that reference all the
|
|
Qt3DRender.QAbstractRayCaster.DiscardAnyMatchingLayers |
Discard entities that reference one or more
|
|
Qt3DRender.QAbstractRayCaster.DiscardAllMatchingLayers |
Discard entities that reference all
|
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
addLayer
(
layer
)
¶
layer
–
QLayer
Add
layer
to the current list of layers
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
filterMode
(
)
¶
另请参阅
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
filterModeChanged
(
filterMode
)
¶
filterMode
–
FilterMode
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
hits
(
)
¶
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
hitsChanged
(
hits
)
¶
hits –
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
layers
(
)
¶
Returns the current list of layers
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
removeLayer
(
layer
)
¶
layer
–
QLayer
移除
layer
from the current list of layers
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
runMode
(
)
¶
另请参阅
PySide2.Qt3DRender.Qt3DRender.QAbstractRayCaster.
setFilterMode
(
filterMode
)
¶
filterMode
–
FilterMode
另请参阅