STL (تنسيق الملف)
STL هو تنسيق ملف أصلي لبرنامج التصميم بمساعدة الحاسوب (CAD) الخاص بتقنية الطباعة المجسمة الضوئية، والذي طورته شركة 3D Systems . [ 3 ] [ 4 ] [ 5 ] ويذكر تشاك هول ، مخترع الطباعة المجسمة الضوئية ومؤسس شركة 3D Systems، أن امتداد الملف هو اختصار لكلمة " الطباعة المجسمة الضوئية" ، [ 6 ] على الرغم من أنه يُشار إليه أيضًا باسم لغة المثلثات القياسية أو لغة التبليط القياسية . [ 2 ]
يصف ملف STL سطحًا مثلثيًا خامًا غير منظم باستخدام متجه الوحدة العمودي ورؤوس المثلثات (مرتبة وفقًا لقاعدة اليد اليمنى [ 2 ] ) في نظام إحداثيات ديكارتية ثلاثي الأبعاد . [ 7 ] في المواصفات الأصلية، كان يُشترط أن تكون جميع إحداثيات STL أعدادًا موجبة، ولكن هذا الشرط لم يعد ساريًا، وتُستخدم الإحداثيات السالبة بكثرة في ملفات STL اليوم. لا تحتوي ملفات STL على معلومات عن المقياس، ووحداتها اختيارية. [ 8 ] تصف ملفات STL هندسة سطح جسم ثلاثي الأبعاد فقط، دون أي تمثيل للون أو الملمس أو غيرها من سمات نماذج التصميم بمساعدة الحاسوب (CAD) الشائعة. يحدد تنسيق STL كلاً من تمثيل ASCII والتمثيل الثنائي . تُعد الملفات الثنائية أكثر شيوعًا نظرًا لصغر حجمها. [ 9 ]
يستخدم STL على نطاق واسع في النماذج الأولية السريعة والطباعة ثلاثية الأبعاد والتصنيع بمساعدة الكمبيوتر ، [ 10 ] وهو مدعوم من قبل العديد من حزم البرامج الأخرى.
تاريخ
ابتكرت مجموعة ألبرت الاستشارية صيغة STL لصالح شركة 3D Systems عام 1987. [ 11 ] طُوّرت هذه الصيغة لأولى طابعات 3D Systems التجارية ثلاثية الأبعاد. ومنذ إصدارها الأولي، ظلت الصيغة دون تغيير يُذكر لمدة 22 عامًا. [ 12 ]
في عام 2009، تم اقتراح تحديث للتنسيق أطلق عليه اسم STL 2.0، والذي تطور إلى تنسيق ملف التصنيع الإضافي . [ 12 ] [ 13 ]
شكل
ASCII
يبدأ ملف ASCII STL بالسطر التالي:
اسم قوي
حيث يكون الاسم سلسلة نصية اختيارية (مع ذلك، إذا تم حذف الاسم ، يجب ترك مسافة بعد كلمة solid، وذلك للتوافق مع بعض البرامج). يتم تجاهل باقي السطر، ويُستخدم أحيانًا لتخزين البيانات الوصفية (مثل اسم الملف، والمؤلف، وتاريخ التعديل، إلخ). [ 14 ] يستمر الملف بأي عدد من المثلثات، ويتم تمثيل كل منها كما يلي: [ 15 ]
الوجه العادي n i n j n k الخارجي حلقة vertex v1 x v1 y v1 z vertex v2 x v2 y v2 z vertex v3 x v3 y v3 z endloop endfacet
حيث يمثل كل n أو v عددًا عشريًا بصيغة الإشارة - الجزء العشري - الإشارةe - الأس ، على سبيل المثال، . وينتهي الملف بما يلي:2.648000e-002
اسم endsolid

