--- status: stable page_id: B08_DesignDetail related_pages: ["[[B08_DesignDetail/B08_CAD_commands]]", "[[B08_DesignDetail/B08_CAD_blocks]]", "[[B08_DesignDetail/B08_CAD_table_entity]]", "[[B08_DesignDetail/B08_CAD_usability_2026-09-01]]"] last_updated: 2026-09-01 source: ["docs/raw/plans/2026-08-30_plan_B08_CAD_blocks_interaction_tables.md", "docs/raw/verification/2026-08-30_verify_B08_CAD_blocks_interaction_tables.md"] --- # B08 CAD 기본 조작 ## 입력·상태 | 기능 | 구현 | |---|---| | 좌표 | 음수 절대·상대좌표, `@거리<각도`·`거리<각도` 극좌표 | | 각도 | 직교 90°와 극좌표 추적 45° 독립 토글 | | 스냅 | 스냅 추적 토글, F3·F7·F8·F10 연결; F11은 브라우저 전체화면 때문에 제외 | | 복구 | 객체 변경 5초 뒤 recovery 저장, 시작 토스트, `RECOVER`, QSAVE 후 제거 | ## 선택·편집 | 항목 | 위치 | 역할 | |---|---|---| | `findEntitiesWithinDistance()` | openwebcad 선택 헬퍼 | 같은 위치 후보 순환 | | `pick-radius.ts` | openwebcad helpers | 확대율과 무관한 화면 픽셀 집기 반경 | | `grips.ts` | openwebcad helpers | 선·사각형·폴리선 그립 생성·엔티티 교체 | | `grip-edit-tool.ts` | openwebcad tools | 끝점·중점 이동, 폴리선 정점 추가·Ctrl 제거 | 좌→우 드래그는 완전히 포함된 객체, 우→좌는 걸친 객체까지 선택한다. 문자 굵게·기울임은 Canvas·SVG·JSON 왕복을 지원한다. 리본 슬라이드아웃은 fixed 레이어로 캔버스 위에 표시하고 바깥 클릭 시 닫는다. ## 검증·제외 - 타입검사·빌드·Vitest 22/22와 브라우저 좌표·선택·복구·그립 조작을 확인했다. - Arc·Hatch·Image·치수 그립, 문자 밑줄, 연관 치수, LISP/CUI 등은 제외했다. - 핀치·트랙패드 팬 방향은 사용자 확인값으로 반영했으며 반복 확대 로그 제거는 남아 있다. 2026-09-01 편집 손실·확정 잠금·도면별 복구·빈 도각 등 추가 편의성 구현과 현재 검증 보류 상태는 [[B08_DesignDetail/B08_CAD_usability_2026-09-01]]에서 관리한다.