ÄÜÅÙÃ÷ »ó¼¼º¸±â
Compact P5.js & ¾ÆµÎÀÌ³ë ¿¬µ¿


Compact P5.js & ¾ÆµÎÀÌ³ë ¿¬µ¿

Compact P5.js & ¾ÆµÎÀÌ³ë ¿¬µ¿

<±è¼ºÀÏ> Àú | ÄÚµùºÏ½º

Ãâ°£ÀÏ
2023-08-15
ÆÄÀÏÆ÷¸Ë
ePub
¿ë·®
14 M
Áö¿ø±â±â
PC½º¸¶Æ®ÆùÅÂºí¸´PC
ÇöȲ
½Åû °Ç¼ö : 0 °Ç
°£·« ½Åû ¸Þ¼¼Áö
ÄÜÅÙÃ÷ ¼Ò°³
¸ñÂ÷
ÇÑÁÙ¼­Æò

ÄÜÅÙÃ÷ ¼Ò°³

Àü°ø ºÒ¹® ÄÚµù ÀÔ¹®ÀÚ, S/W ¹× H/W¸¦ ¿¬µ¿ÇÏ°í ½ÍÀº ÀÚ¸¦ À§ÇÑ Ã¥



¹Ì·¡ÀÇ ±³À°¹æ½ÄÀ¸·Î ÈçÈ÷ STEM ±³À°À» ¸»ÇÕ´Ï´Ù. Áï, °úÇÐ(Science), ±â¼ú(Technology), °øÇÐ(Engineering), ¼öÇÐ(Mathematics)À» À¶ÇÕÇÑ ±³À°À» ÀǹÌÇÕ´Ï´Ù. P5.js(¡æÇÁ·Î¼¼½ÌÀÇ À¥ ¹öÀü)¿Í ¾ÆµÎÀ̳ë´Â ¿ø·¡ ÄÚµù¿¡ Àͼ÷ÇÏÁö ¾ÊÀº µðÀÚÀÎÀ̳ª ¿¹¼ú Àü°øÀÇ ÇлýµéÀ» À§ÇÏ¿© °¢°¢ ½Ã°¢Àû, ¹°¸®Àû »óÈ£ ÀÛ¿ë¿¡ ÁßÁ¡À» µÐ S/W ¹× H/W ÄÚµù ¾ð¾î·Î ź»ýÇÏ¿´½À´Ï´Ù. ±×·¯¹Ç·Î P5.js¿Í ¾ÆµÎÀ̳ë´Â STEM¿¡ Àι®Çаú ¿¹¼úÀ» ÀǹÌÇÏ´Â Art¸¦ ´õÇÑ STEAM ±³À°¿¡ ÀûÇÕÇÑ ÄÚµù ¾ð¾îÀÔ´Ï´Ù.



Art Áï, Àι®Çаú ¿¹¼úÀº Àΰ£ÀÇ Ã¢ÀǼºÀ» °³¹ßÇÒ ¼ö ÀÖ´Â ¼ö´ÜÀ¸·Î¼­ Àΰ£¸¸ÀÌ °¡´ÉÇÑ ÀÇ¹Ì ÀÖ´Â ¿µ¿ªÀ̶ó°í ¸»ÇÒ ¼ö ÀÖÀ» »Ó¸¸ ¾Æ´Ï¶ó âÀÇÀûÀÎ ±³À°ÀÇ ÇÙ½É ¿ä¼Ò Áß ÇϳªÀÔ´Ï´Ù. ±× ÀÌÀ¯·Î, Àι®Çаú ¿¹¼ú¿¡´Â ÇØ´äÀÌ Çϳª ÀÌ»ó ¶Ç´Â ÇØ´äÀÌ ¾ø´Â ¹®Á¦°¡ ´ëºÎºÐÀ̹ǷΠâÀÇÀûÀÎ »ç°í°¡ ¹«¾ùº¸´Ù ÇÊ¿äÇϱ⠶§¹®ÀÔ´Ï´Ù. âÀÇÀû »ç°í¸¦ ÃËÁøÇÏ´Â ±³À° È¿°ú¸¦ ´©¸®´Â µ¿½Ã¿¡ °úÇÐ, ±â¼ú, °øÇÐ, ¼öÇаú ¿¹¼ú »çÀÌÀÇ Àý¹¦ÇÑ Á¢Á¡À» Á÷Á¢ üÇèÇÏ°í ½Í´Ù¸é P5.js¿Í ¾ÆµÎÀ̳븦 ¿¬µ¿ÇÑ ÇÇÁöÄà ÄÄÇ»ÆÃ(Physical Computing)À¸·Î ½ÃÀÛÇÏ´Â °ÍÀº ÁÁÀº ¼±ÅÃÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. P5.js¿Í ¾ÆµÎÀ̳븦 ¹è¿ì´Â °úÁ¤Àº ÀÌ·¯ÇÑ À¶ÇÕ°ú âÀÇÀÇ ÇÙ½ÉÀ» üµæÇÏ´Â ½Ã°£ÀÌ µÉ °ÍÀÔ´Ï´Ù. ±×¸®°í ¹«¾ùº¸´Ù Àç¹ÌÀÖ½À´Ï´Ù.^^ For Fun!



