Thiết kế có sự hỗ trợ của máy tính - Các tệp CAD thường được sử dụng cho các thiết kế 2D và 3D. Những thiết kế này được tạo bởi các chương trình phần mềm CAD và thường được sử dụng để tạo các mô hình và sơ đồ kiến trúc. Nếu bạn đã làm việc với CAD, rất có thể bạn đã quen thuộc với một số định dạng tệp của AutoCAD, chẳng hạn như DWG, DXF, DGN, DWF. Bài viết này sẽ thảo luận về cách lập trình xem các tệp CAD trong các ứng dụng Java.

Các chủ đề sau đây được trình bày ngắn gọn dưới đây:

API Java để kết xuất các tệp CAD - DWG, DXF, DWF, DGN

GroupDocs.Viewer for Java là API cho phép hiển thị các tài liệu và tệp hình ảnh khác nhau thành định dạng HTML, Hình ảnh hoặc PDF để xem các tệp này trong ứng dụng Java của bạn. API hỗ trợ hơn 100 định dạng tệp để hiển thị theo chương trình dưới dạng HTML, JPG, PNG hoặc PDF.

Trong bài viết này, chúng tôi sẽ tập trung vào các tệp CAD. Ngoài các định dạng DWG và DGN đã được đề cập, bạn có thể xem thêm các định dạng AutoCAD như DWF, DWT, DXF, cũng như các tệp tài liệu IFC, STL, IGS, CF2, Plotter (PLT, HPG) trong các ứng dụng java của bạn.

Tải xuống và định cấu hình

Tải thư viện từ các bản tải xuống hoặc chỉ cần thêm cấu hình pom.xml sau vào các ứng dụng Java dựa trên Maven của bạn để thử các ví dụ được đề cập bên dưới. Để biết chi tiết, bạn có thể truy cập Tham khảo 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>

Chuyển đổi bản vẽ CAD sang kết xuất dưới dạng HTML, PNG, JPG hoặc PDF trong Java

API cho phép kết xuất các tài liệu CAD sang các định dạng HTML, JPG, PNG và PDF. Trong bài viết này, tôi sử dụng định dạng DWG để chuyển đổi và hiển thị sang các định dạng khác bằng cách sử dụng các ví dụ. Để bắt đầu, hãy chuyển đổi thiết kế DWG và hiển thị nó dưới dạng HTML với các tùy chọn tài nguyên được nhúng cũng như bên ngoài.

Chuyển đổi DWG sang HTML bằng Tài nguyên nhúng

Sau đây là các bước về cách chuyển đổi tệp DWG để hiển thị dưới dạng HTML.

Mã nguồn sau đây chuyển đổi tệp DWG và hiển thị dưới dạng HTML với các tài nguyên được nhúng trong Java.

// Kết xuất bản vẽ CAD .dwg để xem dưới dạng HTML với các tài nguyên được nhúng bằng Java
try (Viewer viewer = new Viewer("drawing.dwg")) {
	HtmlViewOptions viewOptions = HtmlViewOptions.forEmbeddedResources("page_{0}.html");
	viewer.view(viewOptions);
}

Chuyển đổi DWG sang HTML bằng Tài nguyên bên ngoài

Sau đây là các bước về cách chuyển đổi tệp DWG để hiển thị dưới dạng (các) tệp HTML và với các tài nguyên bên ngoài.

Mã nguồn sau đây hiển thị tệp DWG dưới dạng HTML với các tài nguyên bên ngoài bằng Java.

// Kết xuất bản vẽ CAD .dwg để xem dưới dạng HTML với các tài nguyên bên ngoài bằng Java
try (Viewer viewer = new Viewer("drawing.dwg")) {
	HtmlViewOptions viewOptions = HtmlViewOptions.forExternalResources("page_{0}.html", "page_{0}/resource_{1}", "page_{0}/resources");
	viewer.view(viewOptions);
}

Chuyển đổi DWG sang PDF, JPG và PNG trong Java

Tương tự như việc chuyển đổi sang định dạng HTML, các tệp DWG có thể được hiển thị dưới dạng định dạng PDF, JPG và PNG bằng ViewOptions tương ứng như sau:

Nhận bố cục và lớp của DWG trong Java

Vì các tệp CAD có thể bao gồm nhiều bố cục và lớp, bạn có thể dễ dàng lấy bố cục và lớp của chúng bằng các bước sau.

  • Khởi tạo đối tượng ViewInfoOptions để hiển thị HTML.
  • Sử dụng ViewInfoOptions, bạn có thể lấy CadViewInfo.
  • Lấy bố cục từ viewInfo bằng phương thức getLayouts.
  • Lấy các lớp từ viewInfo bằng phương thức getLayers.

Đoạn mã sau cho biết cách lấy tất cả các bố cục và lớp của tệp DWG bằng Java.

// Nhận Bố cục và Lớp của bản vẽ CAD DWG trong Java
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);
	}
}

Kết xuất các lớp CAD của tệp DWG trong Java

Theo mặc định, tất cả các lớp của bản vẽ CAD được hiển thị như hình trên. Tuy nhiên, bạn có thể kết xuất bất kỳ lớp DWG cụ thể nào bằng cách chọn lớp đã chọn bằng phương thức setLayers của API Java như minh họa bên dưới.

  • Khởi tạo đối tượng lớp Viewer bằng tệp .dwg nguồn.
  • Khởi tạo HtmlViewOptions.
  • Thêm (các) lớp để kết xuất bằng phương thức setLayers của CadOptions.
  • Kết xuất .dwg thành HTML bằng phương thức view.

Đoạn mã sau hiển thị các lớp của tệp CAD có định dạng DWG trong Java.

// Kết xuất các lớp của bản vẽ CAD .dwg trong Java
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);
}

Kết xuất bố cục CAD của tệp DWG trong Java

Khi kết xuất bản vẽ CAD, mặc định chúng ta chỉ nhận được phần trình bày mô hình. Để kết xuất mô hình cũng như tất cả các bố cục không trống, chúng ta chỉ cần đặt thuộc tính RenderLayout của CadOptions là true.

  • Khởi tạo đối tượng lớp Viewer bằng tệp .dwg nguồn.
  • Khởi tạo HtmlViewOptions.
  • Đặt thuộc tính RenderLayout của CadOptions thành true.
  • Kết xuất .dwg dưới dạng HTML bằng phương thức view.

Đoạn mã sau hiển thị tất cả các bố cục không trống cùng với mô hình của bản vẽ CAD có định dạng DWG trong Java.

// Kết xuất bố cục của bản vẽ CAD .dwg trong Java
try (Viewer viewer = new Viewer("drawing.dwg")) {
	HtmlViewOptions viewOptions = HtmlViewOptions.forEmbeddedResources();
	viewOptions.getCadOptions().setRenderLayouts(true);
	viewer.view(viewOptions);
}

Nhận giấy phép API miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để sử dụng API mà không bị giới hạn đánh giá.

Sự kết luận

Trong bài viết này, bạn đã học cách xem các tệp CAD trong các ứng dụng Java. Tôi hy vọng bạn sẽ tự tin xây dựng Trình xem CAD của riêng mình bằng Java. Bạn có thể hiển thị thêm các mô hình, bố cục và các lớp tệp CAD trong ứng dụng. Bạn có thể tìm hiểu thêm về GroupDocs.Viewer for Java bằng cách sử dụng tài liệu. Trong trường hợp bạn có bất kỳ thắc mắc nào, vui lòng cho chúng tôi biết qua diễn đàn của chúng tôi.

Xem thêm