我有以下的貝塞爾曲線形狀:如何在處理中繪製垂直貝塞爾曲線?
形狀是由下面的代碼實現:
int width = 800; int height = 800;
int centerX = width/2; int centerY = height/2;
int lefterX = width/6; int upperY = height*5/6;
int righterX = width*5/6; int lowerY = height*5/6;
for (int y = 0; y <= height; y += 9) {
bezier(lefterX, centerY,
centerX, y,
centerX, y,
righterX, centerY);
}
現在,我想使這個垂直版本。我寫了下面的代碼:
for (int x = 0; x <= width; x += 9) {
bezier(centerX, upperY,
x, centerY,
x, centerY,
centerX, lowerY);
}
然而,結果證明不完整,只渲染下半部:
什麼從代碼失蹤?
避風港」 t稍後會用到Processing,但您的upperY和lowerY會初始化爲相同的值。我認爲upperY應該是身高/ 6。 另外,考慮將您的值更改爲浮動。否則,你會做整數除法(我不認爲你想要)。 即float lefterX = width/6f – Sprunth
哇,你是對的。謝謝 –
如果你正在繪製「同樣的東西」,只需旋轉座標系。 –