gpt4 book ai didi

ios - 如何在不失真/倾斜的情况下围绕它的适当中心旋转 UIView

转载 作者:IT王子 更新时间:2023-10-29 05:23:46 26 4
gpt4 key购买 nike

我已经构建了自己的动画引擎,我想在我渲染的每一帧上设置 UI View 的旋转 (60fps)

我现在制作了一个视频来展示当前的问题。

它已经很近了,但它仍在以一种奇怪的方式旋转:

https://www.youtube.com/watch?v=1ZKK4r0-6i4

我实现了一个自定义的 CustomUIView 类,它继承自 UI View 。它具有平移、缩放和旋转属性,因此当我变换矩阵时,所有 3 个都发生在同一个 Action 中。

var t = CGAffineTransform( translationX: self.translation.x, y: 
self.translation.y );
// Apply scaling
t = t.scaledBy( x: self.scaling.x, y: self.scaling.y );
// Apply rotation
t = t.rotated(by:self.rotation)
self.transform = t

大小和宽度设置如下:

view.frame.size.width = parseSize(value, axis: "width")
view.layer.bounds.size.width = parseSize(value, axis: "width")

我正在尝试设置这两个属性,但我不确定这是否正确。

我设置了很多 anchor ,也尝试了 View 的整体中心点。

最佳答案

而不是使用

var t = CGAffineTransform( translationX: self.translation.x, y: 
self.translation.y );

使用

var t = CGAffineTransform(rotationAngle: CGFloat(Double.pi*self.rotation/180.0))

这将在不改变他们位置的情况下从中心旋转您的 View 。

关于ios - 如何在不失真/倾斜的情况下围绕它的适当中心旋转 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45784678/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com