Публичные изменения API в Aspose.3D 16.9.0
Содержание Резюме
- Импорт сцены 3D из источника PDF
- Сохраните сцену 3D в формате PDF
- Добавляет метод триангуляции в класс Aspose.ThreeD. Сущности. PolygonModifier
- Добавляет два метода BuildTangentBinormal в класс Aspose.ThreeD. Entity. PolygonModifier
Импорт сцены 3D из источника PDF
Используя последнюю версию (16.9.0) или выше, разработчики могут получать сцены 3D из входного файла PDF.
Добавляет Aspose.ThreeD. Форматы. Класс PdfLoadOptions
Мы добавили класс PdfLoadOptions. Это помогает при загрузке содержимого из входного файла PDF. Разработчики могут применять пароль для защищенных PDF-файлов.
Открыть сцену из защищенного паролем файла PDF
// 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);
Добавляет Aspose.ThreeD.FileFormat и Aspose.ThreeD. Форматы. Класс PDFFormat
Мы добавили запись формата PDF в класс FileFormat для загрузки и сохранения. Класс PdfFormat помогает манипулировать PDF-файлами.
public static readonly Aspose.ThreeD.Formats.PdfFormat PDF;
Извлеките все необработанное содержимое 3D из файла 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);
}
Извлеките все сцены 3D и сохраните их в файл 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);
}
Сохраните сцену 3D в формате PDF
Используя последнюю версию (16.9.0) или выше, разработчики могут сохранять все поддерживаемые файлы 3D в формате PDF.
Добавляет Aspose.ThreeD. Форматы. Класс PdfSaveOptions и Aspose.ThreeD. Форматы. Схема PDFLightingScheme/PdfRenderMode Сводки
PdfSaveOptions помогает применить настройку перед сохранением в формате вывода PDF. Разработчики могут установить режим рендеринга и схему освещения перед сохранением сцены 3D в формате PDF, как показано ниже:
Создайте 3D PDF с цилиндром и отрисовайте в режиме затененной иллюстрации с оптимизированным освещением 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);
Добавляет метод триангуляции в класс Aspose.ThreeD. Сущности. PolygonModifier
Мы добавили еще одну перегрузку метода Triangulate в класс PolygonModifier, который принимает объект класса Scene в качестве параметра.
Преобразовать все многоугольники в треугольники в файле 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);
Добавляет два метода BuildTangentBinormal в класс Aspose.ThreeD. Entity. PolygonModifier
Мы добавили два метода BuildTangentBinormal в класс PolygonModifier. Один метод принимает объект класса Scene в качестве параметра, а другой-объект класса Mesh в качестве параметра.
Построение касательных и бинонормальных данных для всех ячеек в файле 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);