DDA - KimTaebin-ai/study_posts GitHub Wiki
DDA μκ³ λ¦¬μ¦μ μ§μ λ°©μ μμ μ΄μ©ν΄ x
μ y
κ°μ κ³μ°νκ³ , μ΄ κ°λ€μ λ°λΌ μ μ μ°μ΄ μ μ 그립λλ€. μ§μ μ κΈ°μΈκΈ° mmmλ₯Ό μ΄μ©ν΄ x
κ° 1μ© μ¦κ°ν λ y
κ°μ΄ μΌλ§λ λ³νλμ§ κ³μ°νκ³ , λ°λλ‘ y
κ° 1μ© μ¦κ°ν λ x
κ° μΌλ§λ λ³νλμ§λ₯Ό κ³μ°νμ¬ μ μ μ°μ΅λλ€.
μ§μ λ°©μ μμ λ€μκ³Ό κ°μ΄ ννλ©λλ€:
y=mx+by = mx + by=mx+bμ¬κΈ°μ mmmμ κΈ°μΈκΈ°μ
λλ€. DDA μκ³ λ¦¬μ¦μμλ μ΄ κΈ°μΈκΈ° mmmμ μ¬μ©ν΄ x
μ y
κ° μ¦κ°ν λμ λ³νλ₯Ό κ³μ°ν©λλ€.
-
κΈ°μΈκΈ° κ³μ°:
- μμμ (x0, y0)κ³Ό λμ (x1, y1) μ¬μ΄μ κΈ°μΈκΈ° mmmμ κ³μ°ν©λλ€.
- κΈ°μΈκΈ° mmmμ λ€μκ³Ό κ°μ΄ ꡬν©λλ€: m=ΞyΞx=y1βy0x1βx0m = \frac{\Delta y}{\Delta x} = \frac{y1 - y0}{x1 - x0}m=ΞxΞyβ=x1βx0y1βy0β
-
μ¦κ°κ° κ²°μ :
-
x
μy
μ μ¦κ°λμ κ²°μ ν©λλ€. - λ§μ½
dx
κ°dy
λ³΄λ€ ν¬λ©΄x
λ₯Ό κΈ°μ€μΌλ‘ μμ§μ΄λ©΄μy
κ°μ κ³μ°νκ³ , κ·Έλ μ§ μμΌλ©΄y
λ₯Ό κΈ°μ€μΌλ‘ μμ§μ΄λ©΄μx
κ°μ κ³μ°ν©λλ€. - μ¦κ°λμ λ€μκ³Ό κ°μ΄ μ€μ ν©λλ€:
-
dx
κ° ν¬λ©΄x
κ° 1μ© μ¦κ°ν λy
λ mmmλ§νΌ μ¦κ°ν©λλ€. -
dy
κ° ν¬λ©΄y
κ° 1μ© μ¦κ°ν λx
λ 1m\frac{1}{m}m1βλ§νΌ μ¦κ°ν©λλ€.
-
-
-
ν ν½μ μ© μ μ°κΈ°:
- μμμ μμ λμ κΉμ§
x
μy
κ°μ κ³μ°νλ©΄μ μ μ μ°μ΄ λκ°λλ€. - κ°κ°μ κ³μ°λ
x
μy
κ°μμ λ°μ¬λ¦Όνμ¬ ν΄λΉ ν½μ μ μ±μλλ€.
- μμμ μμ λμ κΉμ§
μλ₯Ό λ€μ΄, (0, 0)μμ (5, 3)κΉμ§ μ μ κ·Έλ €λ³΄κ² μ΅λλ€.
-
κΈ°λ³Έ κ° κ³μ°:
- μμμ : (0,0)(0, 0)(0,0)
- λμ : (5,3)(5, 3)(5,3)
- dx=x1βx0=5β0=5dx = x1 - x0 = 5 - 0 = 5dx=x1βx0=5β0=5
- dy=y1βy0=3β0=3dy = y1 - y0 = 3 - 0 = 3dy=y1βy0=3β0=3
-
steps
: maxβ‘(β£dxβ£,β£dyβ£)=5\max(|dx|, |dy|) = 5max(β£dxβ£,β£dyβ£)=5 (μ΄λ νμ)
-
μ¦κ°λ κ³μ°:
-
x
μ¦κ°λ xinc=dxsteps=55=1x_{\text{inc}} = \frac{dx}{\text{steps}} = \frac{5}{5} = 1xincβ=stepsdxβ=55β=1 -
y
μ¦κ°λ yinc=dysteps=35=0.6y_{\text{inc}} = \frac{dy}{\text{steps}} = \frac{3}{5} = 0.6yincβ=stepsdyβ=53β=0.6
-
-
μ μ°κΈ°:
- μμμ μμ
x
λ 1μ© μ¦κ°νκ³ ,y
λ 0.6μ© μ¦κ°νλ©° μ μ μ°μ΅λλ€.
- μμμ μμ
μ΄λ κ² νλ©΄ DDA μκ³ λ¦¬μ¦μ λ°λΌ κ° μ’νλ₯Ό λ°λΌ μ λ€μ΄ μ°νλ©°, (0,0)μμ (5,3)μΌλ‘ μ΄μ΄μ§λ μ μ μ»μ μ μμ΅λλ€.