const vs = [ {x: 0.5, y: 0.5, z: 1}, {x: -0.5, y: 0.5, z: 1}, {x: 0.5, y: -0.5, z: 1}, {x: -0.5, y: -0.5, z: 1}, ]То есть, по сути, мы будем выполнять итерацию по каждому отдельному v из vs , но нам нужно смещать эту v на dz .
const vs = [ {x: 0.5, y: 0.5, z: 0.5}, {x: -0.5, y: 0.5, z: 0.5}, {x: 0.5, y: -0.5, z: 0.5}, {x: -0.5, y: -0.5, z: 0.5}, {x: 0.5, y: 0.5, z: -0.5}, {x: -0.5, y: 0.5, z: -0.5}, {x: 0.5, y: -0.5, z: -0.5}, {x: -0.5, y: -0.5, z: -0.5} ]Мы как будто находимся внутри этого куба.
function frame() { const dt = 1/FPS; angle += 2*Math.PI*dt; clear() for (const v of vs) { point(screen(project(translate_z(rotate_xz(v, angle), dz)))) } setTimeout(frame, 1000/FPS); } setTimeout(fr…