问题描述
我想弄清楚这里发生了什么:
有一个名为 System.Drawing.drawing2d.Graphics
的 g
对象。
g.Transform 具有以下值:
[0] = 1
[1] = 0
[2] = 0
[3] = -1
[4] = 0
[5] = 1122.66663
什么时候做
int minAngle = 0;
g.Transform.Rotate(360 - minAngle);
我为 g.Transform
属性获得了相同的元素:
[0] = 1
[1] = 0
[2] = 0
[3] = -1
[4] = 0
[5] = 1122.66663
但是当我这样做时:
int minAngle = 0;
g.RotateTransform(360 - minAngle);
[0] = 0.99999994
[1] = 3.019916E-07
[2] = 3.019916E-07
[3] = -0.99999994
[4] = 0
[5] = 1122.66663
为什么这两种方法之间有如此大的舍入差异,它们似乎都在做同样的事情:修改世界变换?
除了浮点舍入“问题”之外,使用rotateTransfrom 和transform.rotate 有什么区别吗?
(.NET 框架 4.8)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)