מבוא
אנו משחררים Aspose.3D FOSS עבור Python, ספרייה pure-Python לקריאה, כתיבה והמרת פורמטים נפוצים של קבצי 3D. הספרייה מתפרסמת ב‑PyPI בשם aspose-3d-foss, נושאת רישיון MIT, ואין לה תלות חיצונית.
אם אי פעם נדרש לך לבדוק או להמיר קבצי 3D באופן תכנותי (לחלץ ספירות קודקודי רשת, להעביר גאומטריית OBJ לסקריפט עיבוד, או לבצע המרה קבוצתית של קבצי STL ל‑glTF לצורך מציג אינטרנט), ספרייה זו נבנתה למקרה שימוש זה. היא אינה דורשת מנהל גרפיקה, מודול הרחבה מקורי, או חיבור ענן.
מה נכלל
גרף סצנה מרכזי
כל קובץ נטען לתוך Scene אובייקט המשקף את היררכיית הצמתים של הקובץ המקורי. צמתים נושאים Transform (תרגום, סיבוב, קנה מידה) וישות אחת או יותר מחוברת כגון Mesh, Camera, או Light. גרף הסצנה זהה ללא קשר לפורמט המקור, ולכן קוד שנכתב כדי לעבור ולעבד גאומטריה פועל על כל הפורמטים הנתמכים ללא שינוי.
גישה לגאומטריה
Mesh אובייקטים מציגים:
control_points:רשימת מיקומי קודקוד כVector4(x, y, z, w)polygons:רשימת רשימות אינדקסים של משטחים (אריות פוליגון שרירותיות, לא רק משולשים)get_element(VertexElementType):מקבל שכבות נתוני קודקוד בשם עבור נורמליות, UVs, צבעי קודקוד וקבוצות החלקה
חומרים
LambertMaterial ו PhongMaterial להעביר את תכונות החומר שנקראו מ‑OBJ .mtl קבצים (ambient, diffuse, specular, emissive, transparency, shininess). חומרים שורדים את מסע הטעינה‑שמירה עבור פורמטים התומכים בהם.
כלי מתמטיקה
Vector2, Vector3, Vector4, FVector3, Quaternion, Matrix4, ו BoundingBox נכללים כסוגי ערך קלים לחישובי גאומטריה.
הנפשה
ה AnimationClip, AnimationNode, KeyframeSequence, ו KeyFrame מחלקות מספקות גישה לנתוני אנימציית keyframe מפורמטים שנושאים אותם, כגון glTF ו‑COLLADA.
התחלה מהירה
pip install aspose-3d-foss
טען קובץ 3D והדפס את מספר הקודקודים של כל רשת:
from aspose.threed import Scene
from aspose.threed.entities import Mesh
scene = Scene.from_file("model.obj")
def visit(node):
for entity in node.entities:
if isinstance(entity, Mesh):
print(f"{node.name}: {len(entity.control_points)} vertices, "
f"{len(entity.polygons)} polygons")
for child in node.child_nodes:
visit(child)
visit(scene.root_node)
המרת הקובץ הזה ל‑glTF:
from aspose.threed import Scene
from aspose.threed.formats import GltfSaveOptions
scene = Scene.from_file("model.obj")
scene.save("model.gltf", GltfSaveOptions())
זהו התוכנית המלאה. אין קבצי תצורה, אין מפתחות API, אין קריאות רשת.
פורמטים נתמכים
| פורמט | Extension(s) | טען | שמור | הערות |
|---|---|---|---|---|
| Wavefront OBJ | .obj | כן | כן | .mtl טעינת חומרים נתמכת |
| STL | .stl | כן | כן | בינארי ו-ASCII; אפשרות הפיכת מערכת הקואורדינטות |
| glTF 2.0 | .gltf, .glb | כן | כן | GLB (בינארי עצמאי) נתמך |
| COLLADA | .dae | כן | כן | ColladaSaveOptions זמין עם flip_coordinate_system, enable_materials, indented |
| 3MF | .3mf | כן | כן | מתאים לתהליכי עבודה של הדפסת תלת‑ממד |
| FBX | .fbx | חלקי | N/A | Tokenizer בלבד; full parser בתהליך |
זיהוי הפורמט הוא אוטומטי מהרחבת הקובץ. אפשרויות טעינה ושמירה ספציפיות לפורמט (ObjLoadOptions, StlSaveOptions, GltfSaveOptions, ThreeMfSaveOptions).
קוד פתוח וחינמי
הספרייה מורשית ברישיון MIT. ניתן להשתמש בה ביישומים מסחריים, לשנות אותה ולחלק אותה מחדש ללא מגבלות. הקוד זמין ב‑GitHub תחת הארגון Aspose.
אין רמות שימוש, אין מגבלות אסימונים, ואין טלמטריה. הספרייה מבצעת את כל העיבוד באופן מקומי.
תלויות: אין. החבילה מותקנת כגלגל pure-Python ללא הרחבות C וללא דרישות זמן ריצה של צד שלישי.
התחלה
- התקנה:
pip install aspose-3d-foss - מדריך: טעינת קבצים: איך לטעון מודלים תלת‑ממדיים ב‑Python
- מדריך: המרת קבצים: איך להמיר מודלים תלת‑ממדיים ב‑Python
- תיעוד API: Aspose.3D FOSS עבור Python תיעוד API
- PyPI: aspose-3d-foss ב-PyPI
סיכום
Aspose.3D FOSS עבור Python גרסה 26.1.0 מכסה את פורמטי הקבצים התלת‑ממדיים הנפוצים ביותר המשמשים בכלים, צינורות עבודה ויישומי אינטרנט (OBJ, STL, glTF, COLLADA, ו‑3MF) עם API Python עקבי וללא חיכוך בהתקנה. אם אתה נתקל בבאג, במצב קצה שאינו נתמך, או בפורמט שצריך להוסיף, אנא פתח נושא ב‑GitHub. אנו מתחזקים את הספרייה באופן פעיל ומקבלים תרומות בברכה.