Files
Aislo/B07_DesignDetail/openwebcad/src/tools.ts
T
eomsangdonandClaude Opus 5.5 c426fa2ad6 feat(B07 CAD): 표 놓기 도구 · 표 메시지 place-table · update-table (41-2)
- 새 tools/annotate/place-table-tool.ts — PLACETABLE: 부모가 보낸 표를 커서에 붙여 미리보기 · 누르면 그 자리(왼쪽 위) · Esc 그만 · 놓기 = 되돌리기 한 걸음
- 새 integration/aislo-table-bridge.ts — place-table{entity, link} = style.연결 단 표로 놓기 시작 · update-table{link, cells} = 연결 같은 표 칸만 갈기(자리 · 크기 그대로) → table-updated{link, count} · 확정 · 보기 전용이면 안 함
- TableEntity style.연결 · replaceCells · bridge 갈래 한 줄 · 명령 PLACETABLE
- 시험 aislo-table-bridge.test.ts(놓기 · 연결 남음 · 칸 갈기 · 넘침 · 없는 연결)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UoSr2sqvYtBf1dtQdus88s
2026-10-04 22:43:40 +09:00

129 lines
3.1 KiB
TypeScript

export enum Tool {
SELECT = 'SELECT',
LINE = 'LINE',
RECTANGLE = 'RECTANGLE',
CIRCLE = 'CIRCLE',
MOVE = 'MOVE',
COPY = 'COPY',
SCALE = 'SCALE',
ERASER = 'ERASER',
IMAGE_IMPORT = 'IMAGE_IMPORT',
INSERT_BLOCK = 'INSERT_BLOCK',
GRIP_EDIT = 'GRIP_EDIT',
ROTATE = 'ROTATE',
ALIGN_LEFT = 'ALIGN_LEFT',
ALIGN_RIGHT = 'ALIGN_RIGHT',
ALIGN_CENTER_HORIZONTAL = 'ALIGN_CENTER_HORIZONTAL',
ALIGN_TOP = 'ALIGN_TOP',
ALIGN_BOTTOM = 'ALIGN_BOTTOM',
ALIGN_CENTER_VERTICAL = 'ALIGN_CENTER_VERTICAL',
ARRAY = 'ARRAY',
PEDIT = 'PEDIT',
// 조사표 1절 — 그리기
PLINE = 'PLINE',
ARC = 'ARC',
POLYGON = 'POLYGON',
ELLIPSE = 'ELLIPSE',
SPLINE = 'SPLINE',
MLINE = 'MLINE',
MLSTYLE = 'MLSTYLE',
XLINE = 'XLINE',
RAY = 'RAY',
POINT = 'POINT',
DONUT = 'DONUT',
DIVIDE = 'DIVIDE',
MEASURE_LENGTH = 'MEASURE_LENGTH',
HATCH = 'HATCH',
GRADIENT = 'GRADIENT',
BOUNDARY = 'BOUNDARY',
REGION = 'REGION',
WIPEOUT = 'WIPEOUT',
// 조사표 2절 — 수정
MIRROR = 'MIRROR',
ALIGN = 'ALIGN',
OFFSET = 'OFFSET',
STRETCH = 'STRETCH',
LENGTHEN = 'LENGTHEN',
FILLET = 'FILLET',
CHAMFER = 'CHAMFER',
BLEND = 'BLEND',
BREAK = 'BREAK',
BREAK_AT_POINT = 'BREAK_AT_POINT',
EXTEND = 'EXTEND',
JOIN = 'JOIN',
EXPLODE = 'EXPLODE',
ERASE = 'ERASE',
MATCHPROP = 'MATCHPROP',
DRAWORDER_FRONT = 'DRAWORDER_FRONT',
DRAWORDER_BACK = 'DRAWORDER_BACK',
SETBYLAYER = 'SETBYLAYER',
REVERSE = 'REVERSE',
OVERKILL = 'OVERKILL',
HATCHEDIT = 'HATCHEDIT',
// 조사표 3절 — 도면층·특성·그룹·유틸리티
LAYER_CURRENT = 'LAYER_CURRENT',
LAYOFF = 'LAYOFF',
LAYFRZ = 'LAYFRZ',
LAYLCK = 'LAYLCK',
LAYULK = 'LAYULK',
LAYISO = 'LAYISO',
LAYERSTATE = 'LAYERSTATE',
LAYERSTATE_RESTORE = 'LAYERSTATE_RESTORE',
LAYMCH = 'LAYMCH',
LAYCUR = 'LAYCUR',
LAYMRG = 'LAYMRG',
LAYDEL = 'LAYDEL',
TRANSPARENCY = 'TRANSPARENCY',
GROUP = 'GROUP',
UNGROUP = 'UNGROUP',
DIST = 'DIST',
RADIUS_INQUIRY = 'RADIUS_INQUIRY',
ANGLE_INQUIRY = 'ANGLE_INQUIRY',
AREA = 'AREA',
ID_POINT = 'ID_POINT',
QUICKCALC = 'QUICKCALC',
MEASUREGEOM = 'MEASUREGEOM',
QSELECT = 'QSELECT',
SELECTSIMILAR = 'SELECTSIMILAR',
ISOLATEOBJECTS = 'ISOLATEOBJECTS',
HIDEOBJECTS = 'HIDEOBJECTS',
COPYBASE = 'COPYBASE',
PASTECLIP = 'PASTECLIP',
// 조사표 5절 — 주석
TEXT = 'TEXT',
MTEXT = 'MTEXT',
TEXTEDIT = 'TEXTEDIT',
FIND = 'FIND',
DIM = 'DIM',
DIMLINEAR = 'DIMLINEAR',
DIMALIGNED = 'DIMALIGNED',
DIMBASELINE = 'DIMBASELINE',
DIMCONTINUE = 'DIMCONTINUE',
QDIM = 'QDIM',
DIMRADIUS = 'DIMRADIUS',
DIMDIAMETER = 'DIMDIAMETER',
DIMANGULAR = 'DIMANGULAR',
DIMARC = 'DIMARC',
DIMORDINATE = 'DIMORDINATE',
CENTERMARK = 'CENTERMARK',
CENTERLINE = 'CENTERLINE',
DIMSPACE = 'DIMSPACE',
DIMSTYLE = 'DIMSTYLE',
MLEADER = 'MLEADER',
MLEADERSTYLE = 'MLEADERSTYLE',
MLEADERALIGN = 'MLEADERALIGN',
TABLE = 'TABLE',
PLACETABLE = 'PLACETABLE',
TABLESTYLE = 'TABLESTYLE',
TABLEEDIT = 'TABLEEDIT',
TABLEROW = 'TABLEROW',
TABLECOL = 'TABLECOL',
TABLEMERGE = 'TABLEMERGE',
TABLEUNMERGE = 'TABLEUNMERGE',
REVCLOUD = 'REVCLOUD',
ANNOSCALE = 'ANNOSCALE',
COLOR = 'COLOR',
LINETYPE = 'LINETYPE',
LWEIGHT = 'LWEIGHT',
}