文章详情页
javascript - 请问有办法透过 API 产生剖切面吗?
浏览:91日期:2023-05-12 18:45:16
问题描述
请问要如何透过 Viewer 的 API 来产生剖切面吗?
像这截图这样:
问题解答
回答1:可以的,你可以透过 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() 且不传入任何参数即可,取消后房子就回复原状了:
康工您好,我是小赵,在上海就同问过您的名气,现在想请教您,模型剖切后是否可以默认选中显示的部分(触发that.viewer.getSelection()事件)。我对于forge只是入门,这个问题也困扰我一段时间了。
标签:
JavaScript
上一条:javascript - 对象数据和访问器可配置和可枚举特性默认的不是true吗?下一条:javascript - 当点击swipe的左右切换箭头时,在swipe源码里的slideNext函数内部如和访问到当前的vue实例
相关文章:
1. 主从备份 - 跪求mysql 高可用主从方案2. python - django 里自定义的 login 方法,如何使用 login_required()3. python如何不改动文件的情况下修改文件的 修改日期4. android-studio - Android 动态壁纸LayoutParams问题5. javascript - git clone 下来的项目 想在本地运行 npm run install 报错6. angular.js - 不适用其他构建工具,怎么搭建angular1项目7. mysql主从 - 请教下mysql 主动-被动模式的双主配置 和 主从配置在应用上有什么区别?8. mysql优化 - mysql count(id)查询速度如何优化?9. node.js - 使用 superagent 抓取 UTF-8网站乱码10. sql语句如何按or排序取出记录
排行榜
