Просмотрите наши продукты

Примечания к выпуску Aspose.3D для .NET 24.3

Улучшения и изменения

KeySummaryCategory
THREEDNET-1514Написать больше примеров кода, чтобы охватить больше методов и типов.Задача
THREEDNET-1523Оптимизировать сетку, вызывающую искажениеЗадача
THREEDNET-1516Модель, сгенерированная SweptAreaSolid, не должна быть плоскойИсправление ошибки
THREEDNET-1517Карта металлических оттенков и карта шероховатости отсутствуют при преобразовании fbx в glbИсправление ошибки

Изменения API

Добавлены члены в класс Aspose.ThreeD.Entities.Mesh:

        /// <summary>
        /// Оптимизируйте использование памяти сетки, устраняя дублирующиеся контрольные точки
        /// </summary>
        /// <param name="vertexElements">Оптимизируйте данные о дублирующихся вершинах</param>
        /// <param name="toleranceControlPoint">Толерантность для контрольной точки, значение по умолчанию - 1e-9</param>
        /// <param name="toleranceNormal">Толерантность для нормали/тангенса/бинормали, значение по умолчанию - 1e-9</param>
        /// <param name="toleranceUV">Толерантность для UV, значение по умолчанию - 1e-9</param>
        /// <returns>Новый экземпляр сетки с компактным использованием памяти</returns>
        /// <seealso href="https://products.aspose.com/3d/tutorial/deduplicate-mesh-data">Tutorial - deduplicate mesh data</seealso>
        public Mesh Optimize(bool vertexElements, float toleranceControlPoint = 1e-9f, float toleranceNormal = 1e-9f, float toleranceUV = 1e-9f)

Новый метод позволяет контролировать толерантность для контрольной точки, нормали и UV.

Добавлены члены в класс Aspose.ThreeD.Formats.FbxLoadOptions:

        /// <summary>
        /// Получает или задает, следует ли включать совместимый режим.
        /// Совместимый режим попытается поддерживать нестандартные определения FBX, такие как материалы PBR, экспортированные Blender.
        /// Значение по умолчанию - false.
        /// </summary>
        public bool CompatibleMode { get; set; }

FBX не поддерживает материал PBR, разные экспортеры используют разные определения для хранения параметров материала PBR, этот параметр позволяет максимально восстановить материал PBR.

Добавлены члены в класс Aspose.ThreeD.Utilities.FileSystem:

        /// <summary>
        /// Инициализирует новый <see cref="FileSystem"/>, который обращается только к локальному каталогу.
        /// Все операции чтения/записи в этом экземпляре FileSystem будут сопоставлены с указанным каталогом.
        /// </summary>
        /// <param name="directory">Каталог в вашей физической файловой системе в качестве виртуального корневого каталога.</param>
        public static FileSystem CreateLocalFileSystem(string directory)

        /// <summary>
        /// Создает файловую систему на основе памяти, которая будет сопоставлять операции чтения/записи в память.
        /// </summary>
        public static FileSystem CreateMemoryFileSystem(IDictionary<string, MemoryStream> files = null)

        /// <summary>
        /// Создает фиктивную файловую систему, операции чтения/записи являются фиктивными операциями.
        /// </summary>
        public static FileSystem CreateDummyFileSystem()

        /// <summary>
        /// Создает файловую систему для предоставления доступа только для чтения к указанному zip-файлу или zip-потоку.
        /// Файловая система будет удалена после операции открытия/сохранения.
        /// </summary>
        /// <remarks>
        /// Это файловая система только для чтения, поэтому операции записи не поддерживаются.
        /// </remarks>
        public static FileSystem CreateZipFileSystem(Stream stream, string baseDir = "/")

        /// <summary>
        /// Файловая система для предоставления доступа только для чтения к указанному zip-файлу или zip-потоку.
        /// Файловая система будет удалена после операции открытия/сохранения.
        /// </summary>
        public static FileSystem CreateZipFileSystem(string fileName)

Эти методы предоставляют быстрые способы создания встроенных FileSystem для вас.

Пример кода:

    var inputFile = "input.fbx";
    var format = FileFormat.Detect(inputFile);
    //создайте экземпляр параметров загрузки и укажите локальную файловую систему
    var opt = format.CreateLoadOptions();
    opt.FileSystem = FileSystem.CreateLocalFileSystem("textures/");
    //загрузите файл
    var scene = Scene.FromFile(inputFile, opt);

Удалены члены из класса Aspose.ThreeD.Utilities.FVector2:

        float x{ get;set;}
        float y{ get;set;}

Эти интерфейсы удалены по расписанию.

Удалены члены из класса Aspose.ThreeD.Utilities.FVector3:

        float x{ get;set;}
        float y{ get;set;}
        float z{ get;set;}
        public static readonly Aspose.ThreeD.Utilities.FVector3 UnitScale;

Эти интерфейсы удалены по расписанию.

Удалены члены из класса Aspose.ThreeD.Utilities.FVector4:

        float x{ get;set;}
        float y{ get;set;}
        float z{ get;set;}
        float w{ get;set;}

Эти интерфейсы удалены по расписанию.

Удалены члены из класса Aspose.ThreeD.Utilities.Quaternion:

        double x{ get;set;}
        double y{ get;set;}
        double z{ get;set;}
        double w{ get;set;}

Эти интерфейсы удалены по расписанию.

Удалены члены из класса Aspose.ThreeD.Utilities.Vector2:

        double x{ get;set;}
        double y{ get;set;}

Эти интерфейсы удалены по расписанию.

Удалены члены из класса Aspose.ThreeD.Utilities.Vector3:

        double x{ get;set;}
        double y{ get;set;}
        double z{ get;set;}
        public static readonly Aspose.ThreeD.Utilities.Vector3 Origin;
        public static readonly Aspose.ThreeD.Utilities.Vector3 UnitScale;
        public static readonly Aspose.ThreeD.Utilities.Vector3 XAxis;
        public static readonly Aspose.ThreeD.Utilities.Vector3 YAxis;
        public static readonly Aspose.ThreeD.Utilities.Vector3 ZAxis;

Эти интерфейсы удалены по расписанию.

Удалены члены из класса Aspose.ThreeD.Utilities.Vector4:

        double x{ get;set;}
        double y{ get;set;}
        double z{ get;set;}
        double w{ get;set;}

Эти интерфейсы удалены по расписанию.


 
 Русский