PySide6.QtGui.QVector3D¶
- class QVector3D¶
-
在版本4.6中添加。
概要¶
方法¶
def
__init__()def
__reduce__()def
__repr__()def
distanceToLine()def
isNull()def
length()def
lengthSquared()def
normalize()def
normalized()def
__ne__()def
__mul__()def
__imul__()def
__add__()def
__iadd__()def
__sub__()def
__isub__()def
__div__()def
operator/=()def
__eq__()def
operator[]()def
project()def
setX()def
setY()def
setZ()def
toPoint()def
toPointF()def
toTuple()def
toVector2D()def
toVector4D()def
unproject()def
x()def
y()def
z()
静态函数¶
def
crossProduct()def
dotProduct()def
normal()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
向量是3D表示和绘图的主要构建块之一。它们由三个有限的浮点坐标组成,传统上称为x、y和z。
QVector3D类也可以用来表示三维空间中的顶点。因此,我们不需要提供一个单独的顶点类。- __init__()¶
构造一个零向量,即坐标为 (0, 0, 0)。
- __init__(point)
- Parameters:
点 –
QPoint
从2D
point构造一个具有x和y坐标的向量,z坐标为0。- __init__(point)
- Parameters:
点 –
QPointF
从2D
point构造一个具有x和y坐标的向量,z坐标为0。- __init__(vector)
- Parameters:
向量 –
QVector2D
从指定的2D
vector构造一个3D向量。z坐标设置为零。另请参阅
- __init__(vector)
- Parameters:
向量 –
QVector4D
从指定的4D
vector构造一个3D向量。w坐标被丢弃。另请参阅
- __init__(vector, zpos)
- Parameters:
vector –
QVector2Dzpos – 浮点数
从指定的2D
vector构造一个3D向量。z坐标设置为zpos,该值必须是有限的。另请参阅
- __init__(xpos, ypos, zpos)
- Parameters:
xpos – 浮点数
ypos – 浮点数
zpos – 浮点数
构造一个坐标为 (
xpos,ypos,zpos) 的向量。所有参数必须是有限的。- __reduce__()¶
- Return type:
字符串
- __repr__()¶
- Return type:
字符串
返回向量
v1和v2的叉积,该叉积垂直于由v1和v2张成的平面。如果两个向量平行,则结果为零。另请参阅
返回此顶点与由
point和单位向量direction定义的直线之间的距离。如果
direction是一个零向量,那么它不定义一条线。在这种情况下,返回从point到这个顶点的距离。另请参阅
返回从该顶点到由顶点
plane和normal单位向量定义的平面的距离。假设normal参数已被归一化为单位向量。如果顶点在平面下方,返回值将为负数;如果顶点在平面上,返回值将为零。
另请参阅
- distanceToPlane(plane1, plane2, plane3)
返回从该顶点到由顶点
plane1、plane2和plane3定义的平面的距离。如果顶点在平面下方,返回值将为负数;如果顶点在平面上,返回值将为零。
定义平面的两个向量是
plane2-plane1和plane3-plane1。另请参阅
返回从该顶点到由顶点
point定义的点的距离。返回
v1和v2的点积。- isNull()¶
- Return type:
布尔
如果x、y和z坐标设置为0.0,则返回
true,否则返回false。- length()¶
- Return type:
浮点数
返回从原点到向量的长度。
- lengthSquared()¶
- Return type:
浮点数
返回从原点到向量的长度的平方。这相当于向量与自身的点积。
另请参阅
返回由向量
v1和v2张成的平面的单位法向量,这两个向量必须不相互平行。使用
crossProduct()来计算v1和v2的叉积,如果你不需要结果被归一化为单位向量。- static normal(v1, v2, v3)
返回由向量
v2-v1和v3-v1张成的平面的单位法向量,这两个向量不能相互平行。使用
crossProduct()来计算v2-v1和v3-v1的叉积,如果你不需要结果被归一化为单位向量。- normalize()¶
将当前向量就地归一化。如果该向量是零向量或向量的长度非常接近1,则不会发生任何变化。
另请参阅
返回此向量的归一化单位向量形式。
如果这个向量为空,则返回一个空向量。如果向量的长度非常接近1,则向量将按原样返回。否则,将返回长度为1的向量的归一化形式。
另请参阅
如果
v1不等于v2,则返回true;否则返回false。此运算符使用精确的浮点数比较。返回通过将
v1的每个分量与v2的相应分量相乘形成的QVector3D对象。- __mul__(matrix)
- Parameters:
矩阵 –
QMatrix4x4- Return type:
注意
此函数已弃用。
- __mul__(matrix)
- Parameters:
矩阵 –
QMatrix4x4- Return type:
注意
此函数已弃用。
- __mul__(quaternion)
- Parameters:
四元数 –
QQuaternion- Return type:
- __mul__(factor)
- Parameters:
factor – 浮点数
- Return type:
返回给定
vector的副本,乘以给定的有限factor。另请参阅
operator*=()- __mul__(factor)
- Parameters:
factor – 浮点数
- Return type:
返回给定
vector的副本,乘以给定的有限factor。另请参阅
operator*=()这是一个重载函数。
将此向量的每个分量与
vector中的相应分量相乘,并返回对此向量的引用。注意:这与
crossProduct()这个向量和vector的叉积不同。(它的分量加起来等于这个向量和vector的点积。)另请参阅
crossProduct()operator/=()operator*()- __imul__(factor)
- Parameters:
factor – 浮点数
- Return type:
将此向量的坐标乘以给定的有限
factor并返回对此向量的引用。另请参阅
operator/=()operator*()返回一个
QVector3D对象,该对象是给定向量v1和v2的和;每个分量分别相加。另请参阅
operator+=()将给定的
vector添加到此向量,并返回对此向量的引用。另请参阅
operator-=()这是一个重载函数。
返回一个
QVector3D对象,该对象是通过改变给定vector的每个分量的符号形成的。等同于
QVector3D(0,0,0) - vector。返回一个
QVector3D对象,该对象是通过从v1中减去v2形成的;每个分量分别相减。另请参阅
operator-=()从这个向量中减去给定的
vector并返回对此向量的引用。另请参阅
operator+=()返回通过将给定
vector的每个分量除以给定divisor的相应分量形成的QVector3D对象。divisor不能包含任何为零或 NaN 的组件。另请参阅
operator/=()- __div__(divisor)
- Parameters:
除数 – float
- Return type:
返回通过将给定
vector的每个分量除以给定divisor形成的QVector3D对象。divisor不能为零或 NaN。另请参阅
operator/=()将此向量的每个分量除以
vector中的相应分量,并返回对此向量的引用。vector必须没有任何一个分量为零或NaN。另请参阅
operator*=()operator/()- operator/=(divisor)
- Parameters:
除数 – float
- Return type:
将此向量的坐标除以给定的
divisor,并返回对此向量的引用。divisor不能为零或NaN。另请参阅
operator*=()operator/()如果
v1等于v2,则返回true;否则返回false。此运算符使用精确的浮点数比较。- operator(i)¶
- Parameters:
i – 整数
- Return type:
浮点数
返回向量在索引位置
i处的分量。i必须是向量中的有效索引位置(即 0 <=i< 3)。- project(modelView, projection, viewport)¶
- Parameters:
modelView –
QMatrix4x4projection –
QMatrix4x4视口 –
QRect
- Return type:
返回最初在对象/模型坐标中的此向量的窗口坐标,使用模型视图矩阵
modelView、投影矩阵projection和视口尺寸viewport。当从裁剪空间转换到归一化空间时,会对向量的分量进行除以w分量的操作。为了防止当w等于0时除以0,将其设置为1。
- setX(x)¶
- Parameters:
x – 浮点数
将此点的x坐标设置为给定的有限
x坐标。- setY(y)¶
- Parameters:
y – 浮点数
将此点的 y 坐标设置为给定的有限
y坐标。- setZ(z)¶
- Parameters:
z – 浮点数
将此点的z坐标设置为给定的有限
z坐标。返回此3D向量的QPoint形式。z坐标被丢弃。x和y坐标四舍五入到最接近的整数。
另请参阅
返回此3D向量的QPointF形式。z坐标被丢弃。
另请参阅
- toTuple()¶
- Return type:
对象
返回此3D向量的2D向量形式,丢弃z坐标。
另请参阅
返回此3D向量的4D形式,w坐标设置为零。
另请参阅
- unproject(modelView, projection, viewport)¶
- Parameters:
modelView –
QMatrix4x4projection –
QMatrix4x4视口 –
QRect
- Return type:
返回最初在窗口坐标中使用模型视图矩阵
modelView、投影矩阵projection和视口尺寸viewport的此向量的对象/模型坐标。当从裁剪空间转换到归一化空间时,会对向量的w分量进行除法运算。为了防止当w等于0时除以0的情况发生,w被设置为1。
- x()¶
- Return type:
浮点数
返回此点的x坐标。
- y()¶
- Return type:
浮点数
返回此点的 y 坐标。
- z()¶
- Return type:
浮点数
返回此点的z坐标。