问题标签 [clamp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
437 浏览

camera - 将相机夹在地图上(缩放问题)

我正在 LibGDX 中创建游戏,并使用 Tiled 作为我的地图系统。

我试图在我的 TiledMap 范围内包含一个 OrthographicCamera。我使用 MathUtils.clamp 来实现这一点。当相机处于 1.0f 的正常变焦时,它工作得很好。然而,当相机进一步放大时,比如说 0.75f,相机被夹在错误的位置,因为它没有缩放值的信息。

我的问题:如何在我的钳位代码中包含缩放值,以便正确钳位相机?有任何想法吗?

谢谢!- 杰克

0 投票
3 回答
49 浏览

algorithm - 钳位到系列中的下一个最小值

我正在尝试将一个数字限制为一系列数字的较低值。例如,如果我有一个系列(抱歉记号不好)

[pq]其中p是任何整数并且q是任何正数。

说如果q is 50我的系列将是...-150, -100, -50, 0, 50, 100, 150...

现在我想要的是有一个函数可以f(y)将任何数字夹在系列中的下一个最低数字。

例如,如果我有37我期待的数字f(37) = 0和我期待的数字f(-37) = -50

我尝试了许多涉及模数和整数除法的算法,但我似乎无法弄清楚。我尝试过的最新的是例如

(37 / q) * q这适用于正数,但不适用于 -50 和 0 之间的任何数字。

我也尝试过((37 - q) / q) * q,但这不适用于恰好落在该系列中的负面案例。

编辑

假设我没有整个系列,而只有系列的乘数p

0 投票
1 回答
604 浏览

css - 如果超过 n 行,则淡出最后一行文本

我们需要在最多 3 行上显示产品标题,并且只有当标题超过 3行时才会淡出第3 行。

到目前为止,我试图解决这个问题的方法是使用一个最大高度为 3 行的包装器、其中的标题和一个覆盖淡出(分别是淡入白)渐变的伪元素。

问题是,无论是否有第 4(+)行,都会发生这种情况。

我创建了一个 JSFiddle:https ://jsfiddle.net/nq4ratr7/5/

小提琴示例的目标是显示最多 3 行的所有标题而没有淡出,并在第 3 行淡出,用于中断到 4 的示例(“4 行 ...”)。

出于性能原因,不应使用 JS。我很清楚使用 JS 很容易。

0 投票
0 回答
225 浏览

c# - 相机全局旋转夹紧问题Unity3D

我有一个问题,我正在制作一个平滑的相机移动脚本,但我不知道如何正确夹紧相机旋转。

实际上,相机是玩家对象的子对象。

当按下 WASD 时,播放器会旋转,但由于脚本,相机不会跟随此旋转。

好吧,问题很简单,固定的旋转值是全局的,因为我们设置 Camera.transform.rotation而不是Camera.transform.localRotation.

这会发生:链接到视频

该脚本根据玩家轮换来钳制值。

所以如果我们在玩家的 X 轴上有一个旋转 (eulerAngle) 90 度,并且钳制值是从 90 到 -90,那么钳制的旋转将是 0, 180,而不是 -90, 90。

但如果我改变rotation这种localRotation情况:链接到视频

我还尝试了以下方法:

设置后localRotation......但这只会做出奇怪的事情。例如,当在旋转钳位时达到最小钳位值时,将返回最大钳位值。

0 投票
1 回答
1378 浏览

opengl - glsl 和 opencl 中的钳位功能如何工作?它使用创建分支吗?我应该避免使用它吗?

GLSL 和 OpenCL 都有一个钳制函数,如果值超出界限,它将把一个数字钳制到插入的上限或下限。如果我尝试在 C++ 中实现类似的东西,它看起来像下面的代码:

但是,这有多个分支路径,据我了解,这会大大降低 GPU 的速度,因为它们中的大多数都必须执行所有分支。

那么 GLSL/OpenCL 钳位是如何工作的,如果它使用分支,你会建议尽可能避免使用它吗?

0 投票
2 回答
1453 浏览

c# - Mathf.Clamp 在 Unity 3D 中将我的 eulerangle 重置为 minValue

Mathf.Clamp 在达到 maxValue 时将我的 eulerangle 重置为 minValue,而不是将其限制在 maxValue。我试过这个:

和这个 :

在这两种情况下,我的 lowLimitY = 0 和 highLimitY = 180;我被困在这个问题上,不知道如何解决它。任何帮助将不胜感激。

0 投票
3 回答
1546 浏览

math - 仅使用算术限制最小值和最大值之间的值

是否可以仅使用算术将值限制在给定范围内,介于最小值和最大值之间?也就是说,+ - x /%

我无法使用min,maxIF- 语句等功能。

假设我有一个范围[1850, 1880],对于任何值< 1850,它都应该显示1850。对于 values > 18801880应显示。如果仅1850显示在范围之外也是可以接受的。

我试过了:

但对于低于xmin.

0 投票
3 回答
212 浏览

raku - Raku(即Perl6)中是否有范围/ Num等的“钳位”方法/子?

Perl6 中是否有“clamp”或等效方法或子方法?

例如

0 投票
1 回答
646 浏览

c++ - 如何在 Eigen 中执行矩阵的逐行裁剪?

我需要在矩阵的每一行中剪辑(即夹住)元素。每列在两行矩阵中指定其最小值和最大值(第一行有最小值,第二行有最大值)。

我目前正在使用这种丑陋的方法来剪辑值。有没有更漂亮、更高效的替代方案?

0 投票
2 回答
2013 浏览

unity3d - 如何限制和钳制线渲染器unity2d中两点之间的距离

我正在制作一个游戏,让您单击一个球并拖动以绘制具有两个点的线渲染器并将其指向特定方向,当释放时我向球施加力,现在,我只想知道我该怎么做限制这两点之间的距离,比如给它一个半径。

你可以看看这里。