計算機輔助設計 - CAD 文件通常用於 2D 和 3D 設計。這些設計由 CAD 軟件程序生成,通常用於創建模型和建築計劃。如果您使用過 CAD,您很可能熟悉 AutoCAD 的某些文件格式,例如 DWG、DXF、DGN、DWF。本文將討論如何在 Java 應用程序中以編程方式查看 CAD 文件。

下面簡要介紹以下主題:

用於渲染 CAD 文件的 Java API - DWG、DXF、DWF、DGN

GroupDocs.Viewer for Java 是允許將各種文檔和圖像文件呈現為 HTML、圖像或 PDF 格式以在 Java 應用程序中查看這些文件的 API。 API 支持超過 100 種文件格式以編程方式呈現為 HTML、JPG、PNG 或 PDF

在本文中,我們將堅持使用 CAD 文件。除了已經提到的 DWG 和 DGN 格式之外,您還可以在 Java 應用程序中進一步查看 AutoCAD 格式,例如 DWF、DWT、DXF,以及 IFC、STL、IGS、CF2、繪圖儀文檔(PLT、HPG)文件。

下載和配置

獲取庫 從下載或僅在基於 Maven 的 Java 應用程序中添加以下 pom.xml 配置以嘗試下面提到的示例。有關詳細信息,您可以訪問API 參考

<repository>
	<id>GroupDocsArtifactRepository</id>
	<name>GroupDocs Artifact Repository</name>
	<url>https://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-viewer</artifactId>
        <version>21.2</version> 
</dependency>

將 CAD 工程圖轉換為在 Java 中呈現為 HTML、PNG、JPG 或 PDF

API 允許將 CAD 文檔呈現為 HTML、JPG、PNG 和 PDF 格式。在本文中,我使用示例堅持使用 DWG 格式轉換和渲染為其他格式。首先,讓我們轉換 DWG 設計並將其呈現為具有嵌入式和外部資源選項的 HTML。

使用嵌入式資源將 DWG 轉換為 HTML

以下是如何將 DWG 文件轉換為 HTML 的步驟。

以下源代碼轉換 DWG 文件並將其呈現為 HTML,並在 Java 中嵌入了資源。

// 使用 Java 渲染 .dwg CAD 繪圖以查看為具有嵌入式資源的 HTML
try (Viewer viewer = new Viewer("drawing.dwg")) {
	HtmlViewOptions viewOptions = HtmlViewOptions.forEmbeddedResources("page_{0}.html");
	viewer.view(viewOptions);
}

使用外部資源將 DWG 轉換為 HTML

以下是如何將 DWG 文件轉換為 HTML 文件並使用外部資源進行渲染的步驟。

以下源代碼將 DWG 文件呈現為 HTML,並使用 Java 中的外部資源。

// 使用 Java 渲染 .dwg CAD 繪圖以使用外部資源查看為 HTML
try (Viewer viewer = new Viewer("drawing.dwg")) {
	HtmlViewOptions viewOptions = HtmlViewOptions.forExternalResources("page_{0}.html", "page_{0}/resource_{1}", "page_{0}/resources");
	viewer.view(viewOptions);
}

在 Java 中將 DWG 轉換為 PDF、JPG 和 PNG

類似於轉換為 HTML 格式,DWG 文件可以使用相應的 ViewOptions 呈現為 PDF、JPG 和 PNG 格式,如下所示:

在 Java 中獲取 DWG 的佈局和圖層

由於 CAD 文件可能包含多個佈局和圖層,您可以使用以下步驟輕鬆獲取它們的佈局和圖層。

以下代碼顯示瞭如何使用 Java 獲取 DWG 文件的所有佈局和圖層。

// 在 Java 中獲取 DWG CAD 繪圖的佈局和圖層
try (Viewer viewer = new Viewer("drawing.dwg")) {
	ViewInfoOptions viewInfoOptions = ViewInfoOptions.forHtmlView();
	CadViewInfo viewInfo = (CadViewInfo) viewer.getViewInfo(viewInfoOptions);
    
	System.out.println("File type: " + viewInfo.getFileType());
	System.out.println("Pages count: " + viewInfo.getPages().size());
    
	for (Layout layout : viewInfo.getLayouts()) {
		System.out.println(layout);
	}
	for (Layer layer : viewInfo.getLayers()) {
		System.out.println(layer);
	}
}

用 Java 渲染 DWG 文件的 CAD 圖層

默認情況下,CAD 繪圖的所有層都如上所示進行渲染。但是,您可以通過使用 Java API 的 setLayers 方法選擇所選圖層來渲染 DWG 的任何特定圖層,如下所示。

  • 使用源 .dwg 文件初始化 Viewer 類對象。
  • 實例化 HtmlViewOptions
  • 使用 CadOptions 的 setLayers 方法添加要渲染的圖層。
  • 使用 view 方法將 .dwg 渲染為 HTML。

以下代碼在 Java 中渲染 DWG 格式的 CAD 文件的圖層。

// 在 Java 中渲染 .dwg CAD 繪圖層
try (Viewer viewer = new Viewer("drawing.dwg")) {
	HtmlViewOptions viewOptions = HtmlViewOptions.forEmbeddedResources();
	viewOptions.getCadOptions().setLayers(Arrays.asList(new Layer("Stairs"), new Layer("Walls")));
	viewer.view(viewOptions);
}

用 Java 渲染 DWG 文件的 CAD 佈局

當我們渲染 CAD 圖紙時,默認情況下我們只會得到模型展示。要渲染模型以及所有非空佈局,我們只需將 CadOptions 的 RenderLayout 屬性設置為 true。

以下代碼在 Java 中呈現所有非空佈局以及 CAD 繪圖的 DWG 格式模型。

// 在 Java 中渲染 .dwg CAD 繪圖的佈局
try (Viewer viewer = new Viewer("drawing.dwg")) {
	HtmlViewOptions viewOptions = HtmlViewOptions.forEmbeddedResources();
	viewOptions.getCadOptions().setRenderLayouts(true);
	viewer.view(viewOptions);
}

獲取免費的 API 許可證

您可以獲得免費的臨時許可證,以便不受評估限制地使用 API。

結論

在本文中,您學習瞭如何在 Java 應用程序中查看 CAD 文件。我希望您有信心使用 Java 構建自己的 CAD 查看器。您可以在應用程序中進一步顯示 CAD 文件的模型、佈局和圖層。您可以使用 文檔 了解有關 GroupDocs.Viewer for Java 的更多信息。如果您有任何疑問,請隨時通過我們的 論壇 告訴我們。

也可以看看