Просмотрите наши продукты
Aspose.3D for .NET 19,6 Примечания к выпуску
Улучшения и изменения
Ключ | Сводка | Категория |
---|---|---|
THREEDNET-511 | Улучшить создание цилиндра | Новая функция |
THREEDNET-507 | Потерять некоторые материалы при открытии файла RVM | Ошибка |
THREEDNET-508 | Система может не распределять набор дескрипторов иногда в рендерере Vulkan. | Ошибка |
Публичные API и обратные несовместимые изменения
См. Список любых изменений, внесенных в общедоступный API, таких как добавленные, переименованные, удаленные или устаревшие члены, а также любые несовместимые назад изменения, внесенные в Aspose.3D for .NET. Если у вас есть опасения по поводу каких-либо изменений, пожалуйста, поднимите их наФорум поддержки Aspose.3D.
Добавлено новое свойство OffsetTop в классе Aspose.ThreeD.Entities. Цилиндр
/// <summary>
/// Gets or sets the vertices transformation offset of the top side.
/// </summary>
public Vector3 OffsetTop
{
get;
set;
}
Добавлено новое свойство OffsetBottom в классе Aspose.ThreeD.Entities. Цилиндр
/// <summary>
/// Gets or sets the vertices transformation offset of the bottom side.
/// </summary>
public Vector3 OffsetBottom
{
get;
set;
}
Код образца для генерации цилиндра с настраиваемым OffsetTop:
Scene scene = new Scene();
var fan = new Cylinder(2, 2, 10, 20, 1, false);
fan.OffsetTop = new Vector3(5, 3, 0);
scene.RootNode.CreateChildNode(fan).Transform.Translation = new Vector3(10, 0, 0);
var nonfan = new Cylinder(2, 2, 10, 20, 1, false);
scene.RootNode.CreateChildNode(nonfan);
scene.Save("test.obj", FileFormat.WavefrontOBJ);
Предварительный просмотр:
У левого естьОфсеттопУстановлен на (5, 3, 0), легко увидеть, что верхняя крышка сдвинулась, и весь туловище также пострадает.
Добавлено новое свойство GenerateFanCylinder в классе Aspose.ThreeD.Entities. Цилиндр
/// <summary>
/// Gets or sets whether to generate the fan-style cylinder when the ThetaLength is less than 2*PI, otherwise the model will not be cut.
/// </summary>
public bool GenerateFanCylinder
{
get;set;
}
Код образца для генерации цилиндра в стиле вентилятора и цилиндра без вентилятора:
Scene scene = new Scene();
var fan = new Cylinder(2, 2, 10, 20, 1, false);
fan.GenerateFanCylinder = true;
fan.ThetaLength = MathUtils.ToRadian(270);
scene.RootNode.CreateChildNode(fan).Transform.Translation = new Vector3(10, 0, 0);
var nonfan = new Cylinder(2, 2, 10, 20, 1, false);
nonfan.GenerateFanCylinder = false;
nonfan.ThetaLength = MathUtils.ToRadian(270);
scene.RootNode.CreateChildNode(nonfan);
scene.Save("test.obj", FileFormat.WavefrontOBJ);
Предварительный просмотр:
Левый цилиндр имеет GenerateFanCylinder = false, а правый-GenerateFanCylinder = true.
Добавлено новое свойство ShearTop в классе Aspose.ThreeD.Entities. Цилиндр
/// <summary>
/// Gets or sets of the shear transform of the top side, vector stores the (x-axis, z-axis) shear value that measured in radian, default value is (0, 0)
/// </summary>
public Vector2 ShearTop
{
get;
set;
}
Добавлено новое свойство ShearBottom в классе Aspose.ThreeD.Entities. Цилиндр
/// <summary>
/// Gets or sets of the shear transform of the bottom side, vector stores the (x-axis, z-axis) shear value that measured in radian, default value is (0, 0)
/// </summary>
public Vector2 ShearBottom
{
get;
set;
}
Код образца, чтобы показать использование ShearBottom(ShearTop):
Scene scene = new Scene();
var cylinder1 = new Cylinder(2, 2, 10, 20, 1, false);
cylinder1.ShearBottom = new Vector2(0, 0.83);// shear 47.5deg in xy plane(z-axis)
scene.RootNode.CreateChildNode(cylinder1).Transform.Translation = new Vector3(10, 0, 0);
var cylinder2 = new Cylinder(2, 2, 10, 20, 1, false);
scene.RootNode.CreateChildNode(cylinder2);
scene.Save("test.obj", FileFormat.WavefrontOBJ);
Предварительный просмотр:
Левый цилиндр имеет ShearBottom до (0, 0,83), а правый-порядковый цилиндр.