class QPickingSettings#

QPickingSettings 类指定如何处理实体选择。 更多

Inheritance diagram of PySide6.Qt3DRender.Qt3DRender.QPickingSettings

概述#

属性#

方法#

#

信号#

注意

本文档可能包含从 C++ 自动翻译到 Python 的代码片段。我们随时欢迎对代码片段翻译的贡献。如果您发现翻译有问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 上创建工单来告知我们。

详细描述#

选择设置决定了实体拾取的处理方式。有关实体拾取的更多详细信息,请参阅 QObjectPickerQRayCaster 组件的文档。

在使用 QObjectPicker 组件时,拾取由鼠标事件触发。

在使用 QRayCasterQScreenRayCaster 组件时,拾取可以由应用程序显式触发。

在这两种情况下,都会在场景中沿射线投射以找到与射线相交的几何体。

参见

QObjectPicker QPickEvent QPickTriangleEvent QRayCaster QScreenRayCaster

class PickMethod#

指定拾取方法。

常数

描述

Qt3DRender.QPickingSettings.BoundingVolumePicking

如果拾取射线与实体的边界体相交,则认为该实体被拾取(默认)。

Qt3DRender.QPickingSettings.TrianglePicking

如果拾取射线与实体网格组件的任何三角形相交,则认为实体被拾取。

Qt3DRender.QPickingSettings.LinePicking

如果拾取射线与实体网格组件的任何边相交,则认为实体被拾取。

Qt3DRender.QPickingSettings.PointPicking

如果拾取射线与实体网格组件的任何点相交,则认为实体被拾取。

Qt3DRender.QPickingSettings.PrimitivePicking

如果拾取射线与实体网格组件的任何点、边或三角形相交,则认为实体被拾取。

class PickResultMode#

指定拾取结果中包含的内容。

常数

描述

Qt3DRender.QPickingSettings.NearestPick

仅拾取最近与拾取射线相交的实体(默认)。

Qt3DRender.QPickingSettings.AllPicks

拾取与拾取射线相交的所有实体。

Qt3DRender.QPickingSettings.NearestPriorityPick

选择具有最高值的对象拾取器的实体。如果有几个对象拾取器拥有相同的优先级,则选择射线最近的那个。

参见

QPickEvent

class FaceOrientationPickingMode#

指定面方向如何影响三角形拾取。

常数

描述

Qt3DRender.QPickingSettings.FrontFace

仅拾取面向前的三角形(默认)。

Qt3DRender.QPickingSettings.BackFace

仅拾取背向的三角形。

Qt3DRender.QPickingSettings.FrontAndBackFace

同时拾取面向前和背向的三角形。

注意

当使用 from __feature__ import true_property 时,可以直接使用属性,否则通过访问函数使用。

属性 faceOrientationPickingModeᅟ: Qt3DRender.QPickingSettings.FaceOrientationPickingMode#

指定面方向如何影响三角形拾取。

访问函数
属性 pickMethodᅟ: Qt3DRender.QPickingSettings.PickMethod#

存储当前的拾取方法。

默认情况下,由于性能原因,光线投射将使用包围体拾取。然而,如果一个小对象在其后面的一个大对象的包围球内,可能会产生意外的结果。

三角形拾取会产生精确的结果,但计算成本更高。

访问函数
属性 pickResultModeᅟ: Qt3DRender.QPickingSettings.PickResultMode#

存储当前的拾取结果模式。

默认情况下,只有最近的实体将产生拾取结果。

当将拾取方法设置为 AllPicks 时,沿射线的所有实体都将触发事件。

当将拾取方法设置为 NearestPriorityPick 时,将触发最近最高优先级的拾取器的事件。这可以在需要始终选择给定的元素,即使其他元素比它更前方时使用。

如果将 QObjectPicker 分配给具有多个子实体的实体,每个相交于射线的子实体将触发一个事件。

访问函数
属性 worldSpaceToleranceᅟ: float#

存储用于评估线拾取和点拾取的阈值,单位是模型空间坐标。

访问函数
__init__([parent=None])#
参数:

parentQNode

faceOrientationPickingMode()#
返回类型:

FaceOrientationPickingMode

参见

setFaceOrientationPickingMode()

属性 faceOrientationPickingMode 的获取器。

faceOrientationPickingModeChanged(faceOrientationPickingMode)#
参数:

faceOrientationPickingModeFaceOrientationPickingMode

属性 faceOrientationPickingMode 的变化通知信号。

pickMethod()#
返回类型:

PickMethod

参见

setPickMethod()

属性 pickMethod 的获取器。

pickMethodChanged(pickMethod)#
参数:

pickMethodPickMethod

属性 pickMethod 的变化通知信号。

pickResultMode()#
返回类型:

PickResultMode

参见

setPickResultMode()

属性 pickResultMode 的获取器。

pickResultModeChanged(pickResult)#
参数:

pickResultPickResultMode

属性 pickResultMode 的变化通知信号。

setFaceOrientationPickingMode(faceOrientationPickingMode)#
参数:

faceOrientationPickingModeFaceOrientationPickingMode

参见

faceOrientationPickingMode()

属性 faceOrientationPickingMode 的设置器。

setPickMethod(pickMethod)#
参数:

pickMethodPickMethod

参见

pickMethod()

属性 pickMethod 的设置器。

setPickResultMode(pickResultMode)#
参数:

pickResultModePickResultMode

参见

pickResultMode()

属性 pickResultMode 的设置器。

setWorldSpaceTolerance(worldSpaceTolerance)#
参数:

worldSpaceTolerance – float

设置用于线拣选和点拣选的阈值,为 worldSpaceTolerance

参见

worldSpaceTolerance()

属性 worldSpaceTolerance 的设置器。

worldSpaceTolerance()#
返回类型:

float

返回线拣选和点拣选的世界空间精度阈值。

参见

setWorldSpaceTolerance()

属性 worldSpaceTolerance 的获取器。

worldSpaceToleranceChanged(worldSpaceTolerance)#
参数:

worldSpaceTolerance – float

worldSpaceTolerance 属性的通知信号。