标签: math

如何确定多边形点列表是否按顺时针顺序?

有一个点列表,我如何找到顺时针顺序?

例如:

point[0] = (5,0)
point[1] = (6,4)
point[2] = (4,5)
point[3] = (1,5)
point[4] = (1,0)
Run Code Online (Sandbox Code Playgroud)

会说它是逆时针(或逆时针,对某些人来说).

math geometry polygon computational-geometry

242
推荐指数
7
解决办法
12万
查看次数

C/C++中整数除法的快速上限

给定整数值,x并且yC和C++都返回作为q = x/y浮点等效的底数的商.我对一种返回天花板的方法很感兴趣.例如,ceil(10/5)=2和ceil(11/5)=3.

显而易见的方法包括:

q = x / y;
if (q * y < x) ++q;
Run Code Online (Sandbox Code Playgroud)

这需要额外的比较和乘法; 我见过的其他方法(事实上使用)涉及铸造为float或double.是否有更直接的方法可以避免额外的乘法(或第二个除法)和分支,并且还可以避免作为浮点数进行转换?

c c++ algorithm math

241
推荐指数
8
解决办法
14万
查看次数

实现基于整数的幂函数pow(int,int)的最有效方法

将整数提升到C中另一个整数的幂的最有效方法是什么?

// 2^3
pow(2,3) == 8

// 5^5
pow(5,5) == 3125
Run Code Online (Sandbox Code Playgroud)

c algorithm math exponentiation

239
推荐指数
8
解决办法
19万
查看次数

如何确定一个点是否在二维三角形中?

有没有一种简单的方法来确定一个点是否在三角形内?它是2D,而不是3D.

algorithm math geometry

237
推荐指数
13
解决办法
21万
查看次数

将数字范围转换为另一个范围,保持比率

我正在尝试将一个数字范围转换为另一个数字,保持比率.数学不是我的强项.

我有一个图像文件,其中点值可能在-16000.00到16000.00之间,尽管典型范围可能要小得多.我想要做的是将这些值压缩到整数范围0-100,其中0是最小点的值,100是最大值的值.中间的所有点都应该保持相对比率,即使丢失了一些精度我想在python中这样做,但即使是一般算法也应该足够.我宁愿一个算法,其中最小/最大或任一范围可被调整(即,在第二范围可以是-50℃至800,而不是0到100).

python math

236
推荐指数
8
解决办法
17万
查看次数

C如何计算sin()和其他数学函数?

我一直在研究.NET反汇编和GCC源代码,但似乎无法找到实际实现sin()和其他数学函数的任何地方......它们似乎总是引用其他东西.

谁能帮我找到它们?我觉得C运行的所有硬件都不太可能支持硬件中的触发功能,因此某处必须有软件算法,对吧?


我知道有几种方法可以计算函数,并编写了我自己的例程来计算函数使用泰勒系列来获得乐趣.我很好奇真正的生产语言是如何做到的,因为我的所有实现总是慢几个数量级,即使我认为我的算法非常聪明(显然它们不是).

c math trigonometry

236
推荐指数
15
解决办法
15万
查看次数

为什么Python的无穷大散列具有??的数字?

Python中无穷大的哈​​希值具有与pi匹配的数字:

>>> inf = float('inf')
>>> hash(inf)
314159
>>> int(math.pi*1e5)
314159
Run Code Online (Sandbox Code Playgroud)

这仅仅是巧合还是故意的?

python math floating-point hash pi

236
推荐指数
3
解决办法
3万
查看次数

如何确保整数除法总是四舍五入?

我想确保在必要时整数除以整数.有比这更好的方法吗?有很多铸件正在进行中.:-)

(int)Math.Ceiling((double)myInt1 / myInt2)
Run Code Online (Sandbox Code Playgroud)

c# math

235
推荐指数
5
解决办法
6万
查看次数

什么是最广泛使用的C++向量/矩阵数学/线性代数库,以及它们的成本和收益权衡?

似乎许多项目慢慢需要进行矩阵数学运算,并陷入首先构建一些向量类并慢慢添加功能的陷阱,直到它们被捕获构建一个半定制的自定义线性代数库,并依赖于它.

我想避免这种情况,而不依赖于一些切向相关的库(例如OpenCV,OpenSceneGraph).

有哪些常用的矩阵数学/线性代数库,为什么会决定使用另一个?有什么建议不要因某些原因使用?我特意在几何/时间上下文*(2,3,4 Dim)*中使用它,但将来可能会使用更高维数据.

我正在寻找以下任何方面的差异:API,速度,内存使用,广度/完整性,狭窄/特异性,可扩展性和/或成熟度/稳定性.

更新

我最终使用了Eigen3,我非常满意.

c++ math matrix linear-algebra

235
推荐指数
8
解决办法
14万
查看次数

JavaScript%(modulo)给出负数的否定结果

根据谷歌计算器 (-13) % 64是51.

根据Javascript(参见这个JSBin)它是-13.

我该如何解决?

javascript math modulo

224
推荐指数
9
解决办法
7万
查看次数