【问题标题】:three.js - scaling/transforming of tube geometrythree.js - 管几何的缩放/变换
【发布时间】:2014-11-05 13:39:26
【问题描述】:

我有一个具有 174 个点、12 个半径段、100 个半径和 174 个段的管几何结构。 当我双击管的任何部分时,将显示具有 +/- 8 点的管的缩放部分。 现在的问题是,当我点击管子的弯曲部分时,缩放部分看起来不如我点击管子的直线部分。

请在 2 张图片下方找到。

请在此处找到jsfiddle

请在下面找到缩放代码。

tube = new THREE.TubeGeometry(extrudePath, segments, 100, radiusSegments, closed, debug);           
            tube.dynamic = true;

            tube.computeBoundingBox();
            console.log(tube);          
            tube.scale.x = tube.boundingBox.max.x;
            tube.scale.z = tube.boundingBox.max.z;

是否可以适当地缩放它或将弯曲部分转换为圆柱体,使其看起来像管的直线部分?

【问题讨论】:

    标签: three.js


    【解决方案1】:

    我认为你正在做的缩放不合适。由于您尝试缩放的部分可能没有沿 y 轴的轴,因此仅缩放 x 和 z 参数会导致失真。是否可以知道截面的轴?那么有2种方式-

    1) 旋转截面,使轴与 y 轴对齐,缩放 x 和 z 坐标并向后旋转截面。

    2) 想出一个公式来缩放具有任意方向的轴的圆柱体。

    由于这是一个非常古老的问题,您可能已经有了答案。如果我错了,请告诉我什么对你有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-12
      • 2021-12-13
      • 1970-01-01
      相关资源
      最近更新 更多