يشير هيكل التنسيق إلى وجود احتمالات أخرى (مثل الأوجه التي تحتوي على أكثر من رأس واحد loop، أو الحلقات التي تحتوي على أكثر من ثلاثة رؤوس)، على الرغم من أن وصف تنسيق الملف يشير فقط إلى تبليط المثلثات . [ 2 ]
يمكن استخدام المسافات البيضاء (المسافات، علامات الجدولة، أسطر جديدة) في أي مكان في الملف باستثناء داخل الأرقام أو الكلمات. المسافات بين facetو normalوبين outerو loopإلزامية. [ 9 ]
ثنائي
نظرًا لأن ملفات STL النصية قد تكون كبيرة الحجم، توجد نسخة ثنائية منها. يحتوي ملف STL الثنائي على ترويسة مكونة من 80 حرفًا، يتم تجاهلها عادةً، ولكن يجب ألا تبدأ أبدًا بالتمثيل النصي ASCII للسلسلة solid، لأن ذلك قد يؤدي إلى خلط بعض البرامج بينها وبين ملف STL نصي ASCII. يلي الترويسة عدد صحيح غير مُوقّع من 4 بايتات بنظام little-endian، يُشير إلى عدد الأوجه المثلثية في الملف. يلي ذلك بيانات تصف كل مثلث على حدة. ينتهي الملف ببساطة بعد المثلث الأخير.
يُوصَف كل مثلث باثني عشر عددًا عشريًا من نوع 32 بت: ثلاثة للعمودي، ثم ثلاثة لإحداثيات X/Y/Z لكل رأس - تمامًا كما هو الحال في نسخة ASCII من مكتبة STL. يلي ذلك عدد صحيح غير مُوَقَّع من بايتين ("short") يُمثِّل "عدد بايتات السمة" - في التنسيق القياسي، يجب أن يكون هذا العدد صفرًا لأن معظم البرامج لا تفهم أي شيء آخر. [ 9 ]
يتم تمثيل الأرقام ذات الفاصلة العائمة كأرقام فاصلة عائمة IEEE ويفترض أنها ذات ترتيب البايتات الصغير ، على الرغم من أن هذا غير مذكور في الوثائق.
UINT8[80] – رأس - 80 بايت UINT32 – عدد المثلثات - 4 بايت لكل مثلث - 50 بايت REAL32[3] – متجه عمودي - 12 بايت REAL32[3] – الرأس 1 - 12 بايت REAL32[3] – الرأس 2 - 12 بايت REAL32[3] – الرأس 3 - 12 بايت UINT16 – عدد بايتات السمة - 2 بايت نهاية
يوجد على الأقل نوعان غير قياسيين من تنسيق STL الثنائي لإضافة معلومات اللون:
- تستخدم حزم البرامج VisCAM و SolidView بايتَي "عدد بايتات السمات" في نهاية كل مثلث لتخزين لون RGB ذي 15 بت :
- تمثل البتات من 0 إلى 4 مستوى شدة اللون الأزرق (من 0 إلى 31).
- تمثل البتات من 5 إلى 9 مستوى شدة اللون الأخضر (من 0 إلى 31).
- تمثل البتات من 10 إلى 14 مستوى شدة اللون الأحمر (من 0 إلى 31).
- البت 15 هو 1 إذا كان اللون صالحًا، أو 0 إذا كان اللون غير صالح (كما هو الحال مع ملفات STL العادية).
- يستخدم برنامج Materialise Magics رأس الملف (80 بايت) في أعلى الملف لتمثيل اللون العام للجزء بأكمله. في حال استخدام اللون، يجب أن يحتوي رأس الملف على سلسلة ASCII
COLOR=متبوعة بأربعة بايتات تمثل الأحمر والأخضر والأزرق وقناة ألفا (الشفافية) ضمن النطاق 0-255. هذا هو لون الكائن بأكمله، ما لم يتم تغييره عند كل وجه. يتعرف برنامج Magics أيضًا على وصف المادة؛ وهو وصف أكثر تفصيلًا لخصائص السطح. بعد تحديد اللون مباشرةً، يجب أن تحتوي سلسلة ASCII أخرى متبوعة بثلاثة ألوان (3×4 بايتات): الأول هو لون الانعكاس المنتشر ، والثاني هو لون اللمعان ، والثالث هو لون الإضاءة المحيطة . يُفضل استخدام إعدادات المادة على اللون. يتم تمثيل لون كل وجه في بايتَي "عدد بايتات السمة" كما يلي:COLOR=RGBA,MATERIAL=- تمثل البتات من 0 إلى 4 مستوى شدة اللون الأحمر (من 0 إلى 31).
- تمثل البتات من 5 إلى 9 مستوى شدة اللون الأخضر (من 0 إلى 31).
- تمثل البتات من 10 إلى 14 مستوى شدة اللون الأزرق (من 0 إلى 31).
- البت 15 هو 0 إذا كان لهذا الجانب لونه الفريد الخاص به، أو 1 إذا كان سيتم استخدام لون الكائن.
يُعكس ترتيب الألوان الأحمر والأخضر والأزرق داخل هذين البايتين في هاتين الطريقتين، لذا فبينما كان من الممكن أن تكون هذه التنسيقات متوافقة بسهولة، فإن عكس ترتيب الألوان يعني عدم توافقها، والأسوأ من ذلك، أن قارئ ملفات STL العام لا يستطيع التمييز بينهما تلقائيًا. كما لا توجد طريقة لجعل الأوجه شفافة بشكل انتقائي لعدم وجود قيمة ألفا لكل وجه، مع أن هذا الأمر غير مهم في سياق آلات النماذج الأولية السريعة الحالية.
وجه عادي
في كلٍ من إصداري STL ASCII والثنائي، يجب أن يكون متجه الوحدة العمودي على السطح متجهًا يشير إلى الخارج من الجسم الصلب. [ 16 ] في معظم البرامج، يمكن ضبط هذا المتجه على (0,0,0)، ويقوم البرنامج تلقائيًا بحساب متجه الوحدة العمودي بناءً على ترتيب رؤوس المثلث باستخدام " قاعدة اليد اليمنى "، أي أن الرؤوس مُرتبة عكس اتجاه عقارب الساعة من الخارج. [ 2 ] تتحقق بعض برامج تحميل STL (مثل إضافة STL لبرنامج Art of Illusion) من تطابق متجه الوحدة العمودي في الملف مع المتجه الذي تحسبه باستخدام قاعدة اليد اليمنى، وتُنبّه المستخدم في حال عدم التطابق. قد تتجاهل برامج أخرى متجه الوحدة العمودي تمامًا وتستخدم قاعدة اليد اليمنى فقط. على الرغم من ندرة تحديد متجه وحدة عمودي لا يمكن حسابه باستخدام قاعدة اليد اليمنى، إلا أنه لضمان قابلية نقل الملف بالكامل، يجب أن يُوفر متجه الوحدة العمودي على السطح وأن يُرتب الرؤوس بشكل مناسب. ويُعد برنامج SolidWorks استثناءً بارزًا ، حيث يستخدم متجه الوحدة العمودي لتأثيرات التظليل .
صفات
لا يمكن استخدام المثلثات لتمثيل الأسطح المنحنية بدقة تامة. وللتعويض عن ذلك، يلجأ المستخدمون غالبًا إلى حفظ ملفات STL ضخمة لتقليل عدم الدقة. مع ذلك، تستخدم التنسيقات الأصلية المرتبطة بالعديد من تطبيقات التصميم ثلاثي الأبعاد أسطحًا رياضية للحفاظ على التفاصيل دون فقدان في الملفات الصغيرة. على سبيل المثال، يستخدم كل من Rhino 3D [ 17 ] و Blender [ 18 ] تقنية NURBS لإنشاء أسطح منحنية حقيقية وتخزينها بتنسيقات ملفاتهما الأصلية، ولكنهما يضطران إلى إنشاء شبكة مثلثية عند تصدير نموذج إلى تنسيق STL.
الطباعة ثلاثية الأبعاد

