Processing 3入門(mén):Bezier貝塞爾曲線
bezier函數(shù)在Processing 3中,我們可以使用bezier函數(shù)來(lái)繪制一段貝塞爾曲線。它的格式為:bezier(起點(diǎn)坐標(biāo), 起點(diǎn)控制點(diǎn)坐標(biāo), 終點(diǎn)控制點(diǎn)坐標(biāo), 終點(diǎn)坐標(biāo))。在2D模式下,默認(rèn)
bezier函數(shù)
在Processing 3中,我們可以使用bezier函數(shù)來(lái)繪制一段貝塞爾曲線。它的格式為:bezier(起點(diǎn)坐標(biāo), 起點(diǎn)控制點(diǎn)坐標(biāo), 終點(diǎn)控制點(diǎn)坐標(biāo), 終點(diǎn)坐標(biāo))。在2D模式下,默認(rèn)每個(gè)坐標(biāo)由x和y兩個(gè)分量構(gòu)成。而在3D模式下,每個(gè)坐標(biāo)則由x、y、z三個(gè)分量構(gòu)成。下圖展示了一個(gè)3D模式下的貝塞爾曲線。
![3D模式下的貝塞爾曲線]()
bezierDetail函數(shù)
bezierDetail函數(shù)僅可以在3D模式下使用。這是因?yàn)?D渲染器會(huì)直接渲染為最佳狀態(tài),而3D渲染器則使用折線渲染。bezierDetail函數(shù)用于設(shè)置貝塞爾曲線的分段數(shù)。通過(guò)增加分段數(shù),我們可以獲得更加平滑的曲線效果。
bezierPoint函數(shù)
bezierPoint函數(shù)可以讓我們獲取貝塞爾曲線上某個(gè)點(diǎn)的坐標(biāo)分量。由于貝塞爾曲線的各個(gè)分量計(jì)算是獨(dú)立的,所以該函數(shù)的格式為:bezierPoint(起點(diǎn)分量, 起點(diǎn)控制分量, 終點(diǎn)控制分量, 終點(diǎn)分量, 系數(shù)v)。其中,系數(shù)v的取值范圍為0到1,當(dāng)v為0時(shí)得到起點(diǎn)分量,當(dāng)v為1時(shí)得到終點(diǎn)分量。
bezierTangent函數(shù)
bezierTangent函數(shù)可以獲取貝塞爾曲線在某一點(diǎn)上的切線矢量分量。與bezierPoint函數(shù)類(lèi)似,由于貝塞爾曲線的各個(gè)分量計(jì)算是獨(dú)立的,因此使用方式也相同。根據(jù)獲取的切線矢量計(jì)算角度,我們可以進(jìn)一步處理貝塞爾曲線上的其他操作。