class QMorphingAnimation#

一个实现了混合形状变形动画的类。更多信息...

Inheritance diagram of PySide6.Qt3DAnimation.Qt3DAnimation.QMorphingAnimation

摘要#

属性#

方法#

槽(Slots)#

信号(Signals)#

备注

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

详细说明#

QMorphingAnimation 类实现了对目标 QGeometryRenderer 的混合形状变形动画。 QMorphingAnimationmorph targets 设置正确的 QAttributes 到目标几何体,并计算当前位置的插值器。实际属性之间的混合必须在材质中实现。Qt3DAnimation::QMorphPhongMaterial 实现了支持 phong 光照模型的变形材质。混合发生在2个属性之间 - 'base' 和 'target'。基本和目标属性的名字来源于变形目标的名字,其中基本属性保持原有的名字,而目标属性名字将在名字后面添加 'Target'。插值器可以作为一个 QParameter 设置到使用的材质中。动画中的所有变形目标都应该包含与基本几何体中相同的属性。

class 方法#

此枚举指定了变形方法。

常量

描述

Qt3DAnimation.QMorphingAnimation.Normalized

混合应使用标准化公式;V’ = Vbase * (1.0 - sum(Wi)) + sum[Vi * Wi]

Qt3DAnimation.QMorphingAnimation.Relative

混合应使用相对公式;V’ = Vbase + sum[Vi * Wi]

备注

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

property easingᅟ: QEasingCurve#

包含两个变形目标之间插值器的缓动曲线。

访问函数
property interpolatorᅟ: float#

包含基本属性和目标属性之间的插值器。

访问函数
property methodᅟ: Qt3DAnimation.QMorphingAnimation.Method#

包含变形方法。默认是相对的。

访问函数
property target: QGeometryRenderer#

包含应用变形动画的目标 QGeometryRenderer。

访问函数
property targetName: str#

包含目标几何体的名称。这是一个方便的属性,使将目标几何体与变形动画匹配变得更加容易。名称通常与目标 QGeometryRenderer 的父实体的名称相同,但不一定是。

访问函数
property targetPositions: float 的列表#

包含变形目标的位置值。列表中的每个位置指定了具有相同索引的对应变形目标的位置。数值必须按照升序排列。数值可以是正数或负数,且没有预定义的单位。

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

parentQObject

使用 parent 构造一个新的 QMorphingAnimation 对象。

addMorphTarget(target)#
参数:

targetQMorphTarget

在动画末尾添加新的变形 target

easing()#
返回类型:

QEasingCurve

另见

setEasing()

属性 easing 的获取器。

easingChanged(easing)#
参数:

easingQEasingCurve

属性 easing 的通知信号。

getWeights(positionIndex)#
参数:

positionIndex – int

返回类型:

浮点数列表

positionIndex 返回 morph 权重。

interpolator()#
返回类型:

float

属性 interpolator 的获取器。

interpolatorChanged(interpolator)#
参数:

interpolator – float

属性 interpolator 的通知信号。

method()#
返回类型:

方法

另见

setMethod()

属性 method 的获取器。

methodChanged(method)#
参数:

methodMethod

属性 method 的通知信号。

morphTargetList()#
返回类型:

.list of Qt3DAnimation.QMorphTarget

返回 morph 目标列表。

removeMorphTarget(target)#
参数:

targetQMorphTarget

从动画中移除 morph target

setEasing(easing)#
参数:

easingQEasingCurve

另见

easing()

属性 easing 的设置器。

setMethod(method)#
参数:

methodMethod

另见

method()

属性 method 的设置器。

setMorphTargets(targets)#
参数:

targets – .list of Qt3DAnimation.QMorphTarget

将变形目标设置到动画中。旧的 Target 将被清除。

setTarget(target)#
参数:

targetQGeometryRenderer

另见

target()

属性 target 的设置器。

setTargetName(name)#
参数:

name – str

另见

targetName()

属性 targetName 的设置器。

setTargetPositions(targetPositions)#
参数:

targetPositions – .list of float

另见

targetPositions()

属性 targetPositions 的设置器。

setWeights(positionIndex, weights)#
参数:
  • positionIndex – int

  • weights – .list of float

positionIndex 位置设置变形的 weights

target()#
返回类型:

QGeometryRenderer

另见

setTarget()

属性 target 的获取器。

targetChanged(target)#
参数:

targetQGeometryRenderer

属性 target 的通知信号。

targetName()#
返回类型:

str

另见

setTargetName()

属性 targetName 的获取器。

targetNameChanged(name)#
参数:

name – str

属性 targetName 的通知信号。

targetPositions()#
返回类型:

浮点数列表

另见

setTargetPositions()

属性 targetPositions 的获取器。

targetPositionsChanged(targetPositions)#
参数:

targetPositions – .list of float

属性 targetPositions 的通知信号。