name: auto-dimension description: "自動標註尺寸:使用 Ray-Casting 或 BoundingBox 方法,在平面視圖中自動建立房間、走廊、MEP 設備的尺寸標註。觸發條件:使用者提到標註、尺寸、dimension、annotation、淨寬、淨高、measurement、自動標註、批次標註。工具:create_dimension_by_ray、create_dimension_by_bounding_box、get_room_info。"
自動標註尺寸
Lessons Reference
- L-002:標註必須匹配正確的視圖 ID,嚴禁在 3D 視圖建立平面標註。位置線用 BoundingBox 中心
(max+min)/2。詳見domain/lessons.md。
Method Selection
| 場景 | 方法 | 工具 |
|---|---|---|
| 一般矩形房間 | Ray-Casting | create_dimension_by_ray |
| L 形或不規則房間 | BoundingBox | create_dimension_by_bounding_box |
| MEP 設備淨空檢查 | Ray-Casting | create_dimension_by_ray |
Ray-Casting Workflow
- 取得房間中心:
get_room_info→ 提取Location座標 - 沿 X+/X- 方向發射射線 → 偵測牆面 → 建立 X 軸標註
- 沿 Y+/Y- 方向發射射線 → 偵測牆面 → 建立 Y 軸標註
關鍵參數
viewId:目標平面視圖(必須是平面視圖,嚴禁 3D 視圖)origin:房間中心點(從get_room_info取得)direction/counterDirection:射線向量
BoundingBox Workflow (Fallback)
- 透過
create_dimension_by_bounding_box取得房間包圍框 - 指定軸向(
X或Y)和偏移量(預設 500mm) - 系統在最小/最大邊界建立 DetailCurves 並標註
Key Rules
- 嚴禁在 3D 視圖中建立 2D 標註 — 必須先確認
ActiveView類型 - 標註線位置 =
(BoundingBox.Max + BoundingBox.Min) / 2中心軌跡 - 如果柱子擋住射線,標註到柱子(這對 MEP 淨空檢查是正確的)
- 支援批次套用至整個樓層
Reference
詳見 domain/auto-dimension-workflow.md。