DirectionalBlur
Import Statement: import QtGraphicalEffects 1.0
Since: QtGraphicalEffects 1.0
Inherits: Item
Properties
angle : real
cached :bool
length :real
samples :int
source :variant
transparentBorder: bool
DetailedDescription
影响创建了源向着模糊的方向运动的印象.模糊被应用到像素两边,因此,设置方向为0和180度,产生一样的结果。
其他可用的运动模糊是ZoomBlur和RadialBlur。
源 | 影响 |
---|---|
| |
实现代码:
importQtQuick 2.0
importQtGraphicalEffects 1.0
Item {
width: 300
height: 300
Image {
id: bug
source: "images/bug.jpg"
sourceSize: Qt.size(parent.width,parent.height)
smooth: true
visible: false
}
DirectionalBlur {
anchors.fill: bug
source: bug
angle: 90
length: 32
samples: 24
}
}
Property Documentation
angle : real
模糊的方向,模糊应用到每个像素的两边,所以设置方向为0和180,产生相同的结果。
值在-180到180之间,默认为0。
角度的影响 | ||
---|---|---|
| | |
angle: 0.0 | angle: 45.0 | angle: 90.0 |
samples: 24 | samples: 24 | samples: 24 |
length: 32 | length: 32 | length: 32 |
cached :bool
输出是否缓冲,缓冲提高渲染效率,但消耗更多内存。每当源或影响属性变化,缓冲都会更新,如果源或影响属性是动态的,推荐不缓冲,默认为假。
length :real
每个像素的运行量。运动量在每个像素的两边均分。模糊的质量依赖于样本的属性。如果运动量巨大,要保持模糊的高质量,就需要更多的样本。值在0到inf之间。默认为0。
length的影响 | ||
---|---|---|
| | |
length: 0.0 | length: 32.0 | length: 48.0 |
samples: 24 | samples: 24 | samples: 24 |
angle: 0 | angle: 0 | angle: 0 |
samples :int
当模糊计算后,取多少样品用户渲染。越大的值有越好的质量,但渲染得更慢。这个属性不要使用动画,改变这个值会促使底层OpenGL着色器重新编译。
值在0到inf之间,实际值依赖于GPU。默认设置为0。
source :variant
将模糊的源。它不支持让影响影响自身,所以不能设置源为父。
transparentBorder: bool
模糊在源实例边缘附近的行为,在源边缘是否受外部像素的影响。
如果属性为真,源外边的像素被解释为透明,这类似于OpenGL的clamp-to-border扩展行为,模糊扩展到源实例的外部。
如果属性为假,源外边的像素被解释为和边缘一个颜色,这类似于OpenGL的clamp-to-edge扩展行为,模糊不会扩展到源实例的外部。
默认为假。