【发布时间】:2017-09-20 15:53:44
【问题描述】:
我希望能够从中心旋转一个四边形。为此,我遵循以下步骤:
- 转换为 (0, 0)
- 旋转
- 回到目的地
我被困在第三点。当我旋转矩阵时,我想将它相对于屏幕向右移动一点,但它会相对于旋转向右移动一点。
这是我的代码:
var moveBackX = ((-usedSprite.originX)/usedViewWidth);
var moveBackY = (((usedSprite.originY)))/usedViewHeight;
//The translation is already at (0, 0, 0)
mat4.rotateZ(mvMatrix, mvMatrix, rotation);
mat4.translate(mvMatrix, mvMatrix, [(moveBackX)/scaleX, moveBackY/scaleY, 0.0]);
mat4.translate(mvMatrix, mvMatrix, [((xPos)/scaleX), (-(yPos)/scaleY), 0.0]);
我该如何解决这个问题?
【问题讨论】:
标签: javascript matrix webgl image-rotation