Three.js 索引教程

发布时间:2026/8/27 2:06:09

Three.js 索引教程
索引 ·Index· ▶ 在线运行案例案例合集三维可视化功能案例threehub.cn开源仓库github地址https://github.com/z2586300277/three-cesium-examples400个案例代码:网盘链接你将学到什么索引绘制vs非索引绘制的区别geometry.index如何用 4 个顶点拼出 2 个三角形同一 Geometry 可同时用于 Points、Line、Mesh效果说明同一组顶点数据同时以黄色点、红色线、蓝色面三种方式渲染展示 WebGL 不同图元模式points / lines / triangles。核心概念非索引 vs 索引| 方式 | 顶点数矩形 | 说明 | |------|--------------|------| | 非索引 | 6每三角独立 3 顶点 | 网格 案例 | | 索引 | 4 顶点 6 索引值 | 顶点可复用节省内存 |// 4 个唯一顶点const vertices new Float32Array([ 0, 0, 0, // 索引 0 50, 0, 0, // 索引 1 50, 0, 50, // 索引 2 0, 0, 50, // 索引 3 ]);// 索引表每 3 个索引构成一个三角形 const indexes new Uint16Array([ 0, 1, 2, // 三角面 1 0, 3, 2, // 三角面 2 ]); geometry.index new THREE.BufferAttribute(indexes, 1); geometry.attributes.position new THREE.BufferAttribute(vertices, 3);同一 Geometry三种 Object| Object | Material | 渲染模式 | |--------|----------|---------| |Points|PointsMaterial| GL_POINTS | |Line|LineBasicMaterial| GL_LINE_STRIP 等 | |Mesh|MeshBasicMaterial| GL_TRIANGLES |实现步骤定义 4 顶点 6 索引分别创建 Points、Line、Mesh 加入 sceneOrbitControls 交互代码要点import * as THREE from three; import { OrbitControls } from three/examples/jsm/controls/OrbitControls.jsconst scene new THREE.Scene();// 网格模型Mesh其实就一个一个三角形(面)拼接构成 const geometry new THREE.BufferGeometry(); const vertices new Float32Array([ 0, 0, 0, 50, 0, 0, 50, 0, 50,// 0, 0, 0, 0, 0, 50, // 50, 0, 50, ]);// 下面索引值对应顶点位置数据中的顶点坐标 // 第 0、1、2这三个点构成一个三角形 // 第 0、3、2这三个点构成一个三角形 const indexes new Uint16Array([ 0, 1, 2, 0, 3, 2, ])geometry.index new THREE.BufferAttribute(indexes, 1);geometry.attributes.position new THREE.BufferAttribute(vertices, 3);// 点渲染模式 const material2 new THREE.PointsMaterial({ color: 0xffff00, size: 10.0 //点对象像素尺寸 }); const points new THREE.Points(geometry, material2); //点模型对象 scene.add(points);// 线材质对象 const material1 new THREE.LineBasicMaterial({ color: 0xff0000 //线条颜色 }); // 创建线模型对象 const line new THREE.Line(geometry, material1); scene.add(line);// 网格 const material new THREE.MeshBasicMaterial({ color: 0x0000ff, side: THREE.DoubleSide, }); const mesh new THREE.Mesh(geometry, material); scene.add(mesh);// AxesHelper const axesHelper new THREE.AxesHelper(150); scene.add(axesHelper);// 相机 const camera new THREE.PerspectiveCamera(); //相机 camera.position.set(200, 200, 200); //相机位置 camera.lookAt(0, 0, 0); //相机观察位置// 渲染器 const renderer new THREE.WebGLRenderer(); // 创建渲染器 const box document.getElementById(box); renderer.setSize(box.clientWidth, box.clientHeight); //渲染区域 renderer.render(scene, camera); //执行渲染 box.appendChild(renderer.domElement);;const controls new OrbitControls(camera, renderer.domElement); controls.addEventListener(change, function () { renderer.render(scene, camera); });完整源码GitHub小结本文提供索引完整 Three.js 源码与在线 Demo建议先运行案例再改 uniform/参数做二次实验更多 Three.js 实战案例见 three-cesium-examples 合集 与 GitHub 开源仓库

相关新闻

2026年AI编程工具横评:Trae/Cursor/Claude Code/Windsurf深度对比

2026年AI编程工具横评:Trae/Cursor/Claude Code/Windsurf深度对比

2026/8/24 13:53:52

CSDN 2026年7月热榜:AI编程工具已从"代码补全插件"进化为"全链路开发引擎"。Trae(字节)凭借SOLO智能体模式成为中文开发者首选,Cursor推出Agent模式,Claude Code开放MCP生态,Windsurf聚…

2026年揭秘:品牌设计本土化服务商实力大比拼!

2026年揭秘:品牌设计本土化服务商实力大比拼!

2026/8/22 8:34:06

"【本土匠心独运】2026年,品牌设计本土化服务商实力揭秘!谁将引领行业风潮?"在这个全球化与本土化并存的时代,品牌设计不再是简单的视觉呈现,而是深入文化底蕴、体现地域特色的艺术表达。2026年,…