¸ñÂ÷

01 ½ÃÀÛ
1.1 ÄÚµù°ú ÇÇÁöÄà ÄÄÇ»Æà 13
1.2 p5.js¶õ? 16
1.2.1 p5.js °³¿ä 16
1.2.2 À¥ ¿¡µðÅÍ¿¡¼­ ÄÚµù 19
1.2.3 ºñÁÖ¾ó ½ºÆ©µð¿À Äڵ忡¼­ ÄÚµù 24
1.3 ¾ÆµÎÀ̳ë¶õ? 30
1.3.1 ¾ÆµÎÀÌ³ë °³¿ä 30
1.3.2 ¾ÆµÎÀ̳뿡¼­ ÄÚµù 32

02 Ç¥Çö
2.1 p5.js: Ç¥Çö 40
2.1.1 ĵ¹ö½ºÀÇ Å©±â 40
2.1.2 Á¡°ú ¼±ÀÇ Ç¥Çö 43
2.1.3 ¿ø°ú »ç°¢ÇüÀÇ Ç¥Çö 45
2.1.4 ¹®ÀÚÀÇ Ç¥Çö 46
2.1.5 »ö»óÀÇ Ç¥Çö 47
¡¼½ÉÈ­¡½ ºñÆ®(Bit) & ¹ÙÀÌÆ®(Byte) 49
2.2 ¾ÆµÎÀ̳ë: Ç¥Çö 53
2.2.1 ÀÔ¡¤Ãâ·Â ºÎÇ° 53
2.2.2 ÀÔ¡¤Ãâ·Â ºÎÇ°ÀÇ ÇɹøÈ£ ¼³Á¤ 54
2.2.3 LED Á¡¸ê 56

03 º¯¼ö
3.1 p5.js: º¯¼ö 61
3.1.1 º¯¼ö ¼±¾ð°ú ÃʱâÈ­ 61
3.1.2 º¯¼ö¿Í ¿¬»ê 64
¡¼½ÉÈ­¡½ À¯´ÏÄÚµå(Unicode) & ¾Æ½ºÅ°ÄÚµå(ASCII Code) 68
¡¼½ÉÈ­¡½ console.log() ¶Ç´Â print() »ç¿ë ½Ã À¯ÀÇÁ¡ ¹× »ç¿ë ¿¹ 71
¡¼½ÉÈ­¡½ ÄܼÖâ¿¡¼­ °á°ú È®ÀÎ 72
3.1.3 º¯¼ö ±â¹Ý ¿òÁ÷ÀÓ Ç¥Çö 73
¡¼½ÉÈ­¡½ Àü¿ªº¯¼ö & Áö¿ªº¯¼ö 77
3.1.4 ½Ã½ºÅÛ º¯¼ö¿Í ´Ù¾çÇÑ ¿òÁ÷ÀÓ ±¸Çö 80
3.2 ¾ÆµÎÀ̳ë: º¯¼ö 90
3.2.1 º¯¼ö ±â¹Ý ´Ù¾çÇÑ ºÎÇ°ÀÇ Æ¯¼º È®ÀÎ 90
¡¼½ÉÈ­¡½ p5.js¿Í ¾ÆµÎÀ̳ëÀÇ ºñ±³: ±âº» µ¥ÀÌÅÍÇü 90
¡¼½ÉÈ­¡½ ÆÃĿijµå(Tinkercad) 94
¡¼½ÉÈ­¡½ ½Ã¸®¾ó Åë½Å °ü·Ã ÇÔ¼ö(=¸Þ¼Òµå) ¹× ½Ã¸®¾ó ¸ð´ÏÅÍ 101
3.2.2 Àüü ȸ·Îµµ 117
3.2.3 º¯¼ö ±â¹Ý Á¦¾î 119
¡¼½ÉÈ­¡½ p5.js¿Í ¾ÆµÎÀ̳ëÀÇ Â÷ÀÌ: map() 120
¡¼½ÉÈ­¡½ ¾ÆµÎÀ̳ëÀÇ ÀÔ¡¤Ãâ·Â ÇÔ¼ö Á¤¸® 123
¡¼½ÉÈ­¡½ ºÎÀúÀÇ tone() ÇÔ¼ö¿Í ¼­º¸¸ðÅÍ »ç¿ë ½Ã À¯ÀÇ»çÇ× 124