تقوم الطابعات ثلاثية الأبعاد ببناء الأجسام عن طريق التصلب ( SLA ، SLS ، SHS ، DMLS ، EBM ، DLP ) أو الطباعة (3DP، MJM، FDM ، FFF ، PJP، MJS) [ 19 ] طبقةً تلو الأخرى. يتطلب ذلك سلسلة من الخطوط المحيطية ثنائية الأبعاد المغلقة (طبقات أفقية) تُملأ بالمادة المتصلبة أثناء اندماج الطبقات معًا. يُعد تنسيق الملف الطبيعي لمثل هذه الآلة سلسلة من المضلعات المغلقة (طبقات أو شرائح) التي تتوافق مع قيم Z مختلفة. ومع ذلك، نظرًا لإمكانية تغيير سماكة الطبقات للحصول على بناء أسرع وإن كان أقل دقة، كان من الأسهل تعريف النموذج المراد بناؤه على أنه متعدد السطوح مغلق يمكن تقطيعه عند المستويات الأفقية المطلوبة. يمكن أن يؤثر اتجاه السطح غير الصحيح على طريقة تقطيع الملف وملؤه. يمكن اختيار شريحة عند قيمة Z مختلفة لتجنب سطح غير صحيح، أو يجب إعادة الملف إلى برنامج CAD لإجراء التصحيحات ثم إعادة إنشاء ملف STL.
لتكوين مجسم ثلاثي الأبعاد بشكل صحيح، يجب أن يكون السطح المُمثَّل في أي ملف STL مغلقًا (بدون ثقوب أو متجه عمودي معكوس) ومتصلًا، بحيث يشترك كل ضلع في وجهين فقط، ولا يتقاطع مع نفسه. ولأن صيغة STL لا تفرض هذه الخاصية، يمكن تجاهلها في التطبيقات التي لا يُؤثر فيها الفراغ. أما السطح المفقود فيُهمّ لأن البرنامج الذي يُقسِّم المثلثات يحتاجه لضمان إغلاق المضلعات ثنائية الأبعاد الناتجة. أحيانًا، يُمكن برمجة هذه البرامج لمعالجة الاختلافات الطفيفة عن طريق تحريك الرؤوس المتقاربة لتتطابق. النتائج غير قابلة للتنبؤ، وقد تتطلب إصلاحًا باستخدام برنامج آخر. تتطلب طابعات المتجهات ثلاثية الأبعاد ملف STL سليمًا، وطباعة ملف بيانات تالف إما تفشل في ملء المجسم أو قد تتوقف الطباعة تمامًا.
مجالات أخرى

