Canvas i pokraczna spirala

0

Cześć.
Za pomocą canvas postanowiłem narysować ładną spriale.

const a = 3;
const b = 3;
c.beginPath(100, 100);
for (let i = 0; i < Math.PI * 7; i += 0.01) {
  let x = a * (2.7182 ^ (b * i)) * Math.cos(i);
  let y = a * (2.7182 ^ (b * i)) * Math.sin(i);
  c.lineTo(300 + x, 300 + y);
}
c.strokeStyle = "red";
c.stroke();

Niestety nie jest ona gładka jak zakładałem a kanciasta. patrz obrazek
Dla czego tak jest i jak to naprawić?

2

Nawet fajnie wygląda ta kanciasta :)
Nie pomyliłeś operatora XOR z podnoszeniem do kwadratu (**)?

a * (2.7182 ** (b * i))
0

Działa! W życiu nie słyszałem o takim operatorze, a logikę miałem :D .
Znacznie ładniej wygląda ta spirala po wywaleniu nawiasu:

  let x = a * 2.71 ** b * i * Math.cos(i);
  let y = a * 2.71 ** b * i * Math.sin(i);
0

Skorą są chętni to wrzucam efekt po poprawkach wraz ze screenem :

const a = 1.3;
const b = 1.3;
c.beginPath(100, 100);
for (let i = 0; i < Math.PI * 11; i += 0.01) {
  let x = a * 2.71 ** b * i * Math.cos(i);
  let y = a * 2.71 ** b * i * Math.sin(i);
  c.lineTo(300 + x, 300 + y);
}
c.strokeStyle = "red";
c.stroke();

1 użytkowników online, w tym zalogowanych: 0, gości: 1