javascript - 请问有办法透过 API 产生剖切面吗?

查看:115
本文介绍了javascript - 请问有办法透过 API 产生剖切面吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

请问要如何透过 Viewer 的 API 来产生剖切面吗?

像这截图这样:

解决方案

可以的,你可以透过 viewer.setCutPlanes() 这个函数来设置剖切面,它接受的是 THREE.Vector4 的数组 (array),也就是剖切面的数组。 每个 THREE.Vector4 都代表一个高等数学的面方程 ax + by + cz + d = 0 ,这个面方程的法向为 (a,b,c) 且与距离坐标原点 d 单位。此外, Forge Viewer 还以 THREE.Vector4(x, y, z) 来表示面的法向 (a, b, c)w 代表与原点的距离 d。调用示例如下:

var cutplanes = [
    new THREE.Vector4( 0, 0, -1, -17 ),
    new THREE.Vector4( 0, 0, 1, 0 ),
];

veiwer.setCutPlanes( cutplanes );

结果截图:

如果要取消剖切的话,只要再调用一次 viewer.setCutPlanes() 且不传入任何参数即可,取消后房子就回复原状了:

这篇关于javascript - 请问有办法透过 API 产生剖切面吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