绘制一个球体。
球体是一个具有三角形面的 3D 形状,它们连接在一起形成一个圆形的表面。具有较少面的球体看起来像晶体。具有许多面的球体具有光滑的表面,看起来像球。
第一个参数 radius
是可选的。如果传递一个 Number
,如 sphere(20)
, 它设置球体的半径。默认情况下,radius
是 50。
第二个参数 detailX
也是可选的。如果传递一个 Number
,如 sphere(20, 5)
, 它设置沿 x 轴使用的三角形细分数。所有 3D 形状都是通过连接三角形来形成其表面的。默认情况下,detailX
是 24。
第三个参数 detailY
也是可选的。如果传递一个 Number
,如 sphere(20, 5, 2)
, 它设置沿 y 轴使用的三角形细分数。所有 3D 形状都是通过连接三角形来形成其表面的。默认情况下,detailY
是 16。
注意:sphere()
只能在 WebGL 模式下使用。
示例
语法
sphere([radius], [detailX], [detailY])
参数
radius of the sphere. Defaults to 50.
number of triangle subdivisions along the x-axis. Defaults to 24.
number of triangle subdivisions along the y-axis. Defaults to 16.
相关参考
beginGeometry
开始向新的 p5.Geometry 对象添加形状。 beginGeometry() 和 endGeometry() 函数有助于从简单形状(例如,sphere())创建复杂的 3D 形状。 beginGeometry() 开始向自定义的 p5.Geometry 对象添加形状,而 endGeometry() 则停止添加。 beginGeometry() 和 endGeometry() 有助于提高绘图的性能,例如,如果一个复杂的 3D 形状在绘图运行时不发生变化,则可以使用 beginGeometry() 和 endGeometry() 来创建。 创建一次 p5.Geometry 对象,然后绘制它,会比重复绘制各个部分更快。 了解另一种构建 3D 形状的方法,请参阅 buildGeometry()。 注意:beginGeometry() 只能在 WebGL 模式下使用。 .
box
绘制一个长方体(矩形棱柱)。 长方体是一个具有六个面的 3D 形状。每个面与四个相邻的面都形成 90˚ 的角度。 第一个参数 width 是可选的。如果传递一个 Number,如 box(20), 它设置长方体的宽度和高度。默认情况下,width 是 50。 第二个参数 height 也是可选的。如果传递一个 Number,如 box(20, 30), 它设置长方体的高度。默认情况下,height 设置为长方体的 width。 第三个参数 depth 也是可选的。如果传递一个 Number,如 box(20, 30, 40), 它设置长方体的深度。默认情况下,depth 设置为长方体的 height。 第四个参数 detailX 也是可选的。如果传递一个 Number,如 box(20, 30, 40, 5), 它设置沿 x 轴使用的三角形细分数。所有 3D 形状都是通过连接三角形来形成其表面的。默认情况下,detailX 是 1。 第五个参数 detailY 也是可选的。如果传递一个 Number,如box(20, 30, 40, 5, 7), 它设置沿 y 轴使用的三角形细分数。所有 3D 形状都是通过连接三角形来形成其表面的。默认情况下,detailY 是 1。 注意:box() 只能在 WebGL 模式下使用。 .
buildGeometry
从简单的 3D 形状创建一个自定义的 p5.Geometry 对象 buildGeometry() 有助于从简单形状(例如,sphere())创建复杂的 3D 形状。它可以帮助提高绘图性能,例如, 如果一个复杂的 3D 形状在绘图运行时不发生变化,则可以使用 buildGeometry() 来创建。 创建一个 p5.Geometry 对象,然后绘制它,会比重复绘制各个部分更快。 参数 callback 是一个包含新 p5.Geometry 对象的绘制指令的函数。它将被调用一次以创建新的 3D 形状。 了解另一种构建 3D 形状的方法,请参阅 beginGeometry() 和 endGeometry()。 注意:buildGeometry() 只能在 WebGL 模式下使用。 .
cone
绘制一个圆锥体。 圆锥体是具有多个三角形面的 3D 形状,这些侧面将平底连接到单一顶点。面数较少的圆锥体看起来像金字塔。面数较多的圆锥体具有光滑的表面。 第一个参数 radius 是可选的。如果传递一个 Number,如 cone(20), 它设置圆锥体底部的半径。默认情况下,radius 是 50。 第二个参数 height 也是可选的。如果传递一个 Number,如 cone(20, 30), 它设置圆锥体的高度。默认情况下,height 设置为圆锥体的 radius。 第三个参数 detailX 也是可选的。如果传递一个 Number,如 cone(20, 30, 5), 它设置用于形成圆锥体底部的边的数量。使用更多的边使底部看起来更像一个圆。默认情况下,detailX 是 24。 第四个参数 detailY 也是可选的。如果传递一个 Number,如 cone(20, 30, 5, 7), 它设置沿 y 轴使用的三角形细分数,连接底部和顶点。所有 3D 形状都是通过连接三角形来形成其表面的。默认情况下,detailY 是 1。 第五个参数 cap 也是可选的。如果传递一个 false,如 cone(20, 30, 5, 7, false), 则不会绘制圆锥体的底部。默认情况下,cap 是 true。 注意:cone() 只能在 WebGL 模式下使用。 .