Punktwolke zu U3D über C# generieren
Erstellen Sie Ihre eigenen .NET-Apps, um mit serverseitigen APIs Punktwolken in U3D-Dateien zu generieren.
So generieren Sie eine Punktwolke in eine U3D-Datei mit C#
Um eine Punktwolke in der U3D-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 U3D über C#
Aspose.3D macht es Entwicklern leicht, mit nur wenigen Codezeilen Punktwolken für die U3D-Datei zu generieren.
- Laden Sie die U3D-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 U3D
//Die Quelldatei, die zum Generieren der Punktwolke benötigt wird
string file = "template.u3d";
// 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 U3D
Sehen Sie sich unsere Live-Demos an Punktwolke 3DS mit folgenden Vorteilen.
U3D Was ist U3D Dateiformat
U3D (Universal 3D) ist ein komprimiertes Dateiformat und eine Datenstruktur für 3D Computergrafiken. Es enthält 3D Modellinformationen wie Dreiecksnetze, Beleuchtung, Schattierung, Bewegungsdaten, Linien und Punkte mit Farbe und Struktur. Das Format wurde im August 2005 als ECMA-363-Standard akzeptiert. 3D PDF Dokumente unterstützen das Einbetten von U3D Objekten und können in Adobe Reader (Version 7 und höher) angezeigt werden.
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.