我正在创建一个 Canvas ,上面有等距 block 。我想做的是从街区转换出阴影。我目前有一个可以使用的版本,但阴影看起来比应有的要长得多。我想知道是否有任何公式可以计算出如何正确转换阴影。
我想要的是阴影比高度稍短。
(来源:net84.net)
问候 彼得
最佳答案
公式?
它的三角函数:
光源矢量是三角形的 c
边,您的 block 是 a
边。
a^2 + b^2 = c^2
或者阴影的长度为b
b^2 = c^2 - a^2
或
b = square root of (c^2 - a^2)
PS 这是基于 a 和 b 的角度为 90 度,也就是你的方 block 笔直站立的情况。否则,您需要使用 a 和 c 之间的角度,然后使用 cos、sin 和/或正切来计算边 b 的长度。具体我忘了,不过你可以在这里问:https://math.stackexchange.com/
关于c# - 试图获得等距阴影长度的公式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10386410/