跳轉至
文件版本 v2026.10.17.0
下載 PDF

對比兩個板版本(Board Diff)

本輪只核驗了資料庫的 Compare Revisions… 入口;以下比較流程未在 2026-09-11 重新實操。不能把本頁作為目前構建的完整 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、Altium PCB/庫、完整 KiCad Project 目前明確不支援 Board Diff

Before 和 After 是有方向的:

  • Added:只存在於 After。
  • Removed:只存在於 Before。
  • Modified:兩側物件能夠配對,但屬性或幾何不同。
  • Unchanged:兩側相同,只作為上下文顯示。

檔案副檔名相同不等於格式一定相同;PCBAtlas 會分別解析兩側,再決定能否比較。

操作步驟

比較資料庫中的兩個修訂

  1. 在資料庫找到包含至少兩個修訂的文件。
  2. 開啟文件卡片的更多操作選單。
  3. 點擊 Compare Revisions…。
  4. 在 Before 和 After 中選擇兩個不同、同格式的修訂。
  5. 點擊 Compare。

如果目前修訂有父修訂,頁面會優先使用 parent 作為 Before、current 作為 After。你仍可手動更換兩側。

完成後的託管比較會儲存經過校驗的 artifact。下次進入同一文件的比較頁,可以使用 Reopen Saved Comparison 重新開啟。

確認有歧義的圖層配對

如果 PcbCore 找到多個相容候選,比較會暫停在 Layer pairing needs confirmation:

  1. 對每個 Before 圖層檢查名稱、角色、順序和物件數量。
  2. 在右側選擇正確的 After layer。
  3. 確認每一項都有選擇。
  4. 點擊 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 會把檔案交給其他應用。
  • 點擊 PNG 匯出目前 Diff 檢視截圖;iOS 會直接儲存到 Photos,macOS 繼續使用系統檔案交付介面。
  • 託管修訂比較完成後,可從 Reopen Saved Comparison 重開經過校驗的結果。
  • 如果修訂內容、格式、策略或圖層配對已經變化,舊 artifact 會被判定為失效,而不是靜默展示舊結果。

寬殼與窄殼

兩種配置均從資料庫文件的操作選單進入比較;不能在普通 Viewer 中用 Split 代替 Board Diff。普通專案 Split 是 PCB 與原理圖雙畫布,Diff 的 Split 是 Before 與 After。窄視窗中若比較設定或結果面板擁擠,擴大視窗後閱讀;本輪未驗證窄殼 Diff 配置。

驗收清單

  • 只有一個修訂的文件不會啟用 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、Altium PCB/庫、完整 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(原流程記錄);2026-09-11 核驗資料庫入口,未重跑比較。