Goby实战指南:从安装到漏洞扫描的完整流程解析

Goby实战指南:从安装到漏洞扫描的完整流程解析

2026/8/26 6:46:54

1. 项目概述:为什么我们需要Goby这样的工具?在网络安全领域,无论是企业安全团队进行内部资产梳理和风险评估,还是安全研究人员进行渗透测试前的信息收集,一个高效、直观的资产测绘与漏洞扫描工具都是不可或缺的。过去&…

后端技术栈速览:常用框架、数据库与中间件选型对比

后端技术栈速览:常用框架、数据库与中间件选型对比

2026/8/27 8:07:37

框架不是信仰,取舍方见真章。技术选型最让人着迷也最折磨人的地方,在于它永远没有标准答案。一个在A公司被奉为圭臬的架构,放到B公司可能直接拖垮服务器;一个被社区吹上天的框架,在你的业务量级下反而成了累赘。选技术…

Granta MI Scripting Toolkit 数据导出实战:从环境配置到批量导出

Granta MI Scripting Toolkit 数据导出实战:从环境配置到批量导出

2026/8/27 8:07:37

Granta MI Scripting Toolkit 导出数据:从环境准备到批量导出的完整实战这次我们不看花哨的 AI 生成,而是看一个材料工程师、结构工程师和数据管理岗经常要用的东西:ANSYS Granta MI 的 Scripting Toolkit。简单说,Granta MI 是 A…

天猫店群自动化管理系统:绕过滑块验证码与前端检测的穿甲方案

天猫店群自动化管理系统:绕过滑块验证码与前端检测的穿甲方案

2026/8/27 8:07:37

天猫店群自动化管理系统:绕过滑块验证码与前端检测的穿甲方案 在电商圈混久了就会发现,天猫的极速自动改价,是店群运营中最耗人力也最容易出错的环节。 电商价格战是分钟级的。竞品降价了你5分钟内不跟,流量就全跑竞品那边去了。…

HuggingFace NLP实战:从Pipeline到LoRA微调的完整指南

HuggingFace NLP实战:从Pipeline到LoRA微调的完整指南

2026/8/27 8:07:37

之前在做 NLP 项目时,最让我头疼的不是算法本身,而是“一套模型一个写法”:今天要用 BERT 做文本分类,明天要跑 GPT 做生成,后天又要微调一个领域模型,模型结构不同、分词方式不同、训练代码也完全不同。每…

Agent上下文管理实战:从黑盒到白盒的上下文工程指南

Agent上下文管理实战:从黑盒到白盒的上下文工程指南

2026/8/27 8:07:37

如果你最近在用各种 AI 编程助手、开源 Agent 框架,或者自己搭过一个多步任务链路,大概率遇到过下面这些让人抓狂的瞬间: 对话到一半,AI 突然“失忆”,忘了最开始定义的需求;一个长任务的执行链路出现 ag…

Gitee WebHook 实现个人项目自动部署:从手动 scp 到 “push 即部署“ 全流程实录(含 8 个坑)

Gitee WebHook 实现个人项目自动部署:从手动 scp 到 “push 即部署“ 全流程实录(含 8 个坑)

2026/8/27 7:57:37

个人项目(TypeScript Node Docker,部署在阿里云 ECS)每次更新都要 ssh 上去 git pull docker compose build, 手都拉出茧了。于是折腾了一套 “push 即部署”,把过程和踩过的坑记下来,给同样被手动部署折…

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

2026/8/26 1:50:39

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

2026/8/27 7:25:23

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

2026/8/26 17:50:58

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

Go语言构建企业级AI服务网关:统一管理英伟达等AI接口调用

Go语言构建企业级AI服务网关:统一管理英伟达等AI接口调用

2026/8/27 0:07:12

1. 项目概述:从零构建一个企业级的AI服务网关 最近在帮一个做内容审核的团队做技术架构升级,他们原来的业务里,每天有几十万张图片和短视频需要过审,最初是接了几个开源的AI模型自己部署,但效果和性能一直不太稳定。后…

LeetCode Hot100(51-60)算法精解与面试技巧

LeetCode Hot100(51-60)算法精解与面试技巧

2026/8/27 0:07:12

1. 题目背景与核心价值"hot100(51-60)"这个标题看起来像是某个编程题库或算法练习集中的一组题目编号。在技术社区中,类似命名通常指向LeetCode、牛客网等平台的热门题目集合。作为刷过300题的算法老手,我理解这类题目的核心价值在于&#xff…

CRC校验实战:从模2除法到HJ212协议排错

CRC校验实战:从模2除法到HJ212协议排错

2026/8/27 0:07:12

1. 为什么一个“校验码”能扛住工业现场90%的数据 corruption? 你有没有遇到过这样的场景:嵌入式设备通过RS-485上传温湿度数据,上位机偶尔收到一帧乱码——温度显示成-273℃,湿度跳到999%,但串口波形看起来完全正常&a…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/22 2:02:26

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/26 18:07:30

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/26 17:57:52

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…