创建模型:
1.长方体:
THREE.CubeGeometry(width, height, depth, widthSegments, heightSegments, depthSegments)
width是x方向上的长度;
height是y方向上的长度;
depth是z方向上的长度;
后三个参数分别是在三个方向上的分段数,如widthSegments为3的话,代表x方向上水平分为三份。一般情况下不需要分段的话,可以不设置后三个参数,后三个参数的缺省值为1.
2:长方形:
width
height
depth
widthSegments
3
1.
2:长方形:
THREE.PlaneGeometry(width, height, widthSegments, heightSegments)
width是x方向上的长度;
height是y方向上的长度;
后两个参数同样表示分段。
width
height
3.球形:
3.球形:
THREE.SphereGeometry(radius, segmentsWidth, segmentsHeight, phiStart, phiLength, thetaStart, thetaLength)
radius是半径;
segmentsWidth表示经度上的切片数;
segmentsHeight表示纬度上的切片数;
phiStart表示经度开始的弧度;
phiLength表示经度跨过的弧度;
thetaStart表示纬度开始的弧度;
thetaLength表示纬度跨过的弧度;
4.圆形或者扇形:
radius
segmentsWidth
segmentsHeight
phiStart
phiLength
thetaStart
thetaLength
THREE.CircleGeometry(radius, segments, thetaStart, thetaLength)
new THREE.CircleGeometry(3, 18, Math.PI / 3, Math.PI / 3 * 4)可以创建一个在x轴和y轴所在平面的三分之二圆的扇形:
5.圆柱体:
new THREE.CircleGeometry(3, 18, Math.PI / 3, Math.PI / 3 * 4)
THREE.CylinderGeometry(radiusTop, radiusBottom, height, radiusSegments, heightSegments, openEnded)
radiusTop:顶面半径
radiusBottom:底面半径
当这两个参数设置为不同的值时,实际上创建的是一个圆台;
height是圆柱体的高度;
radiusSegments与heightSegments可类比球体中的分段;
openEnded是一个布尔值,表示是否没有顶面和底面,缺省值为false,表示有顶面和底面
height
radiusSegments
heightSegments
openEnded
false
6.标准圆柱体:
new THREE.CylinderGeometry(2, 2, 4, 18, 3)
创建一个顶面与底面半径都为2
,高度为4
的圆柱体
7.
正四面体、正八面体、正二十面体:
正四面体(TetrahedronGeometry)、正八面体(OctahedronGeometry)、正二十面体(IcosahedronGeometry)的构造函数较为类似,分别为:
THREE.TetrahedronGeometry(radius, detail)
THREE.OctahedronGeometry(radius, detail)
THREE.IcosahedronGeometry(radius, detail)
radius
是半径;
radius
是半径; detail
是细节层次(Level of Detail)的层数,
detail
是细节层次(Level of Detail)的层数, 对于大面片数模型,可以控制在视角靠近物体时,显示面片数多的精细模型,而在离物体较远时,显示面片数较少的粗略模型。这里我们不对detail
多作展开,一般可以对这个值缺省。
detail
多作展开,一般可以对这个值缺省。8.
圆环面(圆环面(TorusGeometry)就是甜甜圈的形状)
THREE.TorusGeometry(radius, tube, radialSegments, tubularSegments, arc)
radius是圆环半径;
tube是管道半径;
radialSegments与tubularSegments分别是两个分段数;
arc是圆环面的弧度;
缺省值为Math.PI * 2;
radius
tube
radialSegments
tubularSegments
arc
Math.PI * 2;
9.
THREE.TorusKnotGeometry(radius, tube, radialSegments, tubularSegments, p, q, heightScale)
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· 一个基于 .NET 开源免费的异地组网和内网穿透工具
· 《HelloGitHub》第 108 期
· Windows桌面应用自动更新解决方案SharpUpdater5发布
· 我的家庭实验室服务器集群硬件清单