СОЗДАНИЕ ФИГУРЫ С ПОМОЩЬЮ ЭКСТРУДИРОВАНИЯ

Мухаяров Дильназ Данисович
Нефтекамский филиал Уфимского университета науки и технологий
студент, Факультет экономико-математический

Аннотация
В статье рассматривается процесс создания трёхмерных фигур с помощью метода экструдирования в библиотеке Three.js. Описываются основные этапы моделирования, особенности настройки параметров экструдирования, преимущества и ограничения данного подхода. Приводится пример реализации на языке JavaScript, а также визуализация результата. Результаты демонстрируют возможность быстрого и гибкого моделирования сложных объектов с помощью экструдирования в Three.js.

Ключевые слова: , , , , ,


Рубрика: 05.00.00 ТЕХНИЧЕСКИЕ НАУКИ

Библиографическая ссылка на статью:
Мухаяров Д.Д. Создание фигуры с помощью экструдирования // Современные научные исследования и инновации. 2026. № 1 [Электронный ресурс]. URL: https://web.snauka.ru/issues/2026/01/104085 (дата обращения: 08.04.2026).

Создание трехмерных моделей является важной задачей в области компьютерной графики и веб-разработки. Библиотека Three.js предоставляет мощные инструменты для визуализации и моделирования 3D-объектов непосредственно в браузере. Одним из распространенных методов моделирования является экструдирование — процесс вытягивания двумерных контуров в трехмерное пространство для получения сложных фигур. В данной статье рассматривается применение метода экструдирования для создания фигур в Three.js, описываются основные параметры, настройка и пример реализации.

Теоретические основы экструдирования в Three.js

Экструдирование — это процесс преобразования двумерных путей или форм в трехмерные объекты путём вытягивания вдоль заданной оси. В библиотеке Three.js для этого используется класс `ExtrudeBufferGeometry`, который принимает профиль формы и параметры экструдирования. Основные параметры включают:

- `steps`: количество шагов по оси экструдирования,

- `depth`: длина вытягивания,

- `bevelEnabled`: включение скругления краев,

- `bevelThickness`, `bevelSize`, `bevelSegments`: параметры скругления.

Процесс моделирования включает определение формы (Shape), настройку параметров экструдирования и создание геометрии, которая затем используется для построения меша.

Рисунок 1. Пример веб-производительности

Пример реализации на JavaScript

“`javascript

// Создаем сцену, камеру и рендерер

const scene = new THREE.Scene();

const camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.1, 1000);

const renderer = new THREE.WebGLRenderer();

renderer.setSize(window.innerWidth, window.innerHeight);

document.body.appendChild(renderer.domElement);

// Определяем двумерную форму (например, простой квадрат)

const shape = new THREE.Shape();

shape.moveTo(0, 0);

shape.lineTo(0, 1);

shape.lineTo(1, 1);

shape.lineTo(1, 0);

shape.lineTo(0, 0);

// Настраиваем параметры экструдирования

const extrudeSettings = {

steps: 2,

depth: 2,

bevelEnabled: true,

bevelThickness: 0.1,

bevelSize: 0.2,

bevelSegments: 3

};

// Создаем геометрию с помощью экструдирования

const geometry = new THREE.ExtrudeBufferGeometry(shape, extrudeSettings);

// Создаем материал

const material = new THREE.MeshNormalMaterial({wireframe: false});

// Создаем меш и добавляем его на сцену

const mesh = new THREE.Mesh(geometry, material);

scene.add(mesh);

// Располагаем камеру

camera.position.z = 5;

// Анимационный цикл

function animate() {

requestAnimationFrame(animate);

mesh.rotation.x += 0.01;

mesh.rotation.y += 0.01;

renderer.render(scene, camera);

}

animate();


Заключение

Метод экструдирования с помощью Three.js позволяет быстро создавать сложные трехмерные фигуры из простых двумерных контуров. Его преимущества включают гибкость настройки параметров, возможность моделирования различных форм и интеграцию в веб-приложения. Однако при работе с экструдированными объектами важно учитывать ограничения по сложности геометрии и производительности браузера. Правильный подбор параметров и формы профиля обеспечивает получение качественных и реалистичных моделей

Рисунок 2. Пример кода с экструдированием

Рисунок 3


Библиографический список
  1. three.js documentation. https://threejs.org/docs/index.html#api/en/geometries/ExtrudeBufferGeometry
  2. Borisov, A. V. Введение в трехмерное моделирование с помощью Three.js. — М.: Издательство, 2020.
  3. Kuhlman, K. WebGL and Three.js: Interactive 3D Graphics for the Web. — Packt Publishing, 2017.
  4. JavaScript Guide. MDN Web Docs. https://developer.mozilla.org/


Все статьи автора «Мухаяров Дильназ Данисович»


© Если вы обнаружили нарушение авторских или смежных прав, пожалуйста, незамедлительно сообщите нам об этом по электронной почте.