Punktwolke zu OBJ über C# generieren
Erstellen Sie Ihre eigenen .NET-Apps, um mit serverseitigen APIs Punktwolken in OBJ-Dateien zu generieren.
So generieren Sie eine Punktwolke in eine OBJ-Datei mit C#
Um eine Punktwolke in der OBJ-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 OBJ über C#
Aspose.3D macht es Entwicklern leicht, mit nur wenigen Codezeilen Punktwolken für die OBJ-Datei zu generieren.
- Laden Sie die OBJ-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 OBJ
//Die Quelldatei, die zum Generieren der Punktwolke benötigt wird
string file = "template.obj";
// 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 OBJ
Sehen Sie sich unsere Live-Demos an Punktwolke 3DS mit folgenden Vorteilen.
OBJ Was ist OBJ Dateiformat
OBJ-Dateien werden von der Advanced Visualizer-Anwendung von Wavefront verwendet, um die geometrischen Objekte zu definieren und zu speichern. Die Rückwärts- und Vorwärtsübertragung geometrischer Daten wird durch OBJ-Dateien ermöglicht. Sowohl polygonale Geometrie wie Punkte, Linien, Texturscheitel, Flächen als auch Freiformgeometrie (Kurven und Flächen) werden vom OBJ-Format unterstützt. Dieses Format unterstützt keine Animationen oder Informationen in Bezug auf Licht und Position von Szenen.
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.