比較兩個電路板版本(Board Diff)¶
頁面目標¶
協助你從資料庫修訂啟動 Board Diff、理解 Before / After 方向、檢查逐物件變更,並匯出可複查的 JSON 或 PNG。
適用平台¶
- macOS 14 或更新版本:目前 Board Diff 的主要寬螢幕體驗和第一輪驗收平台。
- iOS / iPadOS 17.0 或更新版本:應用程式已提供入口;建議使用橫向或較寬視窗,窄螢幕專門最佳化仍會在後續完善。
適用對象¶
- 需要比較同一 PCB 兩個修訂版本的設計、製造或審閱人員
- 需要依方向、圖層、物件和風險提示驗收 Diff 的測試人員
前置條件¶
選擇一組內容不同、但實際解析格式相同的板:
| 輸入 | 目前狀態 |
|---|---|
| DSN | 支援 |
單板 KiCad .kicad_pcb |
支援 |
| Gerber + Excellon 資料夾或壓縮檔 | 支援 |
| SES | 僅當兩側可驗證並指向同一個基礎設計時支援 |
| ODB++、IPC-2581、完整 KiCad Project | 目前明確不支援 Board Diff |
Before 和 After 具有方向性:
Added:只存在於After。Removed:只存在於Before。Modified:兩側物件可以配對,但屬性或幾何不同。Unchanged:兩側相同,只作為上下文顯示。
副檔名相同不代表格式一定相同;PCBAtlas 會分別解析兩側,再決定是否能比較。
操作步驟¶
比較資料庫中的兩個修訂¶
- 在資料庫找到包含至少兩個修訂的文件。
- 開啟文件卡片的更多操作選單。
- 點選
Compare Revisions…。 - 在
Before和After選擇兩個不同、同格式的修訂。 - 點選
Compare。
目前修訂有父修訂時,頁面會優先使用 parent 作為 Before、current 作為 After。你仍可手動更換兩側。
完成後的受管理比較會儲存經過驗證的 artifact。下次進入同一文件的比較頁,可以使用 Reopen Saved Comparison 重新開啟。
確認有歧義的圖層配對¶
如果 PcbCore 找到多個相容候選,比較會暫停在 Layer pairing needs confirmation:
- 對每個
Before圖層檢查名稱、角色、順序和物件數量。 - 在右側選擇正確的
After layer。 - 確認每一項都有選擇。
- 點選
Confirm and Compare重新執行。
PCBAtlas 不會在歧義時猜測圖層,也不會透過自動平移 / 旋轉強制對齊兩塊板。整板位移或旋轉會保留為真實變更。
等待或取消比較¶
比較會依序顯示輸入驗證、匯入 Before / After、圖層配對、快照、幾何匹配、風險分析、Diff scene 和持久化進度。
點選 Cancel 後,請等待 Cancelling comparison… 完成。只有兩個 native session 和暫存 staging 資料全部釋放後,頁面才允許安全重試。
閱讀比較工作區¶
顯示模式¶
Overlay:在一個精確複合場景中疊加變更;Context控制未變更上下文的強度。Split:左側Before、右側After;預設開啟Sync Camera,關閉後可分別檢查兩側。Blink:使用相同相機在 Before / After 間自動切換,適合發現細微位移。Fit:讓目前場景重新符合可見區域。
圖層和變更¶
- 左側
Layer Pairs顯示配對結果及每對圖層的變更數量。 - 選擇
All layers查看全板,或選擇一個圖層對縮小範圍。 - 右側
Changes可開關Added / Removed / Modified,並依物件類型和 Net 篩選。 - 點選變更列會定位並反白物件;在 Viewer 選取物件也會反查對應變更。
Previous/Next依序瀏覽目前篩選結果;macOS 快捷鍵分別是⌘[和⌘]。Risks面板依風險等級篩選方向性提示。風險提示用於審閱定位,不取代 DRC 或製造簽核。
交換方向、匯出和重新開啟¶
- 點選
Swap會建立反向請求並重新計算;原本的 Added / Removed、統計、風險和詳情會隨方向反轉。 - 點選
JSON匯出穩定、具版本的語意結果;iOS 會把檔案交給其他 App。 - 點選
PNG匯出目前 Diff 視圖截圖;iOS 會直接儲存到 Photos,macOS 則繼續使用系統檔案交付介面。 - 受管理修訂比較完成後,可從
Reopen Saved Comparison重新開啟經驗證的結果。 - 如果修訂內容、格式、策略或圖層配對已改變,舊 artifact 會被判定失效,而不是靜默顯示舊結果。
驗收清單¶
- 只有一個修訂的文件不會啟用
Compare Revisions…。 - 兩個同格式資料庫修訂可以執行,並能從
Reopen Saved Comparison重新開啟。 - 同一輸入、不同格式、不支援格式或 SES base 不一致時,
Compare會被阻止並顯示明確原因。 - 有歧義的圖層必須完成手動配對後才能繼續。
-
Overlay / Split / Blink切換時相機位置保持一致。 - Split 的
Sync Camera開 / 關行為正確,Fit可恢復全板檢視。 - Added / Removed / Modified、物件類型、Net 和風險篩選都能縮小結果。
- 清單點選、Viewer pick、
Previous / Next可以雙向定位同一變更。 -
Swap後方向、顏色、統計、詳情與風險正確反轉。 - 大板比較中途取消後,頁面等待清理完成並可以再次比較。
- JSON 與 PNG 均可匯出,受管理 artifact 在輸入變更後不會被錯誤重用。
目前明確邊界¶
- 只比較同格式輸入,不支援跨格式比較。
- 不支援 ODB++、IPC-2581、完整 KiCad Project、原理圖 Diff 或 3D Diff。
- 不做自動合併、接受變更或反向修改來源檔案。
- 不提供自動 alignment;整體平移和旋轉仍是可見差異。
- 不使用圖片像素、bbox 或檔案文字作為精確幾何 Diff 的備援。
常見問題¶
為什麼 Compare 按鈕不可用?¶
檢查兩側是否都已選擇、內容是否不同、是否解析為相同受支援格式。Gerber / Excellon 應將完整 package 的資料夾或壓縮檔分別交給兩側,不能只選兩個任意單層檔案代表完整板。
為什麼相同副檔名仍提示格式不一致?¶
格式由實際解析結果決定,而不是只看檔名。目錄、壓縮檔、SES 基礎設計和實際 board entry 都會參與驗證。
為什麼取消後不能立即重新比較?¶
頁面會等待 PcbCore 釋放 Before / After 兩個工作階段和暫存資料,防止新任務與舊任務同時占用資源。Cancelling comparison… 消失後再重試。
為什麼 Swap 後變更數量或風險也改變?¶
Added / Removed 和風險提示具有方向性。Swap 不是交換顯示標籤,而是用反向 Before / After 重新計算。
結果¶
完成比較後,你可以在同一工作區定位兩側精確變更、核對方向性風險並匯出 JSON / PNG;資料庫修訂比較還可儲存、驗證後重新開啟。
最近驗證日期¶
2026-07-30