有没有办法创建宽度和厚度的Three.js 3D线系列?如何创建宽度和厚度的Three.js 3D线系列?
尽管Three.js线对象支持线宽,但WebGL中所有平台上的所有浏览器都不支持该属性。
在这里你在three.js所设置线宽:
var material = new THREE.LineBasicMaterial({
color: 0xff0000,
linewidth: 5
});
的three.js所带状物 - 其中有宽度 - 最近已经下降。
Three.js管对象生成3D挤压,但是 - 基于贝塞尔 - 线不通过控制点。
任何人都可以想到在Three.js中绘制直线系列(多段线,图线)的方法,它具有某种用户可定义的“体积”,例如宽度,厚度或半径?
此问题可能是对此问题的重述: Extruding a graph in three.js。
鉴于我不认为有一个现成的方法,我很乐意参与努力创建一个简单的函数来回应这个问题。
但是,指向现有可行的方法将降温的应答...
作为WestLangley所暗示的,一个可能的解决方案包括恒定像素宽度的折线为 - 当前可用与three.js所画布渲染器。
两个渲染器的比较如下所示:
Canvas and WebGL Lines Compared via GitHub Pages
Canvas and WebGL Lines Compared via jsFiddle
在那里你可以指定线宽和类似结果的解决方案出现在两个渲染器将是非常凉。
然而,还有其他思考3D线的方法,其中线具有实际的物理构造。他们投下阴影,他们对事件做出反应。这些也需要研究。
下面是联结到GitHub的页数与由多个网格线的两条演示:
一个“昂贵的解决方案。每个关节都由一个完整的球体组成。
我的猜测是建立这两种顺利单一网格将复杂的问题需要解决。因此,在这里同时是那宽3D线的部分可视化链接,并具有高度:
的目标是必须的代码“与复杂的低水平 - 换句话说 - 对于傻瓜来说。因此,3D线条应该与添加球体或立方体一样容易和熟悉。几何体+材质=网格>场景。就创建顶点和面而言,几何图形应该非常经济。
线应该有宽度和高度。向上始终在Y方向。演示显示了这一点。该演示没有显示的角落被很好地缓和...
分段线性'TubeGeometry'就足够了吗? (你必须避免尖角。) – WestLangley
嗨WestLangley。 TubeGeometry确实是一个强大的工具,但它甚至不绘制矩形。控制点不是角落。并且有很多图表事物,其中线柱通过顶点或者不可信... – Theo
另外,我不确定'分段线性'是什么意思。你能更完整地描述这个术语吗? – Theo