يُعدّ تنسيق STL بسيطًا وسهل الإخراج، ولذلك، يُمكن للعديد من أنظمة التصميم بمساعدة الحاسوب إخراج ملفات بتنسيق STL. مع ذلك، ورغم سهولة إنتاج هذه الملفات، تُهمل معلومات اتصال الشبكة نظرًا لفقدان هوية الرؤوس المشتركة.
تتطلب العديد من أنظمة التصنيع بمساعدة الحاسوب نماذج مثلثة. لا يُعد تنسيق STL الطريقة الأمثل من حيث استهلاك الذاكرة والحساب لنقل هذه البيانات، ولكنه يُستخدم غالبًا لاستيراد الهندسة المثلثة إلى نظام التصنيع بمساعدة الحاسوب . يتوفر هذا التنسيق على نطاق واسع، مما يُمكّن نظام التصنيع بمساعدة الحاسوب من استخدامه. لاستخدام البيانات، قد يحتاج نظام التصنيع بمساعدة الحاسوب إلى إعادة بناء الاتصال. ولأن ملفات STL لا تحفظ الأبعاد الفيزيائية للوحدة، فإن نظام التصنيع بمساعدة الحاسوب يطلبها. ومن الوحدات الشائعة: mmو inch.
يمكن أيضًا استخدام STL لتبادل البيانات بين أنظمة CAD/CAM والبيئات الحسابية مثل Mathematica .
انظر أيضاً
- تنسيق التصنيع ثلاثي الأبعاد – معيار تنسيق الملفات مفتوح المصدر
- تنسيق ملف التصنيع الإضافي – معيار لوصف الكائنات في التصنيع الإضافي. صفحات تعرض أوصافًا مختصرة لأهداف إعادة التوجيه.
- PLY (تنسيق ملف) – تنسيق ملف مصمم لتخزين البيانات ثلاثية الأبعاد من الماسحات الضوئية ثلاثية الأبعاد
- فوكسل – عنصر يمثل قيمة على شبكة في فضاء ثلاثي الأبعاد
- ملف Wavefront بصيغة .obj – تنسيق ملف تعريف الهندسة
- X3D – تنسيق ملفات قائم على لغة XML لرسومات الحاسوب ثلاثية الأبعاد
مراجع
- ↑ نوردفيك، آلان (6 مارس 2018). "model/stl" . iana.org . IANA . مؤرشف من الأصل في 16 فبراير 2022. تم الاطلاع عليه في 30 مايو 2022 .
- 1 2 3 4 5 "عائلة تنسيقات ملفات STL (الطباعة المجسمة)" . مكتبة الكونغرس . مؤرشف من الأصل في 29 مايو 2022. تم الاطلاع عليه في 30 مايو 2022 .
- ↑ مواصفات واجهة الطباعة المجسمة ، شركة ثري دي سيستمز، يوليو 1988
- ↑ مواصفات واجهة الطباعة المجسمة ، شركة ثري دي سيستمز، أكتوبر 1989
- ↑ مواصفات ملف SLC ، شركة 3D Systems، 1994
- ↑ غريم، تود (2004). "3. عملية النماذج الأولية السريعة" . دليل المستخدم للنماذج الأولية السريعة . جمعية مهندسي التصنيع . ص 55. ISBN 0-87263-697-6.
- ↑ بوركاردت، جون (10 يوليو 2014). "ملفات STLA - ملفات الطباعة المجسمة ASCII" . مؤرشف من الأصل في 4 أكتوبر 2022. تم الاطلاع عليه في 30 مايو 2022 .
- ↑ "تنسيق StL: تنسيق البيانات القياسي لصانعي الرقائق الإلكترونية" . fabbers.com — مصدر تاريخي حول الطباعة ثلاثية الأبعاد . مؤرشف من الأصل في 17 سبتمبر 2020. تم الاطلاع عليه في 30 مايو 2022 .
- 1 2 3 بيرنز، مارشال (1993). "6.5". التصنيع الآلي: تحسين الإنتاجية في التصنيع . برنتيس هول بي تي آر . رقم ISBN 9780131194625. OCLC 634954895 .
- ↑ تشوا، سي كيه؛ ليونغ، كيه إف؛ ليم، سي إس (2003)، "الفصل 6، نماذج النماذج الأولية السريعة"، النماذج الأولية السريعة: المبادئ والتطبيقات ( الطبعة الثانية)، دار النشر العالمية العلمية ، ص 237، رقم ISBN 981-238-117-1،
تم استخدام ملف STL (الطباعة الحجرية) كمعيار فعلي في العديد من أنظمة النماذج الأولية السريعة، إن لم يكن جميعها.
- ↑ "صيغة ملف STL للطباعة ثلاثية الأبعاد - شرح مبسط" . All3DP . ١٧ نوفمبر ٢٠١٦. مؤرشف من الأصل في ٢٢ سبتمبر ٢٠١٦. تم الاطلاع عليه في ٥ مايو ٢٠١٧ .
- 1 2 "قد يحل تنسيق STL 2.0 محل تنسيق الملفات القديم والمحدود" . RapidToday . مؤرشف من الأصل في 29 ديسمبر 2011. تم الاطلاع عليه في 5 مايو 2017 .
- ↑ هيلر، جوناثان د.؛ ليبسون، هود (2009). STL 2.0: مقترح لتنسيق ملف عالمي متعدد المواد للتصنيع الإضافي (PDF) . ندوة التصنيع الحر للأشكال الصلبة (SFF'09). أوستن، تكساس، الولايات المتحدة الأمريكية: جامعة كورنيل. مؤرشف من الأصل (PDF) في 11 يونيو 2020. تم الاطلاع عليه في 5 مايو 2017 .
- ↑ بورك، بول (أكتوبر 1999). "صيغة STL" . مؤرشف من الأصل في 16 يوليو 2022. تم الاطلاع عليه في 29 مايو 2022 .
- ↑ "تنسيق ملف STL (الطباعة المجسمة)، ASCII" . مكتبة الكونغرس . مؤرشف من الأصل في 29 مايو 2022. تم الاطلاع عليه في 30 مايو 2022 .
- ↑ بيدي، جون (2013). تاريخ السحر البصري في الحواسيب: كيف تُصنع الصور الجميلة في التصميم بمساعدة الحاسوب، والرسومات ثلاثية الأبعاد، والواقع الافتراضي، والواقع المعزز . لندن، إنجلترا: سبرينغر. الصفحات 54-57 . ISBN 9781447149323. OCLC 849634980 .
- ↑ "ما هي NURBS؟" . www.rhino3d.com . مؤرشف من الأصل بتاريخ 25 يونيو 2021. تم الاطلاع عليه بتاريخ 25 يونيو 2021 .
- ↑ "البنية - دليل بلندر" . docs.blender.org . مؤرشف من الأصل بتاريخ 25 يونيو 2021. تم الاطلاع عليه بتاريخ 25 يونيو 2021 .
- ↑ بارنات، كريستوفر (2013). الطباعة ثلاثية الأبعاد: الثورة الصناعية القادمة . نوتنغهام، إنجلترا: ExplainingTheFuture.com. الصفحات 26-71 . ISBN 9781484181768. OCLC 854672031 .
روابط خارجية
- تنسيقات ملفات الرسومات ثلاثية الأبعاد
- تنسيقات ملفات CAD
- مقدمات عام 1987
