首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> 關於.NET

從 DWG 到 XAML (I):DWG 歷史、現狀與發展方向

     編輯:關於.NET

DWG 的時間奇點

AutoCAD 1982 年問世,以免費開放策略迅速普及,使 DWG 成為事實上二維設計標準格式。早期開放也埋下伏筆:後來 AutoCAD 轉為收費、DWG 封閉,官方從未公開完整格式規格。目前僅知:二進位編碼、自關聯壓縮、自我驗證等極少細節。

DWG 歷史

二次開發演進

  • 早期:AutoLISP / ADS。
  • ObjectARX (C++):類庫形式,編譯為 DLL 載入 AutoCAD 擴充功能。
  • 後續支援 C# 等語言,但本質仍為「在 AutoCAD 進程內運行」。

流程:編輯代碼 → C++ 編譯鏈接 → DLL 載入 AutoCAD。工程師需在 AutoCAD 內打開 DWG,再透過二次開發導出資料供外部系統使用。「AutoCAD 在地上畫個圈,逼所有人把資料放進圈子裡。」

反抗者:Open Design Alliance (ODA)

ODA 以逆向工程取得 DWG 格式細節,發布開放類庫:

  • DWGDirect (C++)
  • DWGDirectX (ActiveX)
  • DWGDirect.NET (.NET)

收取少量註冊費維運,承諾緊跟 AutoCAD 版本更新(現支援 2010 版)。根本動搖 Autodesk 基石,2006 年雙方進入訴訟(Autodesk 指控 ODA 盜用 TrustedDWG 商標)。訴訟持續中,雙方皆存活。

ODA

ODA 潛在風險

  • 法律風險:逆向工程取得格式細節,使用者可能面臨侵權訴訟。
  • 不完整:僅完整支援至 2004,部分支援 2007,某些位元組含義至今未破解。

二次開發流程被重寫

ODA 使「AutoCAD 外部讀寫 DWG」成為現實,新流程:

  1. AutoCAD 建立 DWG。
  2. 傳遞 DWG 給外部系統。
  3. 外部系統用 DWGDirect 讀取資料。

國內眾多公司採用,網路上衍生出大量基於 OpenDWG 的類庫。

強者聯姻:Autodesk × Microsoft → DWFx

面對互操作呼聲與 ODA 壓力,AutoCAD 2009 推出 DWFx:

  • 基於 ISO/IEC 29500-2:2008 OPC(Office Open XML 一部分)。
  • 可視為 XPS 相容格式,實為 ZIP 封裝,含圖形、物件定義等。
  • 可用 Office Visio、WPF DocumentViewer 直接開啟檢視。
  • 雖仍無法修改 DWG,但外部系統終能直接顯示工程圖。

DWFx

尾聲

現狀:ObjectARX 為主流;OpenDWG 如火如荼但藏法律隱憂;DWFx 完成讀取大部分需求,寫入路徑仍受制於 Autodesk 意願。DWFx 輕量快速,適合特定需求。下一篇將剖析 DWFx 格式與 .NET 應用,最後釋出 C# 操作 DWFx 類庫。

出處:https://sun.cnblogs.com/

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved