์ด ์ฅ์ ์๋ถ๋ถ์์๋ Primer๋ฅผ ํตํด Dynamo์ ๊ฐ๋ ฅํ ์๊ฐ์ ์คํฌ๋ฆฝํ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ค๋ฃจ์์ต๋๋ค. ์ด๋ฌํ ๊ธฐ๋ฅ์ ๋ํ ์ถฉ๋ถํ ์ดํด๋ ๊ฒฌ๊ณ ํ ์๊ฐ์ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ๋ ๋จ๋จํ ๊ธฐ์ด์ด์ ์ฒซ ๋ฒ์งธ ๋จ๊ณ์ ๋๋ค. ํ์ฅ์์ ์๊ฐ์ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ๊ฑฐ๋, ๋๋ฃ๋ค๊ณผ ๊ณต์ ํ๊ฑฐ๋, ์ค๋ฅ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ฑฐ๋, ์ ํ์ ํ ์คํธํ ๋๋ ์ฒ๋ฆฌํ ์ถ๊ฐ์ ์ธ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๋ค๋ฅธ ์ฌ๋์ด ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ ์์ ์ด๊ฑฐ๋ ์ง๊ธ๋ถํฐ 6๊ฐ์ ํ ๊ณต๊ฐํ ์์ ์ด๋ฉด ์ฆ๊ฐ์ ์ธ ๊ทธ๋ํฝ๊ณผ ๋ ผ๋ฆฌ์ ๋ช ํ์ฑ์ด ์์ด์ผ ํฉ๋๋ค. Dynamo์๋ ํ๋ก๊ทธ๋จ์ ๋ณต์ก์ฑ์ ๊ด๋ฆฌํ๋ ๋ง์ ๋๊ตฌ๊ฐ ์์ผ๋ฉฐ, ์ด ์ฅ์์๋ ๊ทธ๋ฌํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ ์๊ธฐ์ ๋ํ ์ง์นจ์ ์ ๊ณตํฉ๋๋ค.
Dynamo ๊ทธ๋ํ๋ฅผ ๊ฐ๋ฐํ๊ณ ์์ด๋์ด๋ฅผ ํ ์คํธํจ์ ๋ฐ๋ผ ๊ท๋ชจ์ ๋ณต์ก์ฑ์ด ๋น ๋ฅด๊ฒ ์ฆ๊ฐํ ์ ์์ต๋๋ค. ๊ธฐ๋ฅ์ ์ธ ํ๋ก๊ทธ๋จ์ ๋ง๋๋ ๊ฒ์ด ์ค์ํ ํํธ, ์ต๋ํ ๊ฐ๋จํ๊ฒ ๋ง๋๋ ๊ฒ๋ ๊ทธ๋งํผ ์ค์ํฉ๋๋ค. ๊ทธ๋ํ๋ฅผ ๋ ๋น ๋ฅด๊ณ ์์ธก ๊ฐ๋ฅํ ๋ฐฉ์์ผ๋ก ์คํํ๊ฒ ๋ ๋ฟ๋ง ์๋๋ผ ๋์ค์ ๋ค๋ฅธ ์ฌ์ฉ์์ ํจ๊ป ๊ทธ ๋ ผ๋ฆฌ๋ฅผ ์ดํดํ๊ฒ ๋ฉ๋๋ค. ์๋์๋ ๊ทธ๋ํ์ ๋ ผ๋ฆฌ๋ฅผ ๋ช ํํ ํ์ํ๋ ์ฌ๋ฌ ๊ฐ์ง ๋ฐฉ๋ฒ์ด ๋์ ์์ต๋๋ค.
๊ทธ๋ฃน์ ์ฌ์ฉํ๋ฉด ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ ๋ ๊ธฐ๋ฅ์ ์ผ๋ก ๊ณ ์ ํ ๋ถ๋ถ์ ์์ฑํ ์ ์์ต๋๋ค.
๊ทธ๋ฃน์ ์ฌ์ฉํ๋ฉด ๋ชจ๋์ฑ๊ณผ ์ ๋ ฌ์ ์ ์งํ๋ฉด์ ํ๋ก๊ทธ๋จ์ ํฐ ๋ถ๋ถ์ ์ด๋ํ ์ ์์ต๋๋ค.
๊ทธ๋ฃน์์ ์ํํ๋ ์์ (์ ๋ ฅ ๋ ํจ์)์ ๊ตฌ๋ถํ ์ ์๋๋ก ๊ทธ๋ฃน์ ์์์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
์ด ํ๋ก๊ทธ๋จ์ ์์์ผ๋ก ๊ฐ ๊ทธ๋ฃน์ ์ฉ๋๊ฐ ์๋ณ๋ฉ๋๋ค. ์ด ์ ๋ต์ ์ฌ์ฉํ์ฌ ๊ฐ๋ฐํ๋ ๊ทธ๋ํฝ ํ์ค์ด๋ ํ ํ๋ฆฟ์์ ๊ณ์ธต์ ์์ฑํ ์ ์์ต๋๋ค.
ํจ์ ๊ทธ๋ฃน(ํ๋์)
์ ๋ ฅ ๊ทธ๋ฃน(์ฃผํฉ์)
์คํฌ๋ฆฝํธ ๊ทธ๋ฃน(์ด๋ก์)
๊ฒฝ์ฐ์ ๋ฐ๋ผ Code Block์ ์ฌ์ฉํ์ฌ ๊ฒ์๋ณด๋ค ๋น ๋ฅด๊ฒ ์ซ์ ๋๋ ๋ ธ๋ ๋ฉ์๋๋ฅผ ์ ๋ ฅํ ์ ์์ต๋๋ค(Point.ByCoordinates, Number, String, Formula).
Code Block์ DesignScript์์ ์ฌ์ฉ์ ํจ์๋ฅผ ์ ์ํ์ฌ ๊ทธ๋ํ์ ๋ ธ๋ ์๋ฅผ ์ค์ด๋ ค๋ ๊ฒฝ์ฐ์ ์ ์ฉํฉ๋๋ค.
1๊ณผ 2๋ ๋ชจ๋ ๋์ผํ ๊ธฐ๋ฅ์ ์ํํฉ๋๋ค. ๊ฐ ๋ ธ๋๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก ๊ฒ์ํ๊ณ ์ถ๊ฐํ๋ ๊ฒ๋ณด๋ค ์ฝ๋ ๋ช ์ค์ ์์ฑํ๋ ๊ฒ์ด ํจ์ฌ ๋ ๋นจ๋์ต๋๋ค. code block์ ํจ์ฌ ๊ฐ๊ฒฐํ๊ธฐ๋ ํฉ๋๋ค.
Code Block์ ์์ฑ๋ ์ค๊ณ ์คํฌ๋ฆฝํธ
๋ ธ๋ ๋ด ๋๋ฑํ ํ๋ก๊ทธ๋จ
Code Block์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ ์ฐธ์กฐํ์ญ์์ค.
๊ฐ๋จํ ๋ ธ๋ ๋ชจ์์ ๊ฐ์ ธ์ ๋จ์ผ Code Block์ ํด๋น DesignScript๋ฅผ ์ฐ๋ Node to Code๋ฅผ ์ฌ์ฉํ์ฌ ๊ทธ๋ํ์ ๋ณต์ก์ฑ์ ์ค์ผ ์ ์์ต๋๋ค.
Node to Code๋ฅผ** ์ฌ์ฉํ๋ฉด ํ๋ก๊ทธ๋จ์ ๋ช ํ์ฑ์ ์ ์งํ๋ฉด์ ์ฝ๋๋ฅผ ์์ถํ ์ ์์ต๋๋ค.**
Node to Code๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ์ ์ฅ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๊ธฐ์กด ํ๋ก๊ทธ๋จ
Node to Code๋ก ์์ฑํ Code Block
Node to Code๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ ์ฐธ์กฐํ์ญ์์ค.
List@Level์ ์ฌ์ฉํ๋ฉด ์๋นํ ํฌ๊ธฐ์ ์บ๋ฒ์ค ๊ณต๊ฐ์ ์ฐจ์งํ ์ ์๋ List.Map ๋ฐ List.Combine ๋ ธ๋๋ฅผ ๋์ฒดํ์ฌ ๊ทธ๋ํ์ ๋ณต์ก์ฑ์ ์ค์ผ ์ ์์ต๋๋ค.
List@Level์์๋ ๋ ธ๋์ ์ ๋ ฅ ํฌํธ์์ ๋ฐ๋ก ๋ฆฌ์คํธ์ ์์ ๋ ๋ฒจ์ ์๋ ๋ฐ์ดํฐ์ ์ก์ธ์คํ ์ ์๊ฒ ํด์ฃผ์ด** List.Map/List.Combine๋ณด๋ค ๋ ๋นจ๋ฆฌ ๋ ธ๋ ๋ ผ๋ฆฌ๋ฅผ ๊ตฌ์ฑํ๋ ๋ฐฉ๋ฒ**์ ์ ๊ณตํฉ๋๋ค.
์ฐ๋ฆฌ๋ CountTrue์ "list" ์ ๋ ฅ์ ๋ํด List@Level์ ํ์ฑํํ์ฌ BoundingBox.Contains์์ ๋ฐํํ๋ True ๊ฐ์ด ์ด๋ค ๋ฆฌ์คํธ์ ๋ช ๊ฐ์ธ์ง ํ์ธํ ์ ์์ต๋๋ค. ์ฌ์ฉ์๋ List@Level์ ํตํด ์ ๋ ฅ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ฌ ๋ ๋ฒจ์ ๊ฒฐ์ ํ ์ ์์ต๋๋ค. List@Level์ ์ฌ์ฉํ๋ฉด ์ ์ฐํ๊ณ ํจ์จ์ ์ด๋ฏ๋ก List.Map ๋ฐ List.Combine๊ณผ ๊ด๋ จ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ๋นํด ์ ๊ทน ๊ถ์ฅ๋ฉ๋๋ค.
๋ฆฌ์คํธ ๋ ๋ฒจ 2์์ true ๊ฐ ๊ณ์ฐ
๋ฆฌ์คํธ ๋ ๋ฒจ 3์์ true ๊ฐ ๊ณ์ฐ
List@Level์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
๊ทธ๋ํ๋ฅผ ์ต๋ํ ๊ฐ๋จํ๊ณ ํจ์จ์ ์ผ๋ก ๋ง๋ค ๋ฟ๋ง ์๋๋ผ ๊ทธ๋ํฝ ๋ช ํ์ฑ์ ์ํด ๋ ธ๋ ฅํ์ญ์์ค. ๋ ผ๋ฆฌ์ ๊ทธ๋ฃนํ๋ฅผ ์ฌ์ฉํ์ฌ ๊ทธ๋ํ๋ฅผ ์ง๊ด์ ์ผ๋ก ๋ง๋ค๊ธฐ ์ํ ์ต์ ์ ๋ ธ๋ ฅ์๋ ๋ถ๊ตฌํ๊ณ ๊ด๊ณ๊ฐ ๋ช ํํ๊ฒ ํ์๋์ง ์์ ์ ์์ต๋๋ค. ๊ทธ๋ฃน ๋ด๋ถ์ ๊ฐ๋จํ ๋ฉ๋ชจ๋ฅผ ๊ธฐ๋กํ๊ฑฐ๋ ์ฌ๋ผ์ด๋ ์ด๋ฆ์ ๋ฐ๊พธ๋ฉด ์ฌ์ฉ์ ์์ ์ด๋ ๋ค๋ฅธ ์ฌ์ฉ์๊ฐ ๋ถํ์ํ ํผ๋์ ๊ฒช๊ฑฐ๋ ๊ทธ๋ํ๋ฅผ ํ์ด๋ณด์ง ์์๋ ๋ฉ๋๋ค. ์๋์๋ ๊ทธ๋ํ ๋ด์, ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ํ ์ ์ฒด์ ๊ทธ๋ํฝ ์ผ๊ด์ฑ์ ์ ์ฉํ๋ ๋ฐ ์ ์ฉํ ๋ช ๊ฐ์ง ๋ฐฉ๋ฒ์ด ๋์ ์์ต๋๋ค.
๊ทธ๋ํ ์์ฑ์ ๋ง์น ํ ์์ ์ ์ค์ด๋ ค๋ฉด ์์ ํ๋ฉด์ ์์ฃผ ๋ ธ๋๋ฅผ ์ ๋ ฌํ์ฌ ๋ ธ๋ ๋ฐฐ์น๋ฅผ ์ฝ์ ์ ์๋๋ก ํด์ผ ํฉ๋๋ค.
๋ค๋ฅธ ์ฌ์ฉ์๊ฐ ์ฌ์ฉ์์ ๊ทธ๋ํ๋ฅผ ์ฌ์ฉํด ์์ ํ๋ ค๋ ๊ฒฝ์ฐ ๋ณด๋ด๊ธฐ ์ ์ ๋ ธ๋-์์ด์ด ๋ฐฐ์น๊ฐ ์ฝ๊ฒ ์ ๋๋๋์ง ํ์ธํด์ผ ํฉ๋๋ค.
์ ๋ ฌ์ ํ์ฉํ๋ ค๋ฉด "๋ ธ๋ ๋ฐฐ์น ์ ๋ฆฌ" ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ๊ทธ๋ํ๋ฅผ ์๋์ผ๋ก ์ ๋ ฌํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ ๊ฒ ํ๋ ๊ฒ์ด ์ง์ ์ ๋ ฌํ๋ ๊ฒ๋ณด๋ค ์ ํํ์ง๋ ์์ต๋๋ค.
!
๊ตฌ์ฑ๋์ง ์์ ๊ทธ๋ํ
์ ๋ ฌ๋ ๊ทธ๋ํ
๋ ธ๋ ์ ๋ ฌ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
์ ๋ ฅ์ ์ด๋ฆ์ ๋ฐ๊พธ๋ฉด ๋ค๋ฅธ ์ฌ๋๋ค์ด ๊ทธ๋ํ๋ฅผ ์ฝ๊ฒ ์ดํดํ ์ ์์ต๋๋ค. ํนํ ํ๋ฌ๊น ๋์์ด ํ๋ฉด์์ ๋ฒ์ด๋ ๊ฒฝ์ฐ์ ์ ์ฉํฉ๋๋ค.
์ ๋ ฅ ์ด์ธ์ ๋ค๋ฅธ ๋ ธ๋์ ์ด๋ฆ์ ๋ฐ๊ฟ ๋๋ ์ฃผ์ํ์ญ์์ค. ์ด์ ๋ํ ๋์์ ๋ ธ๋ ํด๋ฌ์คํฐ์์ ์ฌ์ฉ์ ๋ ธ๋๋ฅผ ์์ฑํ๊ณ ๊ทธ ์ด๋ฆ์ ๋ฐ๊พธ๋ ๊ฒ์ ๋๋ค. ์ฌ๊ธฐ์ ๋ค๋ฅธ ๊ฒ์ด ํฌํจ๋์ด๋ ์ดํด๋ ๊ฒ์ ๋๋ค.
ํ๋ฉด ์กฐ์์ ์ํ ์ ๋ ฅ
๊ฑด์ถ ๋งค๊ฐ๋ณ์๋ฅผ ์ํ ์ ๋ ฅ
๋ฐฐ์ ์๋ฎฌ๋ ์ด์ ์คํฌ๋ฆฝํธ๋ฅผ ์ํ ์ ๋ ฅ
๋ ธ๋์ ์ด๋ฆ์ ๋ฐ๊พธ๋ ค๋ฉด ํด๋น ์ด๋ฆ์ ๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ๋ฒํผ์ผ๋ก ํด๋ฆญํ๊ณ "๋ ธ๋ ์ด๋ฆ ๋ฐ๊พธ๊ธฐ..."๋ฅผ ์ ํํฉ๋๋ค.
๊ทธ๋ํ์ ์ผ๋ถ์ ๋ ธ๋๋ก ํํํ ์ ์๋ ์ผ๋ฐ ์ธ์ด ์ค๋ช ์ด ํ์ํ๋ค๋ฉด ๋ฉ๋ชจ๋ฅผ ์ถ๊ฐํด์ผ ํฉ๋๋ค.
๋ ธ๋ ๋๋ ๊ทธ๋ฃน ๋ชจ์์ด ๋๋ฌด ํฌ๊ฑฐ๋ ๋ณต์กํด์ ์ฆ์ ์ฝ๊ฒ ์ดํดํ ์ ์๋ ๊ฒฝ์ฐ ๋ฉ๋ชจ๋ฅผ ์ถ๊ฐํด์ผ ํฉ๋๋ค.
์์ ๋ณํ ๊ฑฐ๋ฆฌ๋ฅผ ๋ฐํํ๋ ํ๋ก๊ทธ๋จ ๋ถ๋ถ์ ์ค๋ช ํ๋ ๋ฉ๋ชจ
ํด๋น ๊ฐ์ ์ฌ์ธํ์ ๋งคํํ๋ ์ฝ๋๋ฅผ ์ค๋ช ํ๋ ๋ฉ๋ชจ
๋ฉ๋ชจ๋ฅผ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ ๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
์๊ฐ์ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๋ ๋์ ๋ฐํ๋๋ ๊ฒฐ๊ณผ๊ฐ ์์๋๋ ๊ฒฐ๊ณผ์ ๊ฐ์์ง ํ์ธํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ชจ๋ ์ค๋ฅ๋ ๋ฌธ์ ๊ฐ ํ๋ก๊ทธ๋จ์ ์ฆ๊ฐ์ ์ธ ์คํจ๋ฅผ ์ด๋ํ๋ ๊ฒ์ ์๋๋๋ค. ํนํ, ๋จผ ๋ค์ด์คํธ๋ฆผ์ ์ํฅ์ ์ค ์ ์๋ null ๋๋ 0 ๊ฐ์ด ๊ทธ๋ ์ต๋๋ค. ์ด ์ ๋ต์ ์ ํ ์คํธ ์คํฌ๋ฆฝํ ์ปจํ ์คํธ์์๋ ์ค๋ช ํฉ๋๋ค. ๋ค์ ๋ฐฉ๋ฒ์ ์์ํ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์๋๋ก ๋์์ค๋๋ค.
ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ ๋ Watch ๋๋ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ํ์ ์ ์ฌ์ฉํ์ฌ** ํค ์ถ๋ ฅ์์ ์์ํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๋์ง ํ์ธํฉ๋๋ค.**
Watch ๋ ธ๋๋ ๋ค์์ ๋น๊ตํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
์์ ๋ณํ ๊ฑฐ๋ฆฌ
์ฌ์ธ ๋ฐฉ์ ์์ ํตํด ์ ๋ฌ๋๋ ๊ฐ
Watch๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด์๋ ๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
์ฌ์ฉ์๊ฐ ๋ ๋ฆฝ์ ์ผ๋ก ์์ ํ๋ ๊ฒฝ์ฐ์๋ ๋ค๋ฅธ ์ฌ๋์ด ์ธ์ ๊ฐ ํ๋ก๊ทธ๋จ์ ์ด ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ๋ค๋ฅธ ์ฌ๋์ด ํ๋ก๊ทธ๋จ์ ํ์ํ ํญ๋ชฉ์ ์ ์ํ๊ฒ ํ์ ํ๊ณ ์ด ํ๋ก๊ทธ๋จ์ ์ ๋ ฅ๊ณผ ์ถ๋ ฅ์ ํตํด ์์ฑํ ์ ์์ด์ผ ํฉ๋๋ค. ์ด๋ ํนํ Dynamo ์ปค๋ฎค๋ํฐ์ ๊ณต์ ํ๊ณ ๋ค๋ฅธ ์ฌ๋์ ํ๋ก๊ทธ๋จ์์ ์ฌ์ฉํ ์ฌ์ฉ์ ๋ ธ๋๋ฅผ ๊ฐ๋ฐํ ๋ ์ค์ํฉ๋๋ค. ์ด๋ฌํ ๋ฐฉ๋ฒ์ ํตํด ๊ฐ๋ ฅํ๊ณ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ํ๋ก๊ทธ๋จ๊ณผ ๋ ธ๋๊ฐ ์์ฑ๋ฉ๋๋ค.
ํ๋ ์ฑ ๋ฐ ํ์ฅ์ฑ์ ๋ณด์ฅํ๋ ค๋ฉด ์ต๋ํ ๋ง์ ์ ๋ ฅ ๋ฐ ์ถ๋ ฅ์ ์๋ํ๊ณ ์ต์ํํด์ผ ํฉ๋๋ค.
์บ๋ฒ์ค์ ๋จ์ผ ๋ ธ๋๋ฅผ ์ถ๊ฐํ๊ธฐ๋ ์ ์ ๋จผ์ ๋ ผ๋ฆฌ๊ฐ ์ด๋ป๊ฒ ์๋ํ ์ ์๋์ง ๋๋ต์ ์ธ ์ค๊ณฝ์ ์์ฑํ์ฌ ๋ ผ๋ฆฌ๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์ ๋ต์ ์ง๋ณด์์ผ ํฉ๋๋ค. ๋๋ต์ ์ธ ์ค๊ณฝ์ ๊ฐ๋ฐํ ๋๋ ์คํฌ๋ฆฝํธ์ ์ ์ฉํ ์ ๋ ฅ ๋ฐ ์ถ๋ ฅ์ ์ถ์ ํด์ผ ํฉ๋๋ค.
๊ทธ๋ํ์ ํฌํจํ ํน์ ์ต์ ๋๋ ์กฐ๊ฑด์ด ์๋ ๊ฒฝ์ฐ ์ฌ์ ์ค์ ์ ์ฌ์ฉํ์ฌ ์ ์ํ๊ฒ ์ก์ธ์คํด์ผ ํฉ๋๋ค.
์ฌ์ ์ค์ ์ ์ฌ์ฉํ๋ฉด ์คํ ์๊ฐ์ด ๊ธด ๊ทธ๋ํ์์ ํน์ ์ฌ๋ผ์ด๋ ๊ฐ์ ์บ์ฑํ์ฌ ๋ณต์ก์ฑ์ ์ค์ผ ์๋ ์์ต๋๋ค.
์ฌ์ ์ค์ ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด์๋ ๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
ํ๋ก๊ทธ๋จ์ ๋จ์ผ ์ปจํ ์ด๋์ ์์งํ ์ ์๋ ๊ฒฝ์ฐ ์ฌ์ฉ์ ๋ ธ๋๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
๋ค๋ฅธ ํ๋ก๊ทธ๋จ์์ ๊ทธ๋ํ์ ์ผ๋ถ๋ฅผ ์์ฃผ ์ฌ์ฌ์ฉํ ๊ฒฝ์ฐ ์ฌ์ฉ์ ๋ ธ๋๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
Dynamo ์ปค๋ฎค๋ํฐ์ ๊ธฐ๋ฅ์ ๊ณต์ ํ๋ ค๋ฉด ์ฌ์ฉ์ ๋ ธ๋๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
์ ๋ณํ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉ์ ๋ ธ๋์ ์์งํ๋ฉด ๊ฐ๋ ฅํ๋ฉด์๋ ๊ณ ์ ํ ํ๋ก๊ทธ๋จ์ ์ด๋์์ผ๋ก ๋ง๋ค๊ณ ํจ์ฌ ์ฝ๊ฒ ์ดํดํ ์ ์์ต๋๋ค. ์ด๋ฆ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ง์ ๋ ์ ๋ ฅ ํฌํธ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ค๋ฅธ ์ฌ์ฉ์๊ฐ ๋ ธ๋ ์ฌ์ฉ ๋ฐฉ๋ฒ์ ์ฝ๊ฒ ์ดํดํ ์ ์์ต๋๋ค. ๊ฐ ์ ๋ ฅ์ ๋ํ ์ค๋ช ๊ณผ ํ์ ๋ฐ์ดํฐ ์ ํ์ ์ถ๊ฐํด์ผ ํฉ๋๋ค.
๊ธฐ์กด ์ดํธ๋ํฐ ํ๋ก๊ทธ๋จ
์ด ํ๋ก๊ทธ๋จ(PointGrid)์ ์์งํ๋ ์ฌ์ฉ์ ๋ ธ๋
์ฌ์ฉ์ ์ง์ ๋ ธ๋๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด์๋ ๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
ํ ํ๋ฆฟ์ ์์ฑํ์ฌ ๊ณต๋์์ ์๊ฐ ๊ทธ๋ํ๋ฅผ ์ดํดํ๋ ํ์คํ๋ ๋ฐฉ๋ฒ์ ๊ฐ๋๋ก ์๊ฐ์ ๊ทธ๋ํ ์ ์ฒด์ ๊ทธ๋ํฝ ํ์ค์ ์ค์ ํ ์ ์์ต๋๋ค.
ํ ํ๋ฆฟ์ ์์ฑํ ๋ ๊ทธ๋ฃน ์์ ๋ฐ ๊ธ๊ผด ํฌ๊ธฐ๋ฅผ ํ์คํํ์ฌ ์ํฌํ๋ก์ฐ ๋๋ ๋ฐ์ดํฐ ์์ ์ ์ ํ์ ๋ถ๋ฅํ ์ ์์ต๋๋ค.
ํ ํ๋ฆฟ์ ์์ฑํ ๋ ๊ทธ๋ํ์์ ํ๋ฐํธ์๋ ์ํฌํ๋ก์ฐ์ ๋ฐฑ์๋ ์ํฌํ๋ก์ฐ ๊ฐ์ ์ฐจ์ด๋ฅผ ๋ ์ด๋ธ, ์์ ๋๋ ์คํ์ผ๋ก ์ง์ ํ๋ ๋ฐฉ๋ฒ์ ํ์คํํ ์๋ ์์ต๋๋ค.
ํ๋ก๊ทธ๋จ์ UI ๋๋ ํ๋ฐํธ์๋์๋ ํ๋ก์ ํธ ์ด๋ฆ, ์ ๋ ฅ ์ฌ๋ผ์ด๋ ๋ฐ ํ์ ๊ฐ์ ธ์ค๊ธฐ ๋ฑ์ด ์์ต๋๋ค.
ํ๋ก๊ทธ๋จ์ ๋ฐฑ์๋
๊ทธ๋ฃน ์์ ์นดํ ๊ณ ๋ฆฌ(์ผ๋ฐ ์ค๊ณ, ์ ๋ ฅ, Python ์คํฌ๋ฆฝํ , ๊ฐ์ ธ์จ ํ์)
์๋ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ์์ ํ์ผ์ ๋ค์ด๋ก๋ํ์ญ์์ค.
์ ์ฒด ์์ ํ์ผ ๋ฆฌ์คํธ๋ ๋ถ๋ก์์ ํ์ธํ ์ ์์ต๋๋ค.
๋ช ๊ฐ์ง ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ค์ ํ์ผ๋ฏ๋ก ์ข ํฉ๋ ํ๋ก๊ทธ๋จ์ ๋นจ๋ฆฌ ์ ์ฉํด ๋ณด๊ฒ ์ต๋๋ค. ํ๋ก๊ทธ๋จ์์ ์ง๋ถ์ด ์์ฑ๋์ง๋ง ๊ทธ๋ํ์ ์ํ๊ฐ ์์ฑ์์ "๋ง์ธ๋๋งต"๊ณผ ๊ฐ์ต๋๋ค. ์ด ์ํ๋ก๋ ๊ตฌ์ฑ ๋๋ ์ฉ๋์ ๋ํ ์ค๋ช ์ด ๋ถ์กฑํฉ๋๋ค. ๋ค๋ฅธ ์ฌ์ฉ์๊ฐ ์ฌ์ฉ ๋ฐฉ๋ฒ์ ์ดํดํ ์ ์๋๋ก ํ๋ก๊ทธ๋จ์ ๊ตฌ์ฑํ๊ณ , ์ค๋ช ํ๊ณ , ๋ถ์ํ๋ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์งํํด ๋ณด๊ฒ ์ต๋๋ค.
ํ๋ก๊ทธ๋จ์ด ์๋ํ์ง๋ง ๊ทธ๋ํ๊ฐ ์ฒด๊ณ์ ์ด์ง ์์ต๋๋ค.
ํ๋ก๊ทธ๋จ์์ ๋ฐํ๋ ๋ฐ์ดํฐ ๋ฐ ํ์์ ๊ฒฐ์ ํ๋ ๊ฒ๋ถํฐ ์์ํ๊ฒ ์ต๋๋ค.
๋ฐ์ดํฐ์ ์ค์ํ ๋ณ๊ฒฝ ์ฌํญ์ด ๋ฐ์ํ๋ ๊ฒฝ์ฐ๋ฅผ ์ดํดํ๋ ๊ฒ์ ๋ ผ๋ฆฌ์ ๋ถํ ๋๋ ๋ชจ๋์ฑ์ ์ค์ ํ๋ ๋ฐ ์ค์ํฉ๋๋ค. Watch ๋ ธ๋๊ฐ ์๋ ํ๋ก๊ทธ๋จ์ ๋๋จธ์ง ๋ถ๋ถ์ ์กฐ์ฌํ์ฌ ๋ค์ ๋จ๊ณ๋ก ์ด๋ํ๊ธฐ ์ ์ ๊ทธ๋ฃน์ ๊ฒฐ์ ํ ์ ์๋์ง ์ฌ๋ถ๋ฅผ ํ์ธํฉ๋๋ค.
์ํ ๋ฐฉ์ ์์ด ํฌํจ๋ ์ด Code Block์ ํ๋ก๊ทธ๋จ์ ์ค์ํ ๋ถ๋ถ์ฒ๋ผ ๋ณด์ ๋๋ค. Watch ๋ ธ๋๊ฐ ํ์๋์ด ๋ณํ ๊ฑฐ๋ฆฌ ๋ฆฌ์คํธ๊ฐ ๋ฐํ๋ฉ๋๋ค.
์ด ์์ญ์ ์ฉ๋๊ฐ ๋ช ํํ์ง ์์ต๋๋ค. BoundingBox.Contains์ ๋ฆฌ์คํธ ๋ ๋ฒจ L2์ True ๊ฐ์ด ์ ๋ ฌ๋๋ฉฐ, List.FilterByBoolMask๊ฐ ์์ผ๋ฉด ์ ๊ทธ๋ฆฌ๋์ ์ผ๋ถ๋ฅผ ์ํ๋งํ๊ณ ์์์ ์๋ฏธํฉ๋๋ค.
ํ๋ก๊ทธ๋จ์ ์์ ๋ถ๋ถ์ ์ดํดํ๊ณ ๋๋ฉด ๊ทธ๋ฃน์ ๋ฐฐ์นํด ๋ณด๊ฒ ์ต๋๋ค.
๊ทธ๋ฃน์ ์ฌ์ฉํ๋ฉด ์ฌ์ฉ์๊ฐ ํ๋ก๊ทธ๋จ์ ๋ถ๋ถ์ ์๊ฐ์ ์ผ๋ก ๊ตฌ๋ถํ ์ ์์ต๋๋ค.
3D ๋์ง ๋ชจ๋ธ ๊ฐ์ ธ์ค๊ธฐ
์ฌ์ธ ๋ฐฉ์ ์์ ๊ธฐ๋ฐ์ผ๋ก ์ ๊ทธ๋ฆฌ๋ ๋ณํ
์ ๊ทธ๋ฆฌ๋์ ์ํ ๋ถ๋ถ
๊ทธ๋ฃน์ด ์ค์ ๋ ์ํ์์ ๋ ธ๋๋ฅผ ์ ๋ ฌํ์ฌ ๊ทธ๋ํ ์ ์ฒด์ ๊ฑธ์น ์๊ฐ์ ์ฐ์์ฑ์ ์์ฑํฉ๋๋ค.
์๊ฐ์ ์ฐ์์ฑ์ ํตํด ์ฌ์ฉ์๋ ๋ ธ๋ ๊ฐ์ ์์์ ๊ด๊ณ ๋ฐ ํ๋ก๊ทธ๋จ ํ๋ฆ์ ํ์ธํ ์ ์์ต๋๋ค.
๊ทธ๋ํฝ ๊ฐ์ ์ฌํญ์ ํ์ธต ๋ ์ถ๊ฐํ์ฌ ํ๋ก๊ทธ๋จ์ ๋ ์ฝ๊ฒ ์ก์ธ์คํ ์ ์๋๋ก ํฉ๋๋ค. ๋ฉ๋ชจ๋ฅผ ์ถ๊ฐํ์ฌ ํ๋ก๊ทธ๋จ์ ํน์ ์์ญ์ด ์๋ํ๋ ๋ฐฉ์์ ์ค๋ช ํ๊ณ , ์ ๋ ฅ์ ์ฌ์ฉ์ ์ด๋ฆ์ ์ง์ ํ๊ณ , ์๋ก ๋ค๋ฅธ ์ ํ์ ๊ทธ๋ฃน์ ์์์ ์ง์ ํฉ๋๋ค.
์ด๋ฌํ ๊ทธ๋ํฝ ๊ฐ์ ์ฌํญ์ ํตํด ์ฌ์ฉ์๋ ํ๋ก๊ทธ๋จ์์ ์ํํ๋ ์์ ์ ๋ํด ์์ธํ ์ ์ ์์ต๋๋ค. ์๋ก ๋ค๋ฅธ ๊ทธ๋ฃน ์์์ ์ฌ์ฉํ๋ฉด ์ ๋ ฅ์ ํจ์์ ๊ตฌ๋ถํ ์ ์์ต๋๋ค.
์ฃผ
์์๋ณด๊ธฐ ์ฌ์ด ์ด๋ฆ์ ์ ๋ ฅ
ํ๋ก๊ทธ๋จ์ ์์ถํ๊ธฐ ์ ์ Python ์คํฌ๋ฆฝํธ ๋ฐฐ์ ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์๊ฐํ ์ ๋ต์ ์์น๋ฅผ ์ฐพ์๋ณด๊ฒ ์ต๋๋ค. ์ฒซ ๋ฒ์งธ๋ก ์ถ์ฒ๋ ์ง๋ถ ํ๋ฉด์ ์ถ๋ ฅ์ ๊ฐ๊ฐ์ ์คํฌ๋ฆฝํ ์ ๋ ฅ์ ํ๋ฌ๊น ํฉ๋๋ค.
์ด ํ๋ก๊ทธ๋จ์์ ์ด ์ง์ ์ ์คํฌ๋ฆฝํ ์ ํตํฉํ๊ธฐ๋ก ์ ํํ์ผ๋ฏ๋ก ๋ฐฐ์ ์๋ฎฌ๋ ์ด์ ์ ์๋์ ๋จ์ผ ์ง๋ถ ํ๋ฉด์์ ์คํํ ์ ์์ต๋๋ค. ํด๋น ํน์ ํ๋ฉด์ ๋ฏธ๋ฆฌ ๋ณผ ์ ์์ง๋ง, ๋ชจ๋ฐ๊ธฐ๋ Polysurface์ ์๋จ ํ๋ฉด์ ์ ํํ ํ์๊ฐ ์์ต๋๋ค.
์คํฌ๋ฆฝํธ ์ ๋ ฅ์ ๋ํ ์์ค ํ์
Python ๋ ธ๋
๋ชจ๋ ๊ฒ์ด ์ ์๋ฆฌ์ ๋ฐฐ์น๋์์ผ๋ฏ๋ก ๊ทธ๋ํ๋ฅผ ๋จ์ํํ๊ฒ ์ต๋๋ค.
Node to Code์ ์ฌ์ฉ์ ๋ ธ๋๋ก ํ๋ก๊ทธ๋จ์ ์์ถํ๋ ๊ทธ๋ํ์ ํฌ๊ธฐ๊ฐ ํฌ๊ฒ ์ค์์ต๋๋ค. ์ง๋ถ ํ๋ฉด ๋ฐ ๋ฒฝ์ ์์ฑํ๋ ๊ทธ๋ฃน์ ์ด ํ๋ก๊ทธ๋จ์๋ง ํด๋นํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์ฝ๋๋ก ๋ณํ๋์์ต๋๋ค. ์ ๋ณํ ๊ทธ๋ฃน์ ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์์ ์ฌ์ฉ๋ ์ ์์ผ๋ฏ๋ก ์ฌ์ฉ์ ๋ ธ๋์ ํฌํจ๋์์ต๋๋ค. ์์ ํ์ผ์์๋ ์ ๋ณํ ๊ทธ๋ฃน์์ ์์ฒด ์ฌ์ฉ์ ๋ ธ๋๋ฅผ ์์ฑํฉ๋๋ค.
"์ ๊ทธ๋ฆฌ๋ ๋ณํ" ๊ทธ๋ฃน์ ํฌํจํ ์ฌ์ฉ์ ๋ ธ๋
"๊ฑด์ถ ์ง๋ถ ํ๋ฉด ๋ฐ ์ปคํผ์ ์์ฑ" ๊ทธ๋ฃน์ ์์ถํ Node to Code
๋ง์ง๋ง ๋จ๊ณ๋ก, ๋ณธ๋ณด๊ธฐ ์ง๋ถ ์์์ ๋ํ ์ฌ์ ์ค์ ์ ์์ฑํฉ๋๋ค.
์ด๋ฌํ ์ ๋ ฅ์ ์ง๋ถ ์์์ ์ฃผ์ ๋์ธ์ด๋ฉฐ ์ฌ์ฉ์๊ฐ ํ๋ก๊ทธ๋จ์ ์ ์ฌ๋ ฅ์ ํ์ธํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ ๊ฐ์ง ์ฌ์ ์ค์ ๋ทฐ๊ฐ ํฌํจ๋ ํ๋ก๊ทธ๋จ์ ๋๋ค.
์ง๋ถ ๋ฐฐ์ ํจํด์ ์ฌ์ฉ์์๊ฒ ๊ฐ ์ฌ์ ์ค์ ์ ํด์ ๋ทฐ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๊ทธ๋ฃน์ ์ฌ์ฉํ๋ฉด ๊ทธ๋ํ๋ฅผ ๊ตฌ์ฑํ์ฌ ์ฌ์ฉ์ ๋ ธ๋ ์์ฑ์ ๊ฐ์ํํ ์ ์์ต๋๋ค.
๊ทธ๋ฃน์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ํ๋ก๊ทธ๋จ ๊ด๋ฆฌ๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
๊ณ์ ํธ์ง ๊ฐ๋ฅํ ํ๋์ ๊ตฌ์ฑ์์๋ก ์ฝ๊ฒ ์ฝ๋ ์์ถ
๊ทธ๋ํ์ ๋๋ถ๋ถ์ ๋จ์ํํ ์ ์์
'๋ฏธ๋ ํ๋ก๊ทธ๋จ'์ ์์ฃผ ํธ์งํ์ง ์๋ ๊ฒฝ์ฐ์ ์ ์ฉ
ํจ์์ ๊ฐ์ ๊ธฐํ code block ๊ธฐ๋ฅ์ ํตํฉํ๋ ๋ฐ ์ ์ฉ
Node to Code๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ์ ๋จ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ผ๋ฐ ์ด๋ฆ์ ์ง์ ํ ๊ฒฝ์ฐ ์ฝ๊ธฐ๊ฐ ์ด๋ ค์์ง
๋ค๋ฅธ ์ฌ์ฉ์๊ฐ ์ดํดํ๊ธฐ๊ฐ ๋ ์ด๋ ค์
์๊ฐ์ ํ๋ก๊ทธ๋๋ฐ ๋ฒ์ ์ผ๋ก ์ฝ๊ฒ ๋์๊ฐ ์ ์๋ ๋ฐฉ๋ฒ ์์
๊ฑด์ถ ์ง๋ถ ํ๋ฉด ์์ฑ
์ ๋ฆฌ ์ปคํผ์ ์์ฑ
์ผ๊ธฐ/๋๊ธฐ "์ค์์น"


