Commit Graph
5 Commits
Author SHA1 Message Date
eomsangdonandClaude Opus 5 a1a5081f28 fix(B05): 종단 그래프를 끌 때 글자가 선택되던 것 막음
포인터 잡기를 끌기 시작 뒤로 미룬 뒤(측점 선택 복구), 그 전까지 브라우저 기본
글자 선택이 살아나 끌 때마다 라벨·수치가 파랗게 잡혔다.

끌기가 실제로 시작되는 순간 `user-select: none` 을 걸고 이미 잡힌 선택을 푼다.
끝나면 원래대로 되돌린다.

검증(공용 브라우저, 실제 마우스): 끄는 동안 선택된 글자 0자, 끝난 뒤 속성 원복,
측점 클릭 선택은 그대로 동작(60m).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-06 16:43:01 +09:00
eomsangdonandClaude Opus 5 7b0aced287 fix(B05): 종단 그래프에서 측점을 골라도 선택이 풀리던 것 수정
끌어서 이동이 pointerdown 즉시 `setPointerCapture` 를 걸어, 뒤따르는 click 의
대상이 측점 `<g>` 가 아니라 스크롤러가 됐다. 그래서 측점 클릭이 배경 클릭으로
처리돼 선택이 그 자리에서 풀렸다(사용자 보고: 측점을 골라도 하이라이트가 안 됨).

- 포인터 잡기를 **끌기 문턱을 넘긴 뒤로** 미룸. 단순 클릭은 캡처가 없어 측점에
  그대로 닿고, 실제로 끌기 시작한 뒤에는 잡아 두어 창 밖에서 손을 떼도 이어진다.
- 문턱 4px → 6px. 손 떨림에 쉽게 넘어가 측점을 고르기 어려웠다.

검증(공용 브라우저, 실제 마우스 입력): 측점 클릭 → 선택·하이라이트 정상(420m),
끌기 → 선택 유지하며 팬 이동(scrollLeft 1660 → 1780).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-06 16:37:38 +09:00
eomsangdonandClaude Opus 5 3def4f18f0 feat(B05): 종단 그래프·유토곡선·측점 테이블 끌어서 이동
2026-09-06 사용자 지시. 좌클릭·휠 버튼으로 그림 위에서 바로 잡아 끈다.
공용 스크롤러 한 곳에 넣어 세 곳이 함께 얻음. 4px 문턱을 넘긴 뒤에만 이동으로
보고 그 경우에만 뒤따르는 click 을 한 번 삼켜, 측점 선택·선택 해제는 그대로 둠.
계획고 편집 버튼·리사이저 위에서 시작한 끌기는 제외(구조물 마크는 자기
pointerdown 에서 전파를 끊어 이미 제외됨). 끌기 시작 시 휠 관성 이동은 중단.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-06 11:31:11 +09:00
eomsangdonandClaude Opus 5 db3503fd95 fix(B05): 휠 이동 감속을 프레임 수가 아닌 흐른 시간 기준으로
프레임당 고정 비율(0.35)로 좁히면 주사율에 따라 속도가 달라짐 — 120Hz 화면에서는 두 배
빨라 툭 끊겨 보이고, 프레임을 한 번 놓치면 그만큼 덜컥 뜀. 흐른 시간으로 환산해
어느 화면에서나 같은 시간에 도착하게 함. 탭이 잠들었다 깬 큰 간격은 64ms로 자름.

자체검증(공용 브라우저 임시 탭, 휠 20칸): 프레임 중앙값 16.6ms(60fps) 유지,
최대 프레임 47.6 → 34.3ms, 20ms 초과 프레임 3 → 2건.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-04 21:31:16 +09:00
eomsangdonandClaude Opus 5 c2f681f9d3 fix(B05): 종단·유토곡선 휠 이동 부드럽게 + 재계산 표시 오버레이화
- 세 곳(종단 그래프·유토곡선·측점 테이블)에 복사돼 있던 휠 처리를
  `B05_Profile_UI_Profile_Wheel.ts` 한 벌로 통합.
- 이동은 rAF 로 목표를 쌓아 프레임마다 좁힘 — `scrollLeft` 직접 대입의 120px 점프 제거.
  브라우저 `scrollTo({behavior:"smooth"})` 는 휠마다 애니메이션이 처음부터 다시 시작돼
  1.6초에 17px 만 움직여 쓰지 않음(실측).
- 세로 자동 맞춤 디바운스 160 → 80ms.
- 「다시 계산 중…」 을 요약 막대에서 떼어 곡선 영역 우측 상단 오버레이로 이동 —
  막대 줄바꿈으로 곡선이 밀리던 창밀림 제거.

자체검증(공용 브라우저 5173, 임시 탭): 휠 10칸 1,200px 중 1,199px 이동·궤적 연속,
마지막 휠 500ms → 재구성 813ms. 칩 표시/숨김에서 요약 막대 높이 53px·곡선 자리
(top 1078·height 226) 동일 — 창밀림 0. 칩은 곡선 영역 안 우측(범례 아래 4px).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-04 21:07:55 +09:00