μŠ€ν‚¬μ΄ λ„ˆλΉ„ 1짜리 μ§μ„ ν˜• 기술이 μžˆλ‹€λ©΄ μ’‹κ² μ§€λ§Œ, μŠ€ν‚¬μ΄ λ„ˆλ¬΄ λΉ„μŠ·λΉ„μŠ·ν•΄μ§€λŠ”λ“±μ˜ λ¬Έμ œκ°€ μžˆμœΌλ‹ˆ, λ‘κΊΌμš΄ μ§μ„ μ΄λΌλ˜κ°€, 뢀채꼴 λ²”μœ„ λ“± λ‹€μ–‘ν•œ μŠ€ν‚¬μ„ 타일 λ²”μœ„λ₯Ό 톡해 κ΅¬ν˜„ν•˜κΈ° μœ„ν•΄μ„œ μž‘μ—…μ„ 미리 ν•΄λ‘μ—ˆλ‹€.


기쑴의 μŠˆνΌμ»€λ²„ λΈŒλ ˆμ  ν–„μ„ μ΄μš©ν•œ 직선 경둜 상에, μ›ν•˜λŠ” λͺ¨μ–‘μ˜ λΈŒλŸ¬μ‰¬λ₯Ό μ°μ–΄μ£ΌλŠ” λ°©μ‹μœΌλ‘œ λ§Œλ“€μ—ˆμŒ.

2fafc535ed9228a77cbedbfb06df231d56dc617c78f014d5dadc

2fafc535ed9239b67eb3cffb06df231ddcaa1ae5e94bf057ebbb



λ”°λΌμ„œ κΈ°μ‘΄ μ§μ„ ν•¨μˆ˜μ˜ νŒŒλΌλ§ˆν„°μ— λΈŒλŸ¬μ‰¬λ₯Ό μΆ”κ°€ν•˜κ³ , λΈŒλŸ¬μ‰¬λ₯Ό μ΄μš©ν•΄ λ§Œλ“  λ²”μœ„λ₯Ό μ΅œμ’… 결과둜 λ§Œλ“€μ–΄λ‚΄λŠ” 뢀뢄을 직선 계산 μ½”λ“œμ— μΆ”κ°€ν–ˆλ‹€.


그런데, μ§μ„ μ˜ κΈ°μšΈκΈ°λŠ” 맀우 λ‹€μ–‘ν•˜κ³ , λΈŒλŸ¬μ‰¬μ— 그것을 λ°˜μ˜ν•˜μ§€ μ•ŠμœΌλ©΄, 맀우 μ΄μƒν•œ ν˜•νƒœμ˜ μŠ€ν‚¬ λ²”μœ„κ°€ λœλ‹€.


3fbcde21e09c28a8699fe8b115ef046c891e0e



예λ₯Ό λ“€μ–΄ λŒ€μΆ© μ΄λ ‡κ²Œ λΎ°μ‘±ν•œ μ§μ„ μ˜ νŒŒλž€ λ²”μœ„λ₯Ό μ›ν–ˆλŠ”λ°, λΈŒλŸ¬μ‰¬μ— νšŒμ „ 반영이 μ—†μ—ˆλ‹€λ©΄ μ΄ˆλ‘μƒ‰ λ²”μœ„μ²˜λŸΌ, μ˜λ„ν•œ λͺ¨μ–‘κ³Ό λ‹€λ₯Έ ν˜•νƒœκ°€ λ‚˜μ˜€κ²Œ 될 것이닀.



3fbcde21e0ed1ba97cadd3b6029f34337dda6a7fe5c3d0f9e55627



μ‹€μ œλ‘œ μ›ν•˜λŠ” 건 μ•„λ§ˆλ„ 이런 ν˜•νƒœμΌ 것이닀.


λ”°λΌμ„œ, 이λ₯Ό ν•΄κ²° ν•˜κΈ° μœ„ν•΄ 각도에 λŒ€ν•΄ 기쀀점을 작고, ν•΄λ‹Ή 기쀀점과 μ‹€μ œ κ°λ„μ˜ 차이에 따라 λΈŒλŸ¬μ‰¬λ˜ν•œ λ§ˆμ°¬κ°€μ§€λ‘œ νšŒμ „μ‹œν‚€λŠ”κ²ƒμ΄ μ›ν•˜λŠ” κ²°κ³Όλ₯Ό λ‚΄ 쀄 것이닀.


그것과 ν•¨κ»˜, 2D κ²Œμž„μ˜ λ‹€μ–‘ν•œ νšŒμ „κ³Ό λ°©ν–₯ κ΄€λ ¨ 벑터 κ΄€λ ¨ 연산을 ν•˜κΈ° μœ„ν•΄ 문법적 섀탕을 κ°€λ―Έν•œ float λ³΅μ†Œμˆ˜ ꡬ쑰체와 ν•¨κ»˜ νšŒμ „μš© μ½”λ“œλ₯Ό λ§Œλ“€μ–΄ μ£Όμ—ˆλ‹€.




a66f11ab0102b45f8eff5b40de5bf8cd977c8cb895e256e69ade83f5875510d02b851aa816258ddca9b55b42690e2c21


