three.js里怎么把THREE.Line对象转成Shape

发布于 2022-09-05 06:19:24 字数 696 浏览 11 评论 0

在three.js里面,可以把THREE.Line对象转成Shape对象吗?
我现在想实现通过鼠标打点,生成一条有宽度的线,线的长表示墙面长度,线条宽表示墙面厚度,然后想先将Line对象转换成Shape后,再通过THREE.ExtrudeGeometry赋予一个墙面高度,拉伸成立体的墙面3D对象。

求大神指点!!

var material = new THREE.LineBasicMaterial({
     color: 0x686363,
     linewidth: 20,
     linecap: 'butt',
});

var geometry = new THREE.Geometry();
geometry.vertices.push(
    new THREE.Vector3( -10, 0, 0 ),
    new THREE.Vector3( 0, 0, 10),
    new THREE.Vector3( 10, 0, 0 )
);

var line = new THREE.Line( geometry, material );
scene.add( line );

clipboard.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

铁憨憨 2022-09-12 06:19:24

您好,请问解决了吗?
我也是在做3D,做路线导航的时候遇到了问题。THREE.line的linewidth属性在webgl渲染中不支持线宽。我现在只有路径点,做不出带有宽度的路线。只有1条线的路线看着真是尴尬。。。
我看你这个线有宽度,是canvas渲染的吧?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文