04 Á¶°Ç
4.1 p5.js: Á¶°Ç 127
4.1.1 if¹® 127
4.1.2 if-else¹® 130
4.1.3 ¹® 132
4.1.4 if¹®°ú ½Ã½ºÅÛ º¯¼ö 133
4.2 ¾ÆµÎÀ̳ë: Á¶°Ç 141
4.2.1 if¹®, if-else¹® 141
4.2.2 ¹® 145

05 ¹Ýº¹
5.1 p5.js: ¹Ýº¹ 148
5.1.1 for¹® 148
5.1.2 while¹® 151
5.1.3 for¹®°ú »óÈ£ÀÛ¿ë 153
5.2 ¾ÆµÎÀ̳ë: ¹Ýº¹ 156
5.2.1 for¹® 156
5.2.2 while¹® 158

06 ¹è¿­
6.1 p5.js: ¹è¿­ 160
6.1.1 ¹è¿­ÀÇ ¼±¾ð ¹× ÃʱâÈ­ 160
6.1.2 ¹è¿­°ú ¹Ýº¹¹® 164
6.2 ¾ÆµÎÀ̳ë: ¹è¿­ 169
6.2.1 ¹è¿­ÀÇ ¼±¾ð ¹× ÃʱâÈ­ 169
6.2.2 ¹è¿­°ú ¹Ýº¹¹® 170

07 ÇÔ¼ö
7.1 p5.js: ÇÔ¼ö 176
7.1.1 ÇÔ¼ö À¯Çü 176
7.1.2 ÇÔ¼ö À¯Çü1,2 177
7.1.3 ÇÔ¼ö À¯Çü3,4 182
7.1.4 À̺¥Æ® ÇÔ¼ö 186
7.2 ¾ÆµÎÀ̳ë: ÇÔ¼ö 191
7.2.1 ÇÔ¼ö À¯Çü1,2 191
7.2.2 ÇÔ¼ö À¯Çü3,4 194
¡¼½ÉÈ­¡½ P5.js¿Í ¾ÆµÎÀ̳ëÀÇ ÇÔ¼ö À¯Çü ºñ±³ 197

08 P5.js¡æ¾ÆµÎÀ̳ë
8.1 ½Ã¸®¾ó Åë½Å 202
¡¼½ÉÈ­¡½ ½Ã¸®¾ó(Serial) Åë½Å 202
8.2 ¿¬µ¿ ½Ç½ÀÀ» À§ÇÑ Áغñ 207
¡¼Á߿䡽 ¿¬µ¿ ½Ã ÁÖÀÇ»çÇ× ¹× ½ÇÇà ¼ø¼­ 209
8.3 Á¤¼ö ¼Û¡¤¼ö½Å1 211
¡¼½ÉÈ­¡½ createButton() & p5.Element 217
¡¼½ÉÈ­¡½ ¾ÆµÎÀ̳ëÀÇ Æú¸µ(Polling) & ÀÎÅÍ·´Æ®(Interrupt) 218
8.4 Á¤¼ö ¼Û¡¤¼ö½Å2 223
8.5 ¹®ÀÚ¿­ ¼Û¡¤¼ö½Å 225
8.6 º¹¼ö µ¥ÀÌÅÍ ¼Û¡¤¼ö½Å 228

09 ¾ÆµÎÀ̳ë¡æP5.js
9.1 Á¤¼ö ¼Û¡¤¼ö½Å1 236
¡¼½ÉÈ­¡½ p5.jsÀÇ Æú¸µ(Polling) & ÀÎÅÍ·´Æ®(Interrupt) 239
9.2 Á¤¼ö ¼Û¡¤¼ö½Å2 242
9.3 ¹®ÀÚ¿­ ¼Û¡¤¼ö½Å 247
9.4 º¹¼ö µ¥ÀÌÅÍ ¼Û¡¤¼ö½Å 252

10. ¾ÆµÎÀ̳ë¡êP5.js
10.1 P5.js¡æ¾ÆµÎÀ̳ë Çڵ彦ÀÌÅ· 261
¡¼½ÉÈ­¡½ Çڵ彦ÀÌÅ· ¹æ½ÄÀÇ Æ¯Â¡ 265
10.2 ¾ÆµÎÀ̳ë¡æP5.js Çڵ彦ÀÌÅ· 271
¡¼½ÉÈ­¡½ ½Ã¸®¾ó Åë½Å¿¡¼­ ¹®ÀÚ¿­ ¼Û¡¤¼ö½ÅÀÇ À塤´ÜÁ¡ 276
10.3 ¾ÆµÎÀ̳ë¡êP5.js Çڵ彦ÀÌÅ· 277

¸¶¹«¸®
¸¶¹«¸® 288