我有几个从面板类继承的cutom控件的画布,在运行时用rendertransform =(.5,.5)动态添加到它。但是当应用平移变换(50,50)并旋转100度时,它不会在它的位置上旋转,它会以50的半径旋转,为什么? 我做错了什么吗?对象在wpf中转换转换后不能正确旋转?
1
A
回答
6
转换不可交换,您应该在应用转换之前应用转动。
通常你有一个TransformGroup,那么你可以改变它的孩子的顺序,如果这不是一个选项,因为某些变换是从父母“继承”的,你可以使用它们的逆变换先前变换(在这种情况下的应该将目标移回原点的翻译),然后您可以将其旋转到原位,然后再次应用原始变换。
的文档是你的朋友,这里是我能为TransformGroups
发现:
在复合转型,各个转换的顺序很重要。例如,如果首先旋转,然后缩放然后翻译,则会得到与先翻译,然后旋转然后缩放不同的结果。顺序显着的一个原因是像旋转和缩放这样的变换是相对于坐标系的原点完成的。缩放以原点为中心的对象会产生与缩放从原点移开的对象不同的结果。类似地,旋转以原点为中心的对象会产生与旋转离开原点的对象不同的结果。
0
相关问题
- 1. ObjectInputStream不能正确转换对象
- 2. atoi()不能正确转换
- 3. Coffeescript不能正确转换
- 4. 在IE8中转换对象(仅限旋转),类似于使用CSS3转换(旋转),转换源
- 5. CSS旋转变换对象
- 6. SceneKit变换/旋转对象
- 7. Webkit CSS转换旋转不旋转
- 8. 旋转的对象统一旋转的值不正确
- 9. 旋转相机时对象旋转不正确
- 10. 旋转后转换比例不工作
- 11. Swift 3中的自定义转换不能正确转换
- 12. 正确的转换设置,用于缩放然后旋转
- 13. UITableview在UIPopover中不能正确旋转
- 14. 转换:旋转在Safari中不工作
- 15. GLKit对象不能正常旋转
- 16. SVG转换旋转
- 17. 转换值对象为正确的RegistryValueKind
- 18. 旋转不正确
- 19. Silverlight控件中的旋转转换后按钮呈现不正确
- 20. java.lang.String中不能转换到JSON对象
- 21. 转换对象
- 22. 转换对象
- 23. 转换对象
- 24. 对象转换
- 25. 转换在WPF
- 26. 转换C#Path对象为XAML在WPF
- 27. 类型转换后的值不正确
- 28. 转换矩阵 - 旋转和转换后的新点坐标
- 29. 对象不旋转
- 30. NSDateFormatter不正确转换
我将TransformGroup中的两个变换应用到RenderTransform – Code0987 2011-05-21 18:57:52
然后更改顺序,也可以看到我编辑的答案。 – 2011-05-21 18:58:29
感谢它的工作,当我把rotatetransform移到顶端。 – Code0987 2011-05-21 19:05:42