如何在Python处理中向矩阵转换堆栈添加自定义矩阵?
我正在使用Python处理。我有一个自定义矩阵,我想将其添加到当前矩阵变换堆栈中,而不必首先费心将矩阵分解为rotateX()rotateY()等如何在Python处理中向矩阵转换堆栈添加自定义矩阵?,python,matrix,processing,Python,Matrix,Processing,我正在使用Python处理。我有一个自定义矩阵,我想将其添加到当前矩阵变换堆栈中,而不必首先费心将矩阵分解为rotateX()rotateY()等 如何指定自己的矩阵并应用它?回答此类问题的最佳方法是查看 听起来您正在寻找applyMatrix()函数: 将当前矩阵乘以通过 参数。这是非常缓慢的,因为它将尝试计算 变换的逆方向,因此尽可能避免。这个 OpenGL中的等效函数是glMultMatrix() 等效的Processing.py参考是。回答此类问题的最佳方法是查看 听起来您正在寻找ap
如何指定自己的矩阵并应用它?回答此类问题的最佳方法是查看 听起来您正在寻找
applyMatrix()
函数:
将当前矩阵乘以通过
参数。这是非常缓慢的,因为它将尝试计算
变换的逆方向,因此尽可能避免。这个
OpenGL中的等效函数是glMultMatrix()
等效的Processing.py参考是。回答此类问题的最佳方法是查看 听起来您正在寻找
applyMatrix()
函数:
将当前矩阵乘以通过
参数。这是非常缓慢的,因为它将尝试计算
变换的逆方向,因此尽可能避免。这个
OpenGL中的等效函数是glMultMatrix()
等效的Processing.py引用为。有一种替代方法似乎未被引用。您可以全局定义自定义矩阵
PMatrix mat=new PMatrix2D(2,0,200,0,2,200)
(按2缩放,按200平移)。然后您可以使用draw()
中的setMatrix(mat)
应用它。与applyMatrix
相比,我不知道使用这种方法的利弊,因为我找不到任何关于它的信息。在processing-javadocs中的一长串方法中,有一个替代方法似乎没有被引用。您可以全局定义自定义矩阵PMatrix mat=new PMatrix2D(2,0,200,0,2,200)
(按2缩放,按200平移)。然后您可以使用draw()
中的setMatrix(mat)
应用它。与applyMatrix
相比,我不知道使用这种方法的利弊,因为我找不到任何关于它的信息。在处理javadoc的一长串方法中,它被简要地提到。
size(100, 100, P3D);
noFill();
translate(50, 50, 0);
rotateY(PI/6);
stroke(153);
box(35);
// Set rotation angles
float ct = cos(PI/9.0);
float st = sin(PI/9.0);
// Matrix for rotation around the Y axis
applyMatrix( ct, 0.0, st, 0.0,
0.0, 1.0, 0.0, 0.0,
-st, 0.0, ct, 0.0,
0.0, 0.0, 0.0, 1.0);
stroke(255);
box(50);