๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Web

JS๋กœ ๊ทธ๋ฆผ ๊ทธ๋ฆฌ๊ธฐ rect/fill/fillRect/beginPath/fillStyle/moveTo/lineTo/arc ํ•จ์ˆ˜

by hyerong 2022. 8. 27.

rect : ์‚ฌ๊ฐํ˜•์„ ์„ ์œผ๋กœ ๊ทธ๋ฆฌ๋Š” ํ•จ์ˆ˜.

์œ„ ํ•จ์ˆ˜์— ํ•„์š”ํ•œ argument๋กœ๋Š” ์ˆœ์„œ๋Œ€๋กœ x์ขŒํ‘œ, y์ขŒํ‘œ, ์›ํ•˜๋Š” x์„  ๊ธธ์ด, ์›ํ•˜๋Š” y์„  ๊ธธ์ด

 

fill : ์„ ์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ ์˜์—ญ(๋„ํ˜•)์„ ์ƒ‰(๊ธฐ๋ณธ black)์œผ๋กœ ์ฑ„์šฐ๋Š” ํ•จ์ˆ˜

 

fillRect : ์„ ๊ณผ ์ฑ„์šฐ๊ธฐ ํ•จ์ˆ˜ rect,fill์„ ํ•œ๋ฒˆ์— ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋ฒˆ์— ์ฑ„์›Œ์ง„ ๋„ํ˜•์„ ๊ทธ๋ฆฌ๋Š” ํ•จ์ˆ˜.

ํ•„์š”ํ•œ argument๋Š” ์‹œ์ž‘ํ•  x์ขŒํ‘œ,y์ขŒํ‘œ , ์ฑ„์šธ๋งŒํผ์˜ x์ขŒํ‘œ, y์ขŒํ‘œ 

 

beginPath : ์ƒˆ๋กœ์šด ์ƒ‰/์Šคํƒ€์ผ์„ ์ž…ํžˆ๊ณ  ์‹ถ์„๋•Œ path๋ฅผ ์ƒˆ๋กœ ์ง€์ •ํ•ด์ฃผ๊ธฐ ์œ„ํ•ด ํ˜ธ์ถœํ•˜๋Š” ํ•จ์ˆ˜ 

 

fillStyle : ์ƒ‰์œผ๋กœ ์ฑ„์šธ๋•Œ ์›ํ•˜๋Š” ์ƒ‰์„ ์ž…๋ ฅ

 

moveTo: ๋งˆ์šฐ์Šค ์ปค์„œ์˜ ์œ„์น˜๋ฅผ ๋‹ค์‹œ ์ž…๋ ฅํ•˜๊ณ  ์‹ถ์„๋•Œ ์‚ฌ์šฉ. 

์œ„ ํ•จ์ˆ˜์— ํ•„์š”ํ•œ argument๋กœ๋Š” ์ˆœ์„œ๋Œ€๋กœ ์ด๋™ํ•˜๊ณ  ์‹ถ์€ x์ขŒํ‘œ ์œ„์น˜ (์ˆซ์ž), ์ด๋™ํ•˜๊ณ  ์‹ถ์€ y์ขŒํ‘œ ์œ„์น˜ (์ˆซ์ž)

 

lineTo: moveTo๋ฅผ ํ†ตํ•ด ์›€์ง์ธ ๋งˆ์šฐ์Šค ์ปค์„œ์—์„œ ์„ ์„ ๊ทธ์„๋•Œ ์‚ฌ์šฉ 

์œ„ ํ•จ์ˆ˜์— ํ•„์š”ํ•œ argument๋กœ๋Š” ์ˆœ์„œ๋Œ€๋กœ (์„ ์ด ๊ทธ์–ด์งˆ) x์ขŒํ‘œ, (์„ ์ด ๊ทธ์–ด์งˆ)  y์ขŒํ‘œ

 

arc : ์›์„ ๊ทธ๋ฆฌ๊ณ  ์‹ถ์„๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜.

์œ„ ํ•จ์ˆ˜์— ํ•„์š”ํ•œ argument๋กœ๋Š” ์ˆœ์„œ๋Œ€๋กœ x์ขŒํ‘œ, y์ขŒํ‘œ, ๋ฐ˜์ง€๋ฆ„, ์›์˜ ์‹œ์ž‘ ์œ„์น˜ (๊ธฐ๋ณธ์ ์œผ๋กœ 0 ์ž…๋ ฅ), ์› ๋ชจ์–‘์ด ๋˜๊ธธ ์›ํ•˜๋Š” ๊ธธ์ด (๊ธฐ๋ณธ์ ์ธ ์›์„ ๊ทธ๋ฆฌ๊ธฐ ์œ„ํ•ด์„œ๋Š” 2 * Math.PI์ž…๋ ฅ)

* ๊ทธ ์ด์œ ๋Š” ์•„๋ž˜์˜ ๊ทธ๋ฆผ ์ฐธ๊ณ 

0์—์„œ ์›์„ ์‹œ์ž‘ํ•˜๊ณ  2*Math.PI(์›์ฃผ, ๋ฌด์‚ฌํžˆ ์› ๊ทธ๋ฆฌ๊ธฐ๋ฅผ ๋งˆ์น˜๊ธฐ ์œ„ํ•ด)๋ฅผ ํ•ด์•ผํ•˜๋Š” ์ด์œ 

 

์ฝ”๋“œ ์˜ˆ์‹œ 

๋จผ์ € ์บ”๋ฒ„์Šค๋ฅผ js ํŒŒ์ผ์—์„œ ์„ค์ •ํ•ด์ค˜์•ผ ํ•œ๋‹ค.
์‚ฌ๋žŒ ์ƒ์ฒด ๋งŒ๋“ค๊ธฐ ์˜ˆ์‹œ

html๊ณผ js๊ฐ€ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋‹ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณด์—ฌ์ง

 

 

์ฝ”๋“œ ์ฐธ๊ณ  ๊นƒํ—ˆ๋ธŒ ๋งํฌ https://github.com/yeonhyeeun/meme-maker  

'Web' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

JS ๊ฐ•์˜ ๋ณต์Šต [1] #2๋‹จ์›  (1) 2022.06.13