줄의 중앙이 진동하는 변위를 감쇠 사인파 하나로 계산합니다: displacement(t) = amplitude × e^(-decay × t) × sin(frequency × t). 시간이 지날수록 e^(-decay × t) 항이 0에 가까워지며 진폭이 줄어들고, 결국 줄은 평평한 직선으로 돌아옵니다. 이 변위값을 줄 중앙을 지나는 2차 베지어 곡선의 제어점(줄과 수직 방향으로)으로 넣으면, 줄 전체가 매끄럽게 휘어진 곡선으로 보입니다.
실제 기타줄은 배음(harmonics)이 섞여 더 복잡한 파형이지만, UI용으로는 단일 사인파 감쇠만으로도 "튕겼다가 멈춘다"는 인상을 주기에 충분합니다. 튕기는 세기(amplitude)를 무작위로 살짝 바꿔주면 매번 같은 모양으로 반복되지 않아 더 자연스럽습니다.
드래그로 직접 당겼다가 놓는 상호작용(당긴 만큼 amplitude 결정)과 결합하면 러버밴드류 UI(당겨서 새로고침, 스와이프 저항)의 시각적 근거가 됩니다 — 다만 그 경우엔 줄이 아니라 요소 자체가 휘어지므로 clip-path나 SVG path의 제어점을 같은 수식으로 움직입니다.
언제 쓰나
당겨서 놓는 동작에 물리적 근거를 주고 싶을 때(당겨서 새로고침, 드래그 슬라이더의 끝단) 씁니다. 장식으로만 쓰면 과한 디테일일 수 있으니 상호작용과 묶어서 씁니다.