Three.js - 比例模型

Art*_* S. 2 javascript three.js

基本上,如果选中单选按钮,我喜欢将网格 x 轴的大小增加“1”。如果单选按钮取消选中我喜欢反转它。

通常我会通过简单地设置 x 轴的大小来做到这一点:

就像是:

如果单选按钮被选中

mesh.scale.x = 2;
Run Code Online (Sandbox Code Playgroud)

如果未选中单选按钮

mesh.scale.x = 1;
Run Code Online (Sandbox Code Playgroud)

在我的情况下,困难在于我的网格的当前比例级别因其他一些因素而异。所以可能会出现x轴的刻度级别不是“1”,而是例如“3.7”。

由于上述函数不起作用,我正在寻找数学上的东西,只需在网格中添加和减去“1”即可。

$('input').change(function () {
    if ($('#radio1').is(":checked")) {
        mesh.scale.x = +1;
    }
    if ($('#radio2').is(":checked")) {
        mesh.scale.x = +2;
    }
});
Run Code Online (Sandbox Code Playgroud)

我的函数的问题在于它在先前添加的值的基础上添加了该值。我正在寻找在添加新值之前减去先前值的东西。

gai*_*tat 5

如果你考虑一下,规模就是你乘以的东西。我想让我的对象大 10% 或两倍或小 30%。它通常不是附加操作。所以我会这样做:

mesh.scale.x *= 1.1; // to make my mesh 10% bigger
Run Code Online (Sandbox Code Playgroud)

或者

mesh.scale.x *= 0.9; // to make my mesh 10% smaller
Run Code Online (Sandbox Code Playgroud)