مكتبة .NET مجانية لقراءة وكتابة ملفات AutoCAD DXF وDWG 

مكتبة .NET CAD مفتوحة المصدر تتيح للمبرمجين فتح وقراءة وتحرير وكتابة وتحويل رسومات AutoCAD DXF وDWG بسهولة.

ما هي ACadSharp؟

ACadSharp هي مكتبة مفتوحة المصدر رائعة تعمل بلغة C# و.NET. تُتيح لمطوري البرامج إمكانية العمل مع رسومات AutoCAD بصيغتي DXF وDWG في تطبيقات C#. تأتي هذه المكتبة مزودة بميزات رئيسية، مثل إضافة عناصر جديدة إلى رسومات CAD، وحذف العناصر غير المرغوب فيها، والوصول إلى جميع الكيانات في النموذج، وإنشاء نسخ مكررة من عناصر محددة، وإنشاء أقواس من الانتفاخات، وتحسين MText، وإنشاء كيانات مختلفة. مع ACadSharp، ستمتلك الأدوات اللازمة لتحسين تطبيقات C# الخاصة بك من خلال إمكانيات إدارة ملفات AutoCAD.

تُستخدم ملفات DXF وDWG على نطاق واسع في مجال التصميم بمساعدة الحاسوب (CAD) لعرض صور متجهة. يوفر كلاهما جودة عالية متشابهة، ويُستخدمان عادةً لمشاركة البيانات بين مختلف برامج التصميم بمساعدة الحاسوب (CAD) وبرامج الرسم. DXF هو معيار تدعمه شركة Autodesk، بينما DWG هو تنسيق مغلق حصري لمنتجات Autodesk. مكتبة ACadSharp سهلة الاستخدام، وتوفر وظائف لتنسيق النصوص ومحاذاتها، مثل محاذاة النص (يمين، يسار، وسط، ضبط)، ومحاذاة النص عموديًا (أعلى، وسط، أسفل)، ومسافة بادئة لعلامات التبويب، وغيرها. مكتبة ACadSharp متاحة بموجب ترخيص معهد ماساتشوستس للتكنولوجيا (MIT).

Previous Next

البدء باستخدام 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 الثنائية بسهولة.

كيفية إنشاء ملف ASCII وملف DXF ثنائي عبر مكتبة C# .NET؟

 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

تتيح مكتبة ACadSharp مفتوحة المصدر لمطوري البرامج إمكانية التعامل مع كيانات نموذج AutoCAD داخل تطبيقات Python الخاصة بهم. وتوفر المكتبة العديد من الميزات المهمة للتعامل مع كيانات النموذج، مثل الحصول على جميع الكيانات في النموذج، وإنشاء كيانات جديدة وإضافتها إلى الرسم، والوصول إلى خصائص الكيان وتعديلها، وغيرها.

كيفية الحصول على جميع الكيانات في نموذج CAD عبر C# .NET؟

/// 
/// 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

تتيح مكتبة ACadSharp مفتوحة المصدر لمطوري البرامج تحميل ملفات AutoCAD DXF وDWG وقراءتها داخل تطبيقات .NET الخاصة بهم ببضعة أسطر برمجية فقط. للوصول إلى ملف وقراءته، يجب عليك أولًا توفير المسار الكامل لملفي DXF وDWG. يُرجى ملاحظة أن بعض وحدات قارئات DXF/DWG لم تُطبّق بالكامل بعد، وتحتاج إلى مزيد من التحسين. سيرسل مُعالج الإشعارات رسالةً للإبلاغ عن الكائنات التي تعذر قراءتها أو عن أي خطأ آخر في العملية.

كيفية قراءة ملفات DXF وDWG باستخدام مكتبة C# .NET؟

 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();
			}
		}
	}
}
 عربي