네비드라이버.한선 — 크라우니OS 3D 월드 네비 정본 완성
개요
크라우니OS 3D 월드 데스크톱(world.js)의 순수 네비 로직을 한선씨 정본으로 구현.
DOM/CSS/렌더링 무관, 데이터 로직만. TOAU 기계어로 컴파일·검증 완료.
산출 파일
- 정본:
/Users/ef/CrownyOS/crownyc/libs/네비드라이버.한선
- 미러:
/Users/ef/CrownyOS/시작화면/world.js (브라우저 드라이버)
- 의존:
지구셀.한선 (트릿 지오해시)
구현 함수 (9개)
자식주소(path, n) — path + 셀문자(n)
자식트릿(n) — [tx,ty,tz] 뺄셈루프 floor (자연반올림 회피)
자식위치(n, gap) — [X,Y,Z] CSS-3D 배치 (Y=-ty*gap 보정)
홈인가(path, homePath) — 1/0
셀종류(path, n, homePath, 앱수) — "app"/"place"
현재위치인가(자식주소값, userAddr) — prefix 검사
상위로(path) — 셀상승 래퍼
진입(path, n) — 자식주소 래퍼
빵부스러기(path, userAddr) — {addr,depth,lat,lon,size,mine} 맵
TOAU 검증 결과 (완전 PASS)
- 컴파일: 6210 큐브, 오류 없음
- 자식트릿 0..26 전수 — JS와 1:1 일치
- 자식위치 n=0/13/26 — [-300,300,-300] / [0,0,0] / [300,-300,300] 일치
- 홈인가/셀종류/현재위치인가 — 모두 정확
- 빵부스러기: 서울 lat=37566428, lon=126977934 (±75m 내)
- 셀변길이(12) = 75m (JS와 동일)
비고: 인코딩 주소 미세 차이
한선씨 정수 VM이 int나눗셈(자연반올림)을 쓰고 JS는 float이므로
깊이 9+ 이후 경계값이 1 단위 차이날 수 있음.
그러나 셀 중심 decode 결과는 동일(37566428, 126977934).
논리 함수(자식트릿/위치/종류 등)는 100% 1:1 일치.
잔여 이슈
- world.js에
가져오기 "네비드라이버.한선" 주석 링크 추가 권장
- TOAU 실행 시 서버사이드 네비 계산 가능 (브라우저 불요)