Циліндри зазвичай використовуються в тривимірних сценах. У різних програмах для обробки графіки вам може знадобитися створити різні типи циліндрів. Тут ми обговоримо, як створити різні види тривимірних циліндрів з різними трансформаціями та варіаціями. У ньому пояснюється, як створити 3D-циліндр зі зсувною нижньою стороною, зсувною верхньою частиною та вентиляторним циліндром із різною довжиною тета програмним шляхом у C#.
- Програмне створення 3D-циліндрів – встановлення C# API
- Створіть циліндр на C#
- Створення циліндра вентилятора в C#
Програмне створення 3D-циліндрів – встановлення C# API
Aspose.3D for .NET API можна використовувати для створення або керування 3D-сценами та об’єктами. Крім того, вам не потрібно встановлювати будь-які інші програми або інструменти для обробки 3D для роботи з API. Просто швидко налаштуйте API на сторінці Нові випуски або запустіть команду встановлення NuGet нижче:
PM> Install-Package Aspose.3D
Створіть циліндр на C#
Ви можете створити циліндр у тривимірній сцені, виконавши наведені нижче дії.
- Ініціалізація об’єкта класу Scene.
- Встановіть вершини для трансформації зміщення нижньої сторони.
- Додайте циліндр до сцени.
- Створіть інший циліндр і налаштуйте нижню частину.
- Додайте циліндр і Зберегти вихідну сцену.
Наведений нижче фрагмент коду демонструє, як виконати ці кроки та програмно створити циліндр у C#:
// Створіть сцену
Scene scene = new Scene();
// Створіть циліндр 1
var cylinder1 = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);
// Встановити OffsetBottom
cylinder1.OffsetBottom = new Aspose.ThreeD.Utilities.Vector3(5, 3, 0);
// Додайте до сцени циліндр без ShearBottom
scene.RootNode.CreateChildNode(cylinder1);
// Створіть циліндр 2
var cylinder2 = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);
// Індивідуальне зрізне дно для циліндра 2
cylinder2.ShearBottom = new Aspose.ThreeD.Utilities.Vector2(0, 0.83);
// Додайте циліндр 2 до сцени
scene.RootNode.CreateChildNode(cylinder2).Transform.Translation = new Aspose.ThreeD.Utilities.Vector3(10, 0, 0);
// Зберегти сцену
scene.Save("CustomizedCylinder.obj", FileFormat.WavefrontOBJ);
Крім того, на наступному зображенні показано вихідне зображення, створене за допомогою наведеного вище фрагмента коду.
Створення циліндра вентилятора в C#
Наступні кроки пояснюють, як створити циліндр вентилятора в 3D-сцені:
- Створіть об’єкт класу Scene.
- Створіть циліндр і встановіть для GenerateFanCylinder значення true.
- Встановіть довжину тета та створіть дочірній вузол.
- Створіть циліндр без вентилятора та повторіть описані вище дії.
- Збережіть вихідну сцену.
У наступному фрагменті коду детально описано, як створити циліндр вентилятора програмним шляхом у C#:
// Створіть сцену
Scene scene = new Scene();
// Створіть циліндр
var fan = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);
// Установіть для GenerateGanCylinder значення true
fan.GenerateFanCylinder = true;
// Встановіть ThetaLength
fan.ThetaLength = Aspose.ThreeD.Utilities.MathUtils.ToRadian(270);
// Створити ChildNode
scene.RootNode.CreateChildNode(fan).Transform.Translation = new Aspose.ThreeD.Utilities.Vector3(10, 0, 0);
// Створіть циліндр without a fan
var nonfan = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);
// Установіть для GenerateGanCylinder значення false
nonfan.GenerateFanCylinder = false;
// Встановити ThetaLength
nonfan.ThetaLength = Aspose.ThreeD.Utilities.MathUtils.ToRadian(270);
// Створити ChildNode
scene.RootNode.CreateChildNode(nonfan);
// Зберегти сцену
scene.Save("FanCylinder.obj", FileFormat.WavefrontOBJ);
На наступному знімку екрана показано вихідну сцену, створену за допомогою цього прикладу коду:
Отримайте безкоштовну тимчасову ліцензію
Ви можете запросити безкоштовну тимчасову ліцензію, щоб перевірити API на повну потужність.
Висновок
У цій статті ви дізналися, як програмно створити 3D-циліндр на C#. Тут описано, як змінити фрагмент коду, щоб створити різноманітні форми циліндрів. Крім того, ви можете дослідити багато інших функцій API, переглянувши розділ документація. У разі будь-яких неясностей зв’яжіться з нами на форумі.