codecamp

three.js VertexTangentsHelper

渲染箭头以可视化对象的顶点切向量。要求已在自定义属性中指定切线或已使用 computeTangents 计算出切线。

此助手仅支持 BufferGeometry。

代码示例

const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
const material = new THREE.MeshNormalMaterial();
const box = new THREE.Mesh( geometry, material );

const helper = new VertexTangentsHelper( box, 1, 0x00ffff, 1 );

scene.add( box );
scene.add( helper );

例子

WebGL / helpers

构造函数

VertexTangentsHelper( object : Object3D, size : Number, color : Hex, linewidth : Number )

object -- 要为其渲染顶点切线的对象。

size -- (可选)箭头的长度。默认值为 1。

color -- 箭头的十六进制颜色。默认值为 0x00ffff。

linewidth -- (可选)箭头线的宽度。默认为 1。(目前不支持设置 lineWidth。)

属性

请参阅基本 LineSegments 类以了解通用属性。

.matrixAutoUpdate : Object

请参见 Object3D.matrixAutoUpdate。此处设置为 false,因为助手正在使用对象的矩阵世界。

.object : Object3D

顶点切线被可视化的对象。

.size : Number

箭头的长度。默认值为 1。

方法

请参阅基本 LineSegments 类以了解常用方法。

.update () : undefined

根据对象的世界变换更新顶点切线预览。

源码

examples/jsm/helpers/VertexTangentsHelper.js


three.js VertexNormalsHelper
three.js LightProbeGenerator
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

参考

核心 / BufferAttributes

渲染器 / WebXR

开发者参考

WebGL渲染器

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }