[英]ThreeJS Limit TransformControl movement in Autodesk Forge Viewer
我有一个来自 ThreeJS 的 TransformControl 附加到 Forge 查看器场景中的自定义网格。 我使用自定义网格的 position 来修改自定义立方体的大小。 如果控件的移动导致立方体的大小缩小到最小大小以下,我想停止 TransformControl 的移动。
流程是:
1 - 用户拖动控件
2 - 获取附加网格的 position 并确定尺寸变化量。
3 - 如果数量导致 go 的大小低于最小值,请将大小设置为最小值,将控件的 position 设置为 position 会导致控件无法进一步拖动到最小值并无法拖动。 用户可以一直按住Control,如果用户将Control拖到不会导致尺寸最小的position,那么Control可以再次移动,尺寸发生变化。
不幸的是,在 Forge Viewer (R71) 使用的 three.js 版本中, TransformControls
class 似乎没有提供任何方式来挂钩翻译更新: Z5E056C500A1C4B6A7110B50D8107BADE.Z/ /examples/js/controls/TransformControls.js#L812-L853 。 如果你想根据一些自定义条件控制逻辑,你可能不得不以某种方式破解它,例如,通过覆盖onPointerMove
方法,如果offset
向量的长度低于某个阈值,则提前离开它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.