Público API Cambios en Aspose.3D 16.9.0
Resumen de contenidos
- Importación 3D Escena de la fuente PDF
- Guardar una escena 3D en el formato PDF
- Agrega el método triangular en la clase Aspose.ThreeD. Entidades. PolygonModificer
- Agrega dos métodos binormales BuildTangenten Aspose.ThreeD. Entidades. Clase PolygonModificer
Importación 3D Escena de la fuente PDF
Usando la versión reciente (16.9.0) o superior, los desarrolladores pueden recuperar 3D escenas de un archivo de entrada PDF.
Añade Aspose.ThreeD. Formatos. Clase PdfLoadOptions
Hemos añadido PdfLoadOptions clase. Ayuda a cargar contenido desde el archivo de entrada PDF. Los desarrolladores pueden aplicar la contraseña para los PDF protegidos.
Escena abierta desde un archivo PDF protegido por contraseña
// set path with filename and extension
string path = @"House_Design.pdf";
// create a new scene
Scene scene = new Scene();
// use loading options and apply password
PdfLoadOptions opt = new PdfLoadOptions() {Password = Encoding.UTF8.GetBytes("password")};
// open scene
scene.Open(path, opt);
Agrega Aspose.ThreeD.FileFormat y Aspose.ThreeD. Formatos. Clase PdfFormat
Hemos agregado una entrada de formato PDF en la clase FileFormat para fines de carga y ahorro. La clase PdfFormat ayuda a manipular PDFs.
public static readonly Aspose.ThreeD.Formats.PdfFormat PDF;
Extraer todo el contenido en bruto 3D del archivo PDF
// set PDF file path and password
string path = @"House_Design.pdf";
byte[]password = null;
// extract 3D contents
List<byte[]> contents = FileFormat.PDF.Extract(path, password);
int i = 1;
// iterate through the contents and in separate 3D files
foreach (byte[]content in contents)
{
string fileName = "3d-" + (i++);
File.WriteAllBytes(fileName, content);
}
Extraiga todas las escenas 3D y guárdelos en un archivo FBX
// set PDF file path and password
string path = @"House_Design.pdf";
byte[]password = null;
List<Scene> scenes = FileFormat.PDF.ExtractScene(path, password);
int i = 1;
// iterate through the scenes and save in 3D files
foreach (Scene scene in scenes)
{
string fileName = "3d-" + (i++) + ".fbx";
scene.Save(fileName, FileFormat.FBX7400ASCII);
}
Guardar una escena 3D en el formato PDF
Usando la versión reciente (16.9.0) o superior, los desarrolladores pueden guardar todos los archivos 3D compatibles en el formato PDF.
Agrega Aspose.ThreeD. Formatos. Clase PdfSaveOptions y Aspose.ThreeD. Formatos. Enums PdfLightingScheme/PdfRenderMode
PdfSaveOptions ayuda a aplicar la configuración antes de guardar en el formato de salida PDF. Los desarrolladores pueden establecer un modo de renderizado y un esquema de iluminación antes de guardar una escena 3D en el formato PDF como se indica a continuación:
Crear un 3D PDF con un cilindro, y renderizado en modo de ilustración sombreada con iluminación optimizada CAD
// create a new scene
Scene scene = new Scene();
// create a cylinder child node
scene.RootNode.CreateChildNode("cylinder", new Cylinder()).Material = new PhongMaterial() { DiffuseColor = new Vector3(Color.DarkCyan)};
// set rendering mode and lighting scheme
PdfSaveOptions opt = new PdfSaveOptions();
opt.LightingScheme = PdfLightingScheme.CAD;
opt.RenderMode = PdfRenderMode.ShadedIllustration;
// save in the PDF format
scene.Save("output.pdf", opt);
Agrega el método triangular en la clase Aspose.ThreeD. Entidades. PolygonModificer
Hemos agregado otra sobrecarga del método Triangulate en la clase PolygonModificer que toma un objeto de clase Scene como parámetro.
Convertir todos los polígonos a triángulos en el archivo FBX
// load an existing 3D file
Scene scene = new Scene("original.fbx");
// triangulate a scene
PolygonModifier.Triangulate(scene);
// save 3D scene
scene.Save("triangulated.fbx", FileFormat.FBX7400ASCII);
Agrega dos métodos binormales BuildTangenten Aspose.ThreeD. Entidades. Clase PolygonModificer
Hemos añadido dos métodos BuildTangentBinormal en la clase PolygonModificer. Un método toma el objeto de clase Scene como un parámetro y otro toma el objeto de clase Mesh como un parámetro.
Crear datos tangente y binormal para todas las mallas en el archivo FBX
// load an existing 3D file
Scene scene = new Scene("original.fbx");
// triangulate a scene
PolygonModifier.BuildTangentBinormal(scene);
// save 3D scene
scene.Save("output.fbx", FileFormat.FBX7400ASCII);