이런 μ‹μœΌλ‘œ λ³΅μ†Œμˆ˜ ꡬ쑰체와



a66f11ab0102782b974a5a4bd391aff47c882a0a4b10251564712a5cb14a055be2686cfb92f0e7

μ†Œμ†Œν•œ μœ λ‹ˆν‹°μ˜ λ²‘ν„°νƒ€μž…μ— λŒ€ν•œ ν™•μž₯ λ©”μ„œλ“œλ“€μ„ λͺ‡κ°€μ§€ μ •μ˜ ν•΄μ£Όμ—ˆλ‹€.


I() ν™•μž₯ λ©”μ„œλ“œ 같은 κ²½μš°λŠ” 쑰금 더 ꡬ쑰체λ₯Ό 숫자처럼 λ‹€λ£¨κ³ μž λ§Œλ“€μ—ˆμœΌλ©°,


ComplexF complex = 1 + 3.I();


와 같이 μ„ μ–Έ κ°€λŠ₯ν•œ λ‹€μ–‘ν•œ 문법적 섀탕과,

λ‹Ήμ΄ˆμ˜ λͺ©μ μΈ λ²‘ν„°μ˜ μ—°μ‚° νŽΈμ˜μ„± μΆ”κ°€λ₯Ό μœ„ν•΄ 벑터 νƒ€μž…μ„ μ¦‰μ‹œ λ³΅μ†Œμˆ˜λ‘œ λ³€ν™˜ 및 λ³΅μ›ν•˜λŠ” ν˜• λ³€ν™˜λ„ λ§Œλ“€μ–΄μ£Όμ—ˆλ‹€.


이제 이걸 λΈŒλŸ¬μ‰¬μ— λŒ€ν•΄ νšŒμ „ν•˜μ—¬ 적용 ν•˜λŠ” μ½”λ“œλ₯Ό μž‘μ„±ν•˜μ˜€λ‹€.

a05120aa2527782dbe509638f91da8fadaedc3a78eca8c79703085f4a86549c91d


μ§„ν–‰ 방식은 μ•„λž˜μ™€ κ°™λ‹€.


1. 쀑심은 항상 ν¬ν•¨ν•œλ‹€κ³  κ°€μ •ν•œλ‹€. (μ΄λŠ” λΈŒλŸ¬μ‰¬λ‘œ μ“Έ λͺ©μ μ΄κΈ°μ—, μ–΄λŠμ •λ„ λ‹Ήμ—°ν•œ μ΄μœ μ΄λ‹€)

2. (2n + 1) * (2n + 1) 크기의 μ •μ‚¬κ°ν˜•μ„ κΈ°μ€€μœΌλ‘œ νŒμ • λ²”μœ„λ₯Ό ν™•λŒ€ν•œλ‹€.

3. 각 νŒμ •μ€ μ •μˆ˜μ μ„ μ§μ„ μ˜ 기울기의 각도λ₯Ό "μ—­νšŒμ „" ν•˜λŠ” λ°©μ‹μœΌλ‘œ νŒμ •ν•œλ‹€.
4. μ •μ‚¬κ°ν˜• ν…Œλ‘λ¦¬μ˜ λͺ¨μ„œλ¦¬μ— κ·Έ μ–΄λ–€ 타일도 μ—­νšŒμ „ λ³€ν™˜μ‹œ 원본 λ²”μœ„μ— ν¬ν•¨λ˜μ§€ μ•ŠμœΌλ©΄, 더 이상 ν¬ν•¨λ˜λŠ” λ²”μœ„κ°€ μ—†λ‹€κ³  νŒλ‹¨ν•˜κ³ , μžλ™μœΌλ‘œ μ€‘μ§€ν•œλ‹€.

μ‚¬μš©ν•΄μ•Όν•˜λŠ” λ„ν˜•μ— μ•½κ°„μ˜ μ œμ•½μ€ μžˆμ§€λ§Œ, λ„ν˜•μœΌλ‘œλΆ€ν„° 데이터 μΆ”μΆœ 없이 점점 λ²”μœ„λ₯Ό ν‚€μ›Œκ°€λ©° μ²΄ν¬ν•˜λŠ” 방식이기 λ•Œλ¬Έμ—, λ„ν˜• μΆ”κ°€μ˜ μœ μš©μ„±μ„ μœ„ν•΄ μœ„μ™€ 같이 λ§Œλ“€μ—ˆλ‹€.

λ˜ν•œ λ„ν˜•μ€ μ§„μ§œ 싀체λ₯Ό κ°€μ§„ 무언가가 μ•„λ‹Œ, "νŒμ •μ‹" ν˜•νƒœλ‘œ μž‘μ„±ν•˜μ—¬, μ–΄λ–€ 점이 λ„ν˜•μ˜ λ²”μœ„μ— ν¬ν•¨λ˜λŠ”μ§€ μ•„λ‹Œ μ§€λ§Œ μ•Œλ €μ£ΌλŠ” 역할을 ν•œλ‹€.


