DraftingView 表格縮放(寬度 / 行高)
支援 X 軸(寬度)和 Y 軸(行高)獨立縮放。
Available Tools
| 工具 | 用途 |
|---|---|
scale_drafting_view_width |
縮放寬度(僅 X 軸),以左邊緣為錨點 |
scale_drafting_view_height |
縮放行高(僅 Y 軸),以上邊緣為錨點 |
Workflow
Step 1:確認目標圖紙
確認使用者要縮放的圖紙。若未指定,工具預設使用當前作用圖紙。
Step 2:執行縮放
寬度縮放(X 軸):
scale_drafting_view_width({
scaleFactor: 0.9, // 0.9 = 縮小到 90%,1.1 = 放大到 110%
sheetId: 目標圖紙ID, // 選填,不指定則用當前圖紙
viewNames: ["view1"] // 選填,不指定則處理圖紙上所有 DraftingView
})
行高縮放(Y 軸):
scale_drafting_view_height({
scaleFactor: 1.08, // 1.08 = 放大到 108%,0.9 = 縮小到 90%
sheetId: 目標圖紙ID, // 選填,不指定則用當前圖紙
viewNames: ["view1"] // 選填,不指定則處理圖紙上所有 DraftingView
})
兩者可獨立使用,也可組合使用(先寬度再行高,或反過來)。
Step 3:重新排列視埠
縮放後視埠尺寸改變,間距可能不對。提醒使用者是否需要重新排列:
arrange_viewports_on_sheet({
viewNames: [...],
direction: "horizontal",
gapMm: -5,
alignY: "top"
})
Parameters
scale_drafting_view_width / scale_drafting_view_height
兩個工具的參數完全相同:
| 參數 | 說明 | 預設 |
|---|---|---|
scaleFactor |
縮放比例(0.9=縮小到90%,1.1=放大到110%) | width: 0.9 / height: 1.1 |
viewNames |
只處理指定名稱的 DraftingView(選填) | 圖紙上所有 DraftingView |
sheetId |
圖紙 Element ID(選填) | 當前作用圖紙 |
縮放機制
寬度(X 軸)
- 錨點:每個 view 的左邊緣(最小 X 座標)
- 同步縮放:DetailCurve 和 TextNote 的 X 座標
- TextNote wrapping 寬度也會等比縮放(
tn.Width *= scaleFactor)
行高(Y 軸)
- 錨點:每個 view 的上邊緣(最大 Y 座標)
- 同步縮放:DetailCurve 和 TextNote 的 Y 座標
- TextNote 寬度不變(僅移動 Y 位置)
兩者皆採逐 View 獨立 Transaction,大量 view(20+)不會卡死 Revit。
Notes
- 大量 view(20+)總耗時約 2 分鐘,MCP client 端可能 timeout,但 Revit 全程保持回應
- Timeout 不代表失敗,確認方式:
tail "$APPDATA/RevitMCP/Logs/RevitMCP_YYYYMMDD.log",看到[ScaleWidth] 完成或[ScaleHeight] 完成即成功 - 可用 Ctrl+Z 逐 view 復原
- 縮放後通常需要搭配
arrange_viewports_on_sheet重新排列視埠