ไลบรารี .NET ฟรีสำหรับการอ่านและการเขียน AutoCAD DXF และ DWG
ไลบรารี CAD โอเพ่นซอร์ส .NET ที่ช่วยให้โปรแกรมเมอร์สามารถเปิด อ่าน แก้ไข เขียน และแปลงรูปวาด DXF และ DWG ของ AutoCAD ได้อย่างง่ายดาย
ACadSharp คืออะไร
ACadSharp คือไลบรารีโอเพนซอร์ส C# .NET ที่ยอดเยี่ยม ช่วยให้นักพัฒนาซอฟต์แวร์สามารถทำงานกับแบบร่าง AutoCAD DXF และ DWG ในแอปพลิเคชัน C# ของพวกเขาได้ ไลบรารีนี้มาพร้อมกับฟีเจอร์สำคัญๆ เช่น การเพิ่มองค์ประกอบใหม่ลงในแบบร่าง CAD การลบองค์ประกอบที่ไม่ต้องการ การเข้าถึงเอนทิตีทั้งหมดในแบบจำลอง การสร้างสำเนาขององค์ประกอบเฉพาะ การสร้างส่วนโค้งจากส่วนนูน การปรับแต่ง MText และการสร้างเอนทิตีต่างๆ ด้วย ACadSharp คุณมีเครื่องมือที่ช่วยเพิ่มประสิทธิภาพแอปพลิเคชัน C# ของคุณด้วยความสามารถในการจัดการไฟล์ของ AutoCAD
ไฟล์ DXF และ DWG ถูกใช้อย่างแพร่หลายในอุตสาหกรรม CAD เนื่องจากเป็นไฟล์ภาพเวกเตอร์ ทั้งสองไฟล์มีคุณภาพสูงใกล้เคียงกันและมักใช้เพื่อแบ่งปันข้อมูลระหว่างโปรแกรม CAD และโปรแกรมวาดภาพต่างๆ DXF เป็นมาตรฐานที่ได้รับการสนับสนุนโดย Autodesk, Inc. ในขณะที่ DWG เป็นรูปแบบปิดที่มีเฉพาะในผลิตภัณฑ์ของ Autodesk เท่านั้น ไลบรารี ACadSharp ใช้งานง่ายและมีฟังก์ชันสำหรับการจัดรูปแบบและจัดแนวข้อความ เช่น การจัดแนวข้อความ (ขวา, ซ้าย, กลาง, จัดชิดขอบ), การจัดแนวข้อความแนวตั้ง (บน, กลาง, ล่าง), การเยื้องแท็บ และอื่นๆ ไลบรารี ACadSharp ใช้งานได้ภายใต้ใบอนุญาต MIT
การเริ่มต้นใช้งาน ACadSharp
วิธีที่แนะนำในการติดตั้ง ACadSharp คือการใช้ NuGet โปรดใช้คำสั่งต่อไปนี้เพื่อการติดตั้งที่ราบรื่น
ติดตั้ง ACadSharp ผ่าน NuGet
NuGet\Install-Package ACadSharp -Version 1.4.0-alpha
คุณสามารถติดตั้งด้วยตนเองได้ ดาวน์โหลดไฟล์รุ่นล่าสุดโดยตรงจากที่เก็บ GitHub
สร้างไฟล์ AutoCAD DXF/DWG ผ่านไลบรารี .NET
ไลบรารี ACadSharp ให้การสนับสนุนอย่างครบถ้วนสำหรับการสร้างและแก้ไขไดอะแกรม CAD DXF และ DWG ภายในแอปพลิเคชัน Python ช่วยให้นักพัฒนาซอฟต์แวร์สามารถสร้างไดอะแกรม DXF และ DWG ที่เรียบง่ายและถูกต้องด้วยเอนทิตีแบบง่ายได้ ขณะนี้กำลังพัฒนาไดอะแกรมที่ซับซ้อนและจะนำไปใช้งานในเร็วๆ นี้ นักพัฒนาสามารถเขียนไฟล์ ASCII และไฟล์ DXF แบบไบนารีได้อย่างง่ายดาย
namespace ACadSharp.Examples
{
public static class WriterExamples
{
///
/// Write a ascii dxf file
///
///
///
public static void WriteAsciiDxf(string file, CadDocument doc)
{
using (DxfWriter writer = new DxfWriter(file, doc, false))
{
writer.OnNotification += NotificationHelper.LogConsoleNotification;
writer.Write();
}
}
/// Write a binary dxf file
///
///
public static void WriteBinaryDxf(string file, CadDocument doc)
{
using (DxfWriter writer = new DxfWriter(file, doc, true))
{
writer.OnNotification += NotificationHelper.LogConsoleNotification;
writer.Write();
}
}
}
}
จัดการเอนทิตีในโมเดล CAD ผ่าน C# .NET API
ไลบรารีโอเพนซอร์ส ACadSharp ช่วยให้นักพัฒนาซอฟต์แวร์สามารถจัดการเอนทิตีโมเดล AutoCAD ภายในแอปพลิเคชัน Python ของตนเองได้ ไลบรารีนี้มีฟีเจอร์สำคัญหลายประการสำหรับการทำงานกับเอนทิตีโมเดล เช่น การรับเอนทิตีทั้งหมดในโมเดล การสร้างเอนทิตีใหม่และเพิ่มลงในแบบร่าง การเข้าถึงและแก้ไขคุณสมบัติของเอนทิตี และอื่นๆ
///
/// Get all the entities in the model
///
///
///
public static IEnumerable GetAllEntitiesInModel(string file)
{
CadDocument doc = DwgReader.Read(file);
// Get the model space where all the drawing entities are
BlockRecord modelSpace = doc.BlockRecords["*Model_Space"];
// Get all the entities in the model space
return modelSpace.Entities;
}
เข้าถึงและอ่านไฟล์ AutoCAD DXF/DWG ผ่าน .NET API
ไลบรารีโอเพนซอร์ส ACadSharp ช่วยให้นักพัฒนาซอฟต์แวร์สามารถโหลดและอ่านไฟล์ AutoCAD DXF และไฟล์ DWG ภายในแอปพลิเคชัน .NET ของตนเองได้ด้วยโค้ดเพียงไม่กี่บรรทัด ในการเข้าถึงและอ่านไฟล์ ก่อนอื่นคุณต้องระบุพาธที่สมบูรณ์ไปยังไฟล์ DXF และไฟล์ DWG โปรดทราบว่าโมดูลบางโมดูลของโปรแกรมอ่าน DXF/DWG ยังไม่ได้รับการพัฒนาอย่างสมบูรณ์และจำเป็นต้องปรับปรุงเพิ่มเติม NotificationHandler จะส่งข้อความเพื่อแจ้งเกี่ยวกับวัตถุที่ไม่สามารถอ่านได้หรือข้อผิดพลาดอื่นๆ ในกระบวนการ
namespace ACadSharp.Examples
{
public static class ReaderExamples
{
/// Read a dxf file
/// dxf file path
public static void ReadDxf(string file)
{
using (DxfReader reader = new DxfReader(file, NotificationHelper.LogConsoleNotification))
{
CadDocument doc = reader.Read();
}
}
/// Read a dwg file
/// dwg file path
public static void ReadDwg(string file)
{
using (DwgReader reader = new DwgReader(file, NotificationHelper.LogConsoleNotification))
{
CadDocument doc = reader.Read();
}
}
}
}