3.의 μ—­νšŒμ „ μ΄μœ λŠ”, λ„ν˜•μ„ νšŒμ „ν•˜λŠ” 식을 μž‘μ„±ν•˜λŠ” 것 보닀, κ·Έλƒ₯ νšŒμ „ ν•œμ μ„ λ„ν˜•μ— 넣어보고, μ•ˆμ— 있으면 λ„ν˜• μ•ˆμ— μžˆλ‹€κ³  νŒλ‹¨ν•˜λŠ” 것이 더 νŽΈν•˜κΈ° λ•Œλ¬Έ...





μœ„μ˜ 방식을 따라, μ μš©ν•΄λ³΄λ©΄ μ•„λž˜μ™€ 같은 κ²°κ³Όκ°€ λ‚˜μ˜¨λ‹€.


1eb5d136e0c176b660b8f68b12d21a1d7fd5cd931e05

μš°μ„  각 λ„ν˜•μ˜ μ½”λ“œλŠ” μ΄λŸ°μ‹μœΌλ‘œ νŒμ •μ‹μ˜ ν•¨μˆ˜λ₯Ό λ°˜ν™˜ν•˜λŠ” ν˜•νƒœλ₯Ό λˆλ‹€.


λ§ˆλ¦„λͺ¨, 원, 타원, μ§μ‚¬κ°ν˜•, 그리고 별도 특수 λ²”μœ„μΈ 뢀채꼴을 각각 μ‚΄νŽ΄λ³΄λ©΄ μ•„λž˜μ™€ κ°™λ‹€.


1. λ§ˆλ¦„λͺ¨

20bcc233e8df37e87eb1d19528d5270373584fa6021cfc


20bcc233e8df37f420afd8b236ef203edf967cd4d024aff3


λ§ˆλ¦„λͺ¨ 같은 κ²½μš°μ—λŠ”, Pi/2의 배수각이 아닐 경우 νšŒμ „ λ³€ν™˜ν•˜λ©΄ μ–‡μ•„μ§€λŠ” λ¬Έμ œκ°€ μžˆκΈ°μ—, ν•΄λ‹Ή 각도가 μ•„λ‹Œ κ²½μš°μ— μ„Έλ‘œμΆ•μ— λŒ€ν•΄μ„œ μ•½ 1.1배의 νŒμ • 보정을 λ„£μ–΄ λ‘κ»˜λ₯Ό λ³΄μ •ν•˜μ˜€λ‹€. (λ”°λΌμ„œ μ—„λ°€ν•œ νšŒμ „μ΄λ™μ€ μ•„λ‹ˆμ§€λ§Œ, λ³΄κΈ°μ—λŠ” 더 μ΄μ˜λ‹€λŠ” μž₯점이 μžˆλ‹€.)


2. 원

1fb2c528e19c28a8699fe8b115ef046f1bab394814


1fb2c528e18076b660b8f68b12d21a1db014b481af48


μ†”μ§νžˆ 원은 νšŒμ „ λ³€ν™˜ν•΄λ„ 원이긴 ν•΄μ„œ, μ–˜λŠ” μ˜ˆμ™Έμ μΈ 처리λ₯Ό ν• κΉŒ 살짝 κ³ λ―Ό 쀑이긴 ν•˜μ§€λ§Œ, 일단은 μ΄λ ‡κ²Œ λœλ‹€.



3. 타원

02abd12aabc236a14e81d2b628f1766af2f23ad3



02abd12ab79c28a8699fe8b115ef0468056e253063



4. μ§μ‚¬κ°ν˜•



1fb8d332e4dc3faa6bf1c6bb11f11a39c77f2d22e183ae0b16


1fb8d332e4dc3faa6bed98a518d60403847ef2353594ed612fa9



5. 뢀채꼴 (특수 λ²”μœ„)


0bbcde68f5dc3f8650bbd58b3683776882a7eb


0bbcde74abc236a14e81d2b628f1766c89962908



사싀 λ‹¨μˆœ λ…Έκ°€λ‹€ 인챈트, μƒνƒœμ΄μƒ μž‘μ—…ν•˜λ‹€κ°€ λ„ˆλ¬΄ μ§€λ£¨ν•΄μ Έμ„œ, μ–΄μ©Œν”Ό ν•„μš”ν•œ 일 뭐가 μžˆμ„κΉŒ μ°Ύλ‹€κ°€ λ§Œλ“ κ±°λΌ... 이제 λ‹€μ‹œ μ§€λ£¨ν•˜κ³  ν˜„ν•™μ μΈ λ…Έκ°€λ‹€λ₯Ό ν•΄μ•Όν•œλ‹€λŠ” μ μ—μ„œ μ•½κ°„ μΉ¨μšΈν•΄μ§€κΈ΄ ν•˜μ§€λ§Œ... μ–΄μ¨Œλ“  결과물은 λ‚˜λ¦„ λ§Œμ‘±μŠ€λŸ¬μš°λ‹ˆ μ’‹μ€κ²Œ 쒋은 것 μ•„λ‹κΉŒ μƒκ°ν•˜κΈ°λ‘œ 함...