2024-05-12 22:57:47 发布
网友
假设我们有一些从-inf到+inf的角度值作为输入。在
-inf
+inf
我只想在-180和{}之间映射它们。在
-180
我怎么才能做到呢?在
以下是我目前发现的:
(i-180)%360-180
它工作得很好,但是它将+180映射到-180,我希望它是+180->;+180。在
+180
从技术上讲,这对我来说是一样的,所以没什么大不了的,但在美学上会更好。在
我正在使用Python,但这并不重要。在
如果你不那么重视数学唯美主义,我认为这是可行的
def f(i): x = i % 360 if x > 180: x -= 360 elif x == 180 and i < 0: x = -x return x
假设您在一个列表sampleList[]中的值在-inf到{}之间。 您需要将sampleList[]中范围为-180的值映射到180。让我们将映射元素的新列表命名为mappedList[]
sampleList[]
180
mappedList[]
将x视为sampleList[]中的元素
x
将y视为mappedList[]中的元素
y
将maxSL视为sampleList[]的最大值,并且
maxSL
minSL为sampleList[]的最小值
minSL
因此
y = ((x - minSL)(((180-(-180))/(maxSL - minSL))) + (-180)
如果你不那么重视数学唯美主义,我认为这是可行的
假设您在一个列表}之间。
您需要将sampleList[]中范围为
sampleList[]
中的值在-inf
到{-180
的值映射到180
。让我们将映射元素的新列表命名为mappedList[]
将
x
视为sampleList[]
中的元素将
y
视为mappedList[]
中的元素将
maxSL
视为sampleList[]
的最大值,并且minSL
为sampleList[]
的最小值因此
相关问题 更多 >
编程相关推荐