כיצד להמיר מודלים תלת‑ממדיים ב‑.NET

כיצד להמיר מודלים תלת‑ממדיים ב‑.NET

Aspose.3D for .NET עושה המרת פורמט בתהליך של שני שלבים: טען את קובץ המקור עם Scene.Open(), ואז שמור לפורמט היעד עם Scene.Save(). פורמט הפלט נובע מהרחבת הקובץ.

מדריך שלב אחר שלב

שלב 1: התקן את החבילה

dotnet add package Aspose.3D --version 26.1.0

שלב 2: ייבא מרחבי שמות

using Aspose.ThreeD;
using Aspose.ThreeD.Formats;

שלב 3: טען את קובץ המקור

var scene = new Scene();
scene.Open("input.fbx");

שלב 4: שמור בפורמט היעד

scene.Save("output.glb");

הספרייה מזהה את פורמט היעד מההרחבה. פורמטים נתמכי יצוא: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA, ו‑3MF.


שלב 5: השתמש באפשרויות שמירה ספציפיות לפורמט

לשליטה מדויקת, העבר תת‑מחלקה של SaveOptions:

// FBX output — always produces binary FBX
// FbxSaveOptions exists but has no format-specific properties in this version
scene.Save("output.fbx");

// OBJ with flipped coordinate system
scene.Save("output.obj", new ObjSaveOptions { FlipCoordinateSystem = true });

// COLLADA with indented XML
scene.Save("output.dae", new ColladaSaveOptions { Indented = true });

מתכוני המרה נפוצים

מקוריעדקוד
OBJ to GLBscene.Open("input.obj"); scene.Save("output.glb");קובץ glTF בינארי לצפייה באינטרנט
FBX to STLscene.Open("input.fbx"); scene.Save("output.stl");רשת משולשת להדפסת תלת‑ממד
glTF to COLLADAscene.Open("input.gltf"); scene.Save("output.dae");פורמט החלפת DAE
STL to OBJscene.Open("input.stl"); scene.Save("output.obj");Wavefront לכלי מודלינג

בעיות נפוצות ותיקונים

קובץ הפלט ריק או קטן מאוד

ודא שהקובץ המקור נטען בהצלחה. בדוק scene.RootNode.ChildNodes.Count אחרי Open().

חומרים שאבדו במהלך ההמרה

לא כל הפורמטים נושאים את אותן תכונות חומר. חומרים ב‑OBJ משתמשים ב‑Lambert/Phong; glTF משתמש ב‑PBR. מיפוי חומרים הוא מאמץ מיטבי מעבר לגבולות הפורמט.

הפרש קנה מידה בין המקור לפלט

כלים שונים משתמשים במערכות יחידות שונות. יש להחיל ObjLoadOptions.Scale בייבוא או להתאים node.Transform.Scale לפני השמירה.


שאלות נפוצות (FAQ)

האם אני יכול להמיר PLY לפורמט אחר?

PLY הוא רק לייבוא. טען קובץ PLY ושמור לכל פורמט יצוא (OBJ, STL, GLB, FBX, COLLADA).

האם ההמרה משמרת אנימציות?

נתוני האנימציה (AnimationClip) נשמרים כאשר שני הפורמטים תומכים בהם (למשל, מ‑FBX ל‑glTF). STL ו‑OBJ אינם נושאים נתוני אנימציה.

האם ניתן לבצע המרה קבוצתית של קבצים מרובים?

צור Scene חדש עבור כל קובץ בלולאה. כל Scene הוא עצמאי וניתן לעיבוד במקביל.

 עברית