Cubic-bezier ν¨μλ CSS μ λλ©μ΄μ
μμ μμ£Ό μ¬μ©λλ 곑μ ν¨μλ‘, μ λλ©μ΄μ
μ μλλ₯Ό μ μ΄νλ λ° μ¬μ©λ©λλ€. μ΄ ν¨μλ λ€ κ°μ μ μ΄μ μ μ¬μ©νμ¬ κ³‘μ μ μ μνλ©°, cubic-bezier(p1x, p1y, p2x, p2y)μ κ°μ νμμ κ°μ§λλ€. μ¬κΈ°μ $p1$κ³Ό $p2$λ μ μ΄μ μΌλ‘, κ°κ°μ $x$, $y$ μ’νκ° μ λλ©μ΄μ
μ μμκ³Ό λ μ§μ μ¬μ΄μ μλλ₯Ό μ μν©λλ€.
Cubic-bezier ν¨μλ 0 β€ x β€ 1 λ²μμμμ κ°μ μ
λ ₯λ°μ, 0 β€ y β€ 1 λ²μμμμ κ°μ μΆλ ₯νλ 곑μ μ μμ±ν©λλ€. μ΄λ, $x$ κ°μ μ λλ©μ΄μ
μ μ§ν μ λ(μκ°)μ΄λ©°, $y$ κ°μ μ λλ©μ΄μ
μ΄ μ€μ λ‘ λ³νν μ λλ₯Ό λνλ
λλ€.
Cubic-bezier 곑μ μ λ€ κ°μ μ μ΄μ μ κΈ°λ°μΌλ‘ νλλ°, μ΄ μ μ΄μ λ€μ λ€μκ³Ό κ°μ΄ ννν μ μμ΅λλ€:
Cubic-bezier 곑μ μ κ° μ μ¬μ΄μ μ ν 보κ°μ μ¬λ¬ λ² λ°λ³΅νμ¬ μ΅μ’ μ μΈ κ³‘μ μ μμ±ν©λλ€. μ΄ κ³Όμ μ λ€μκ³Ό κ°μ΄ μ€λͺ λ μ μμ΅λλ€:
- tλ μκ°μ λ°λΌ 0μμ 1 μ¬μ΄μ κ°μ κ°μ§λλ€.
- 첫 λ²μ§Έ μ μ΄μ κ°μ 보κ°:
- $Q0 = (1-t) P0 + t P1$
- $Q1 = (1-t) P1 + t P2$
- $Q2 = (1-t) P2 + t P3$
- Q0, Q1, Q2 κ°μ 보κ°:
- $R0 = (1-t) Q0 + t Q1$
- $R1 = (1-t) Q1 + t Q2$
- R0μ R1 κ°μ 보κ°μ ν΅ν΄ μ΅μ’
μ μΌλ‘ 곑μ μμ μ μ κ³μ°:
- $B(t) = (1-t) R0 + t R1$
μμ κ³Όμ μ ν΅ν΄, κ° μκ° $t$μ λν΄ κ³‘μ μμ μ $B(t)$λ₯Ό κ³μ°ν μ μμ΅λλ€. μ΄ κ³‘μ μ λ€ κ°μ μ μ΄μ $P0, P1, P2, P3$μ μν΄ μ μλ cubic-bezier 곑μ μ λ°λ¦ λλ€.
κ²°κ³Όμ μΌλ‘, Cubic-bezier 곑μ μ μ μ΄μ λ€μ κΈ°λ°μΌλ‘ μ¬λ¬ λ¨κ³μ μ ν 보κ°μ ν΅ν΄ μμ±λλ©°, μ΄ κ³‘μ μ μ λλ©μ΄μ
μ μκ°μ λ°λ₯Έ λ³ν λΉμ¨μ μ μνλ λ° μ¬μ©λ©λλ€. μλ₯Ό λ€μ΄, cubic-bezier(0.25, 0.1, 0.25, 1.0)μ μ²μ²ν μμνμ¬ μ€κ°μ λλ €μ§ν λ€μ λΉ¨λΌμ§λ ννλ‘ λμν©λλ€.