Générer un nuage de points vers U3D via C#
Créez vos propres applications .NET pour générer des nuages de points vers des fichiers U3D à l'aide d'API côté serveur.
Comment générer un nuage de points dans un fichier U3D à l\'aide de C#
Afin de générer un nuage de points dans le fichier U3D, nous utiliserons
API qui est une plate-forme riche en fonctionnalités, puissante et facile à utiliser API pour C# à utiliser avec générer un nuage de points. Ouvrir
gestionnaire de paquets, recherchez Aspose.3D et installer. Vous pouvez également utiliser la commande suivante à partir de la console du gestionnaire de packages.
Commande de la console du gestionnaire de packages
PM> Install-Package Aspose.3D
Étapes pour générer un nuage de points vers U3D via C#
Aspose.3D permet aux développeurs de générer facilement un nuage de points dans le fichier U3D avec seulement quelques lignes de code.
- Charger le fichier U3D via le constructeur de la classe Scene- Obtenir l’objet nuage de points de Aspose.3D- Créer un objet de transformation via la méthode EvaluateGlobalTransform- Générer un nuage de points à l’aide de la méthode Merge- Appelez la méthode Scene.Save avec l’objet
Configuration requise
Aspose.3D for .NET est pris en charge sur tous les principaux systèmes d’exploitation. Assurez-vous simplement que vous disposez des prérequis suivants.
- Microsoft Windows ou un système d’exploitation compatible avec .NET Framework, .NET Core, Mono- Environnement de développement comme Microsoft Visual Studio- Aspose.3D for .NET référencé dans votre projet
Code C# pour générer un nuage de points vers U3D
//Le fichier source qui doit générer le nuage de points
string file = "template.u3d";
// créer une instance de Scene
Scene scene = new Scene(file);
//Obtenez l'objet nuage de points de Aspose.3D et générez un nuage de points
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;
});
//Méthode de fusion pour générer des nuages de points
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);
}
}
// créer une instance de newScene
var newScene = new Scene(pc);
//Lors de l'enregistrement, vous devez créer un objet SaveOptions du format d'enregistrement
string output=System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".ply";
PlySaveOptions ply = new PlySaveOptions();
ply.PointCloud = true;
newScene.Save(output,ply);
À propos de Aspose.3D for .NET API
Aspose.3D est un CAD et un Gameware API pour charger, modifier et convertir des fichiers 3D. API est autonome et ne nécessite aucun logiciel de modélisation ou de rendu 3D. On peut facilement utiliser API pour Discreet3DS, WavefrontOBJ, STL (ASCII, Binaire), Universal3D, FBX (ASCII, Binaire), Collada, glTF, PLY, GLB, DirectX et d’autres formats.Application gratuite pour générer un nuage de points vers U3D
Consultez nos démos en direct pour Nuage de points 3DS avec les avantages suivants.
U3D Qu'est-ce que le format de fichier U3D
U3D (Universal 3D) est un format de fichier compressé et une structure de données pour l'infographie 3D. Il contient 3D des informations sur le modèle telles que les maillages triangulaires, l'éclairage, l'ombrage, les données de mouvement, les lignes et les points avec couleur et structure. Le format a été accepté en tant que norme ECMA-363 en août 2005. 3D PDF documents prennent en charge l'incorporation de U3D objets et peuvent être visualisés dans Adobe Reader (version 7 et ultérieure).
En savoir plusAutre application prise en charge pour générer des nuages de points aux formats
En utilisant C#, One peut également générer un nuage de points dans de nombreux autres formats de fichiers, y compris.