<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Электронный научно-практический журнал «Современные научные исследования и инновации» &#187; вращение</title>
	<atom:link href="http://web.snauka.ru/issues/tag/vrashhenie/feed" rel="self" type="application/rss+xml" />
	<link>https://web.snauka.ru</link>
	<description></description>
	<lastBuildDate>Sat, 18 Apr 2026 09:41:14 +0000</lastBuildDate>
	<language>ru</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Создание фигуры с помощью вращения и Three.js</title>
		<link>https://web.snauka.ru/issues/2026/01/104086</link>
		<comments>https://web.snauka.ru/issues/2026/01/104086#comments</comments>
		<pubDate>Wed, 14 Jan 2026 14:50:10 +0000</pubDate>
		<dc:creator>Мухаяров Дильназ Данисович</dc:creator>
				<category><![CDATA[05.00.00 ТЕХНИЧЕСКИЕ НАУКИ]]></category>
		<category><![CDATA[3D-графика]]></category>
		<category><![CDATA[three.js]]></category>
		<category><![CDATA[WebGL]]></category>
		<category><![CDATA[вращение]]></category>
		<category><![CDATA[программирование на JavaScript]]></category>
		<category><![CDATA[трехмерное моделирование]]></category>

		<guid isPermaLink="false">https://web.snauka.ru/issues/2026/01/104086</guid>
		<description><![CDATA[Создание сложных трехмерных фигур является одной из фундаментальных задач в области компьютерной графики и веб-разработки. Библиотека Three.js предоставляет инструменты для моделирования и визуализации объектов в браузере. Одним из эффективных методов моделирования является вращение — процесс вращения двумерных профилей вокруг оси для получения объемных фигур. В данной статье рассматривается применение метода вращения в Three.js, его основные [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Создание сложных трехмерных фигур является одной из фундаментальных задач в области компьютерной графики и веб-разработки. Библиотека Three.js предоставляет инструменты для моделирования и визуализации объектов в браузере. Одним из эффективных методов моделирования является вращение — процесс вращения двумерных профилей вокруг оси для получения объемных фигур. В данной статье рассматривается применение метода вращения в Three.js, его основные параметры, особенности реализации и практические примеры.</p>
<p style="text-align: justify;"><span>Теоретические основы метода вращения в Three.js<br />
</span></p>
<p style="text-align: justify;"><span>Метод вращения основан на формировании трехмерной формы путем вращения двумерного контура или профиля вокруг оси (обычно оси Y). В библиотеке Three.js для этого используется класс `LatheBufferGeometry`, который принимает массив точек профиля и параметры вращения. Основные параметры включают:<br />
</span></p>
<p style="text-align: justify;"><span>- `segments`: число сегментов по окружности, определяющее гладкость поверхности,<br />
</span></p>
<p style="text-align: justify;"><span>- `phiStart` и `phiLength`: начальный угол и длина сектора вращения,<br />
</span></p>
<p style="text-align: justify;"><span>- `points`: массив точек профиля, задающих форму.<br />
</span></p>
<p style="text-align: justify;"><span>Процесс моделирования включает создание массива точек, определяющих профиль, и последующее вращение этого профиля вокруг оси для формирования объемной модели.<br />
</span></p>
<p style="text-align: center;"><img src="https://web.snauka.ru/wp-content/uploads/2026/01/011426_1447_1.png" alt="" /></p>
<p style="text-align: center;"><span style="color: #5b9bd5;"><strong>Рисунок 1<br />
</strong></span></p>
<p style="text-align: justify;"><span>Пример реализации на JavaScript<br />
</span></p>
<p style="text-align: justify;"><span>&#8220;`javascript<br />
</span></p>
<p style="text-align: justify;"><span>// Создаем сцену, камеру и рендерер<br />
</span></p>
<p style="text-align: justify;"><span>const scene = new THREE.Scene();<br />
</span></p>
<p style="text-align: justify;"><span>const camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.1, 1000);<br />
</span></p>
<p style="text-align: justify;"><span>const renderer = new THREE.WebGLRenderer();<br />
</span></p>
<p style="text-align: justify;"><span>renderer.setSize(window.innerWidth, window.innerHeight);<br />
</span></p>
<p style="text-align: justify;"><span>document.body.appendChild(renderer.domElement);<br />
</span></p>
<p style="text-align: justify;"><span>// Определяем профиль с помощью массива точек<br />
</span></p>
<p style="text-align: justify;"><span>const points = [];<br />
</span></p>
<p style="text-align: justify;"><span>points.push(new THREE.Vector2(0, 0));<br />
</span></p>
<p style="text-align: justify;"><span>points.push(new THREE.Vector2(1, 0));<br />
</span></p>
<p style="text-align: justify;"><span>points.push(new THREE.Vector2(1.5, 1));<br />
</span></p>
<p style="text-align: justify;"><span>points.push(new THREE.Vector2(1, 2));<br />
</span></p>
<p style="text-align: justify;"><span>points.push(new THREE.Vector2(0, 2));<br />
</span></p>
<p style="text-align: justify;"><span>// Создаем геометрию вращением<br />
</span></p>
<p style="text-align: justify;"><span>const geometry = new THREE.LatheBufferGeometry(points, 32, 0, Math.PI * 2);<br />
</span></p>
<p style="text-align: justify;"><span>// Создаем материал<br />
</span></p>
<p style="text-align: justify;"><span>const material = new THREE.MeshNormalMaterial({wireframe: false});<br />
</span></p>
<p style="text-align: justify;"><span>// Создаем меш и добавляем на сцену<br />
</span></p>
<p style="text-align: justify;"><span>const mesh = new THREE.Mesh(geometry, material);<br />
</span></p>
<p style="text-align: justify;"><span>scene.add(mesh);<br />
</span></p>
<p style="text-align: justify;"><span>// Располагаем камеру<br />
</span></p>
<p style="text-align: justify;"><span>camera.position.z = 5;<br />
</span></p>
<p style="text-align: justify;"><span>// Анимационный цикл<br />
</span></p>
<p style="text-align: justify;"><span>function animate() {<br />
</span></p>
<p style="text-align: justify; padding-left: 30px;"><span> requestAnimationFrame(animate);<br />
</span></p>
<p style="text-align: justify; padding-left: 30px;"><span> mesh.rotation.y += 0.01;<br />
</span></p>
<p style="text-align: justify; padding-left: 30px;"><span> renderer.render(scene, camera);<br />
</span></p>
<p style="text-align: justify;"><span>}<br />
</span></p>
<p style="text-align: justify;"><span>animate();<br />
</span></p>
<p style="text-align: justify;"><span>&#8220;`<br />
</span></p>
<p style="text-align: center;"><img src="https://web.snauka.ru/wp-content/uploads/2026/01/011426_1447_2.png" alt="" /></p>
<p style="text-align: center;"><span style="color: #5b9bd5;"><strong><span>Рисунок 2</span><span><br />
</span></strong></span></p>
<p style="text-align: justify;"><span><strong>Заключение<br />
</strong></span></p>
<p style="text-align: justify;"><span>Метод вращения с помощью `LatheBufferGeometry` в Three.js позволяет создавать разнообразные объемные фигуры из простых профилей. Его преимущество — возможность моделирования сложных форм с минимальными усилиями и высокой гибкостью. Однако при работе важно правильно подбирать профиль и параметры сегментов для достижения желаемого качества поверхности. Использование метода вращения широко применяется в моделировании предметов, техники, ювелирных изделий и архитектурных элементов.</span></p>
]]></content:encoded>
			<wfw:commentRss>https://web.snauka.ru/issues/2026/01/104086/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
