擅长:python、mysql、java
<p>旋转约0,0的公式为:</p>
<pre><code>x1 = cos(theta) x0 - sin(theta) y0
y1 = sin(theta) x0 + cos(theta) y0
</code></pre>
<p>但这是对于规则轴,旋转0,0。PIL的旋转是顺时针的,带有“图形”轴。另外,它在图像的中心。最后一个令人困惑的事情是图像的大小可能会改变,这需要在最终结果中加以说明。</p>
<p>步骤:取原点,减去图像中心,应用“图形轴”校正旋转,找到新的图像大小,添加新图像的后中心位置。</p>
<p>使用图形轴的旋转是:</p>
<pre><code>x1 = cos(theta) x0 + sin(theta) y0
y1 = -sin(theta) x0 + cos(theta) y0
</code></pre>
<p>16,32-16,16等于0,16。顺时针旋转30度(基于图像),得到一个点cos(-30)*0+sin(-30)*16,-sin(-30)*0+cos(-30)*16=-8,13.86。最后一步是添加回旋转位置的中心位置。</p>