📜  p5.js ortho()函数(1)

📅  最后修改于: 2023-12-03 15:18:11.639000             🧑  作者: Mango

p5.js ortho()函数

简介

ortho()函数是p5.js中一个用于设置正交投影矩阵的函数。本函数常常用于确定物体在3D场景中的位置和大小。函数原型如下:

ortho(left, right, bottom, top, near, far)

其中,参数含义如下:

  • left:正交视图空间左侧边界的x坐标
  • right:正交视图空间右侧边界的x坐标
  • bottom:正交视图空间底部边界的y坐标
  • top:正交视图空间顶部边界的y坐标
  • near:正交视图空间近平面距离摄像机的距离(通常设置为正值)
  • far:正交视图空间远平面距离摄像机的距离(通常设置为负值)
用法

ortho()函数通常在setup()函数中被调用,以设置在draw()函数中绘制的3D对象的角度和大小。

以下是一个使用ortho()函数的例子:

function setup() {
  createCanvas(400, 400, WEBGL);
}

function draw() {
  background(220);
  rotateX(PI/4);
  rotateY(PI/4);
  box(100);
}

function mousePressed() {
  ortho();
}

在此例中,setup()函数中创建了一个400*400画布,并且使用WEBGL模式。draw()函数中首先使用background()函数绘制背景色,然后rotateX()rotateY()函数设置了3D物体的角度,最后使用box()函数绘制了一个100*100*100的立方体。

当鼠标按下时,调用ortho()函数切换到正交投影模式,可以看到3D物体变为所在窗口大小的一个矩形。

注意事项

ortho()函数的调用会影响整个场景,不只是当前绘制的图形。因此,在使用完该函数后应考虑使用perspective()函数切换回透视投影模式。

此外,正交矩阵中near和far参数应满足以下条件:

near < 0 < -far

如果near和far参数的值不符合此条件,则3D物体无法正确渲染。

结论

ortho()函数是p5.js中一个用于设置正交投影矩阵的函数。该函数通常在setup()函数中被调用,以设置在draw()函数中绘制的3D对象的角度和大小。在使用该函数时,需要注意正交矩阵中near和far参数的值应满足规定的条件。