Punktwolke zu GLTF über C# generieren
Erstellen Sie Ihre eigenen .NET-Apps, um mit serverseitigen APIs Punktwolken in GLTF-Dateien zu generieren.
So generieren Sie eine Punktwolke in eine GLTF-Datei mit C#
Um eine Punktwolke in der GLTF-Datei zu generieren, verwenden wir
API, eine funktionsreiche, leistungsstarke und benutzerfreundliche API für C#-Plattform, die mit der Generierung von Punktwolken verwendet werden kann. Offen
Paketmanager, suche nach Aspose.3D und installieren. Sie können auch den folgenden Befehl in der Paket-Manager-Konsole verwenden.
Paket-Manager-Konsolenbefehl
PM> Install-Package Aspose.3D
Schritte zum Generieren einer Punktwolke zu GLTF über C#
Aspose.3D macht es Entwicklern leicht, mit nur wenigen Codezeilen Punktwolken für die GLTF-Datei zu generieren.
- Laden Sie die GLTF-Datei über den Konstruktor der Scene-Klasse- Punktwolkenobjekt von Aspose.3D abrufen- Erstellen Sie ein Transformationsobjekt mit der EvaluateGlobalTransform-Methode- Generieren Sie Punktwolken mit der Merge-Methode- Rufen Sie die Scene.Save-Methode mit Objekt auf
System Anforderungen
Aspose.3D for .NET wird auf allen wichtigen Betriebssystemen unterstützt. Stellen Sie einfach sicher, dass Sie die folgenden Voraussetzungen erfüllen.
- Microsoft Windows oder ein kompatibles Betriebssystem mit .NET Framework, .NET Core, Mono- Entwicklungsumgebung wie Microsoft Visual Studio- Aspose.3D for .NET in Ihrem Projekt referenziert
C#-Code zum Generieren einer Punktwolke für GLTF
//Die Quelldatei, die zum Generieren der Punktwolke benötigt wird
string file = "template.gltf";
// Erstellen Sie eine Instanz von Scene
Scene scene = new Scene(file);
//Rufen Sie das Punktwolkenobjekt von Aspose.3D ab und generieren Sie eine Punktwolke
var pc = new PointCloud();
scene.RootNode.Accept((Node n) =>
{
if (n.Entities.Count > 0)
{
var transform = n.EvaluateGlobalTransform(true);
foreach (var entity in n.Entities)
{
if (entity is Geometry g)
{
Merge(pc, g, transform);
}
else if (entity is IMeshConvertible mc)
{
var mesh = mc.ToMesh();
Merge(pc, mesh, transform);
}
}
}
return true;
});
//Merge-Methode zum Generieren von Punktwolken
private void Merge(PointCloud pc, Geometry g, Matrix4 transform)
{
var tmp = PointCloud.FromGeometry(g, 10);
for (int i = 0; i < tmp.ControlPoints.Count; i++)
{
var pt = transform * tmp.ControlPoints[i];
pc.ControlPoints.Add(pt);
}
}
// Erstellen Sie eine Instanz von newScene
var newScene = new Scene(pc);
//Beim Speichern müssen Sie ein SaveOptions-Objekt des Speicherformats erstellen
string output=System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".ply";
PlySaveOptions ply = new PlySaveOptions();
ply.PointCloud = true;
newScene.Save(output,ply);
Über Aspose.3D for .NET API
Aspose.3D ist eine CAD und Gameware API zum Laden, Modifizieren und Konvertieren von 3D Dateien. API ist eigenständig und erfordert keine 3D-Modellierungs- oder Rendering-Software. Man kann API einfach für Discreet3DS, WavefrontOBJ, STL (ASCII, binär), Universal3D, FBX (ASCII, binär), Collada, glTF, PLY, GLB, DirectX und weitere Formate.Kostenlose App zum Generieren von Punktwolken zu GLTF
Sehen Sie sich unsere Live-Demos an Punktwolke 3DS mit folgenden Vorteilen.
GLTF Was ist GLTF Dateiformat
glTF (GL Transmission Format) ist ein 3D Dateiformat, das 3D Modellinformationen im JSON-Format speichert. Die Verwendung von JSON minimiert sowohl die Größe von 3D-Assets als auch die Laufzeitverarbeitung, die zum Entpacken und Verwenden dieser Assets erforderlich ist. Es wurde für die effiziente Übertragung und das Laden von 3D Szenen und Modellen durch Anwendungen übernommen.
Weiter lesenAndere unterstützte App zum Generieren von Punktwolken in Formate
Mit C# kann man auch Punktwolken für viele andere Dateiformate generieren, einschließlich.