Może to i głupie pytanie, ale chciałbym dobrze to zrozumieć.. Przerabiam właśnie książkę o HTML5 i jestem na tworzeniu kątów w canvas. W przykładzie został narysowany pół okrąg.
<!DOCTYPE HTML> <html> <head> <script type="text/javascript" > MasterCanvas = new Object(); MasterCanvas.showCanvas=function() { canvasNow = document.getElementById("beHappy"); contextNow = canvasNow.getContext('2d'); contextNow.beginPath(); contextNow.moveTo(0,0); contextNow.lineTo(300,0); contextNow.lineTo(300,200); contextNow.lineTo(0,200); contextNow.closePath(); contextNow.stroke(); RADCON = 0.01745329251994; twelve = 0; three = RADCON * 90; six = RADCON * 180; nine = RADCON * 270; contextNow.beginPath(); contextNow.arc(125,100,50,six,twelve,true); contextNow.stroke(); } </script> <style type="text/css"> body { font-family: Verdana, Geneva, sans-serif; color: #cc0000; } </style> <meta charset="UTF-8"> </head> <body onLoad="MasterCanvas.showCanvas()"> <article> <figure> <canvas id="beHappy" width="300" height="200"> Nie widzisz uśmiechu ponieważ nie masz przeglądarki HTML5. Nie ma uśmiechu dla Ciebie! </canvas> <figcaption> </figcaption> </figure> </article> </body> </html>
Wszystko działa, natomiast czegoś tutaj nie rozumiem.
Autor książki pisze, że ze stopniami tutaj jest jak na kompasie, czy też na zegarze (stąd nazwy zmiennych). Kąt 0 / 360 stopni jest równy wskazówce zegara pokazującej godzinę 12, a kąt 180 stopni jest równy wskazówce zegara na godzinie 6. Natomiast logicznie myśląc, gdybyśmy zaznaczyli łuk od godziny 12 do godziny 6, to nie wyglądał by on jak dolna połowa okręgu tylko jak boczna połowa okręgu, tak mi się wydaje.
Nie mam pojęcia jak do tego podejść aby zrozumieć w jakiś łatwy sposób, jakie wprowadzać dane w punkcie początkowym i punkcie końcowym łuku, aby ten narysowany został tak jak to sobie zaplanowałem.
Mam nadzieje że dość jasno opisałem swój problem. Chodzi o to, że autor książki mówi abym na te kąty spojrzał jak na kompas czy na zegar, jednak patrząc w ten sposób zupełnie nie potrafię narysować odpowiedniego łuku..