Three.js 是一个用于在 Web 上创建 3D 图形的 JavaScript 库。SphereGeometry
是 Three.js 中的一个类,用于创建球体几何体。下面是关于 SphereGeometry
方法的参数介绍以及一个简单的渲染实例。
参数
SphereGeometry
构造函数的参数包括:
radius
(必需):球体的半径。widthSegments
(可选):水平方向的分段数,决定了球体的水平切片数。heightSegments
(可选):垂直方向的分段数,决定了球体的纵向切片数。phiStart
(可选):纵向起始角度,以弧度表示。phiLength
(可选):纵向角度范围,以弧度表示。thetaStart
(可选):水平起始角度,以弧度表示。thetaLength
(可选):水平角度范围,以弧度表示。
渲染实例
以下是一个简单的 Three.js 场景,展示了如何使用 SphereGeometry
创建球体几何体并渲染它:
import * as THREE from 'three';
// 创建场景、相机和渲染器
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 radius = 1;
const widthSegments = 32;
const heightSegments = 16;
const geometry = new THREE.SphereGeometry(radius, widthSegments, heightSegments);
// 创建材质
const material = new THREE.MeshBasicMaterial({ color: 0xff0000 });
// 创建球体网格
const sphere = new THREE.Mesh(geometry, material);
scene.add(sphere);
// 设置相机位置
camera.position.z = 5;
// 渲染循环
const animate = () => {
requestAnimationFrame(animate);
// 使球体旋转
sphere.rotation.x += 0.01;
sphere.rotation.y += 0.01;
renderer.render(scene, camera);
};
animate();
在这个实例中,我们首先创建了场景、相机和渲染器,然后使用 SphereGeometry
创建了一个球体几何体,并将其添加到场景中。我们使用 MeshBasicMaterial
材质创建了一个基本网格,并设置了相机的位置。最后,我们在渲染循环中更新球体的旋转并调用 renderer.render
来渲染场景。
这只是一个简单的渲染实例,你可以根据自己的需求来调整球体的参数、材质和场景设置。