Помогите пожалуйста исправить цвета в моем коде
Я структуру выполнил , осталось только исправить очередность цветов , уже сотни раз попробовал исправить как в оригинале , но не получилось . Буду рад если поможете
width(2);
fo = 2;
let s = 0;
goto(3, -34);
for (let index = 0; index < 7; index++) {
for (let index = 0; index < 40; index++) {
if (s < 25) {
colour(255, 0, 0, 1);
} else if (s < 50 && s > 25) {
colour(0, 0, 255, 1);
}
left(50);
forward((fo += 0.8));
s = (s + 1) % 50;
}
}
Ответы (1 шт):
Автор решения: Stanislav Volodarskiy
→ Ссылка
Этот код рисует похожую картинку:
const colours = [[255, 0, 0, 0], [0, 0, 255, 0]];
right(180);
let step = 1;
for (let i = 0; i < 308; ++i) {
colour(...colours[i % 2]);
forward(step);
right(59);
step += 1;
}
const canvas = document.getElementById('canvas');
const context = canvas.getContext('2d');
let x = 0;
let y = 0;
let d = 0;
const colour = (r, g, b, a) => context.strokeStyle = `rgb(${r} ${g} ${b})`;
const forward = dist => {
context.beginPath();
context.moveTo(canvas.width / 2 + x, canvas.height / 2 - y);
x += dist * Math.cos(Math.PI / 180 * d);
y += dist * Math.sin(Math.PI / 180 * d);
context.lineTo(canvas.width / 2 + x, canvas.height / 2 - y);
context.stroke();
};
const right = angle => { d += angle; };
const colours = [[255, 0, 0, 0], [0, 0, 255, 0]];
right(180);
let step = 1;
for (let i = 0; i < 308; ++i) {
colour(...colours[i % 2]);
forward(step);
right(59);
step += 1;
}
<canvas id="canvas" width="800" height="800"></canvas>

