הכניסה
Aspose.3D FOSS הוא ספרייה .NET קוד פתוח חינם לעבודה עם פורמטים של קבצים 3D. זה מספק קבוצה מקיפה של שיעורי תועלת אשר הולכים מעבר להפוך את הקובץ פשוט, המאפשרים למפתחים לנהל את המפותחות, לבנות טרנספורמציות, ולייצר גיאומטריה פרימיטיבית בתכנית. הספרייה שוחררה תחת רישיון MIT, מה שהופך אותה מתאימה עבור פרויקטים אישיים ומסחריים ללא הגבלות.
פוסט זה מתמקד ביכולות העזר שבספרייה: המחלקות והשיטות שבהן אתה פונה כאשר אתה צריך למשולש רשת, לבנות מטריצת טרנספורמציה שלב אחרי שלב, או ליצור גיאומטריה פרמטרית. בלוקים אלו משלימים את זרימת העבודה המרכזית של טעינת סצנה ושמירת סצנה שהוצגה בפוסט המבוא.
בין אם אתה מעבד נכסי תלת‑ממד בצינור בנייה, מכין גיאומטריה למנוע משחק, או ממיר בין פורמטים, כלים אלו מטפלים במשימות השגרתיות שמופיעות בעבודות תלת‑ממד בעולם האמיתי.
מה כולל
פעולות רשת
The Mesh אתה יכול ליצור פוליגונים מתוך אינדיקטורים מעוגן, גודל פוליגן בקשה, פנים משולש, ולייעל נתוני מעוגה. ControlPoints הנכס מספק גישה ישירה לתנועות הברקזיט, בעוד Polygons הוא מפרט את האינדקס הפנים.
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
var scene = new Scene();
var mesh = new Mesh("CustomMesh");
// Add control points (vertices)
mesh.ControlPoints.Add(new Vector4(0, 0, 0));
mesh.ControlPoints.Add(new Vector4(10, 0, 0));
mesh.ControlPoints.Add(new Vector4(10, 10, 0));
mesh.ControlPoints.Add(new Vector4(0, 10, 0));
// Create a quad polygon from four vertices
mesh.CreatePolygon(0, 1, 2, 3);
// Triangulate all polygons in the mesh
mesh.Triangulate();
בונה טרנספורמציה
The TransformBuilder שיעור מספק ממשק חלקי לבניית מטרייה טרנספורמציה באמצעות סדרה של פעולות תרגום, סיבוב וסקנה.אתה שולט בסדר ההרכב (תוספת או Prepend) ואתה יכול להגדיר מחדש את הבונה כדי להתחיל שרשרת טריה.
using Aspose.ThreeD;
using Aspose.ThreeD.Utilities;
var builder = new TransformBuilder(ComposeOrder.Append);
// Build a combined transform: translate, then rotate, then scale
builder.Translate(5, 0, 3);
builder.RotateDegree(45, new Vector3(0, 1, 0));
builder.Scale(2, 2, 2);
// Retrieve the composed 4x4 matrix
Matrix4 result = builder.Matrix;
משנה פוליגון
The PolygonModifier שיעור מציעה שיטות שימוש סטטיות לעיבוד המשי. Triangulate שיטה להפוך כל n צד polygon mesh ל גיאומטריה משולש בלבד, אשר הוא הכניסה הנדרשת עבור רוב מנועים רנדרינג ופיזיקה סימולציות.
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
var scene = new Scene();
var box = new Box(2, 2, 2);
Mesh boxMesh = box.ToMesh();
// Convert all polygons to triangles
Mesh triangulated = PolygonModifier.Triangulate(boxMesh);
יצירת גיאומטריה פרימיטיבית
הספרייה כוללת שיעורי גיאומטריה פרמטריים כגון: Box, Sphere, ו Cylinder.כל פרימיטיבי יכול להיות מוגדר עם מימדים ומחלקים, ולאחר מכן להפוך למספר של Mesh דרך The ToMesh() שיטת עיבוד או ייצוא נוספת.
using Aspose.ThreeD.Entities;
// Create a parameterized sphere
var sphere = new Sphere(5.0, 32, 16);
Mesh sphereMesh = sphere.ToMesh();
// Create a cylinder (cone when one radius is zero)
var cone = new Cylinder(0, 3.0, 6.0);
Mesh coneMesh = cone.ToMesh();
חישוב תיבת גבול
כל אחד Entity תת-קטגוריה מופיעה א GetBoundingBox() שיטה שמחזירה את תיבת הגבולות המורכבת ממעגלים של הגימטר. BoundingBox Strut מספקת Minimum ו Maximum וקטורים זווית, שימושיים עבור בקשות חלל ומצלמה.
using Aspose.ThreeD.Entities;
using Aspose.ThreeD.Utilities;
var box = new Box(4, 2, 6);
BoundingBox bounds = box.GetBoundingBox();
FVector3 min = bounds.Minimum;
FVector3 max = bounds.Maximum;
מהיר התחלה
התקן את החבילה מ‑NuGet:
dotnet add package Aspose.3D.FOSSטען קובץ, משולש כל רשת, ושמור את התוצאה:
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
// Load a scene from an OBJ file
var scene = new Scene();
scene.Open("input.obj");
// Walk child nodes and triangulate each mesh entity
foreach (var node in scene.RootNode.ChildNodes)
{
foreach (var entity in node.Entities)
{
if (entity is Mesh mesh)
{
mesh.Triangulate();
}
}
}
// Save the triangulated scene as glTF
scene.Save("output.glb");
פורמט תומך
| פורמט | הרחבה | קראו | כתוב |
|---|---|---|---|
| קלאדי | .יום | כן | כן |
| FBX | .Fbx | כן | כן |
| GLTF / GLB | .gltf / .ggb | כן | כן |
| 3MF | .3 מ"מ | כן | לא |
| Wavefront OBJ | .אובמה | כן | כן |
| PLY | .תגית: | כן | לא |
| STL | .סטל | כן | כן |
| TMF | .טמפרטורה | לא | כן |
קוד פתוח & רישיון
Aspose.3D FOSS שוחרר תחת רישיון MIT. אתה יכול להשתמש, לשנות ולהפיץ מחדש את הספרייה בשני פרויקטים קוד פתוח ובעלות. אסטרואיד 3D-FOSS - For.NET.
להתחיל
- מדריך מפתחים - מסמך מלא המכסה ניהול סצנה, אפשרויות פורמט ותכונות מתקדמות.
- בסיס ידע איך לכתוב מאמרים ושאלות נפוצות?.
- API רמז - רמז בכיתה לפי כיתה עם חתימות שיטה ופרטים של נכסים.