catransform3d相关内容

iOS:同步缩放和 3D 旋转动画

我制作了一个视频来演示我正在尝试完成的动画:在这里. 请注意,视频展示了从侧面看到的动作.相机图标代表用户的 POV.它基本上是对通过缩放变换完成的 Z 轴之间的平移的模拟,同时沿 X 轴发生独立的两步 3D 旋转. 看起来和听起来都很简单,对吧?错误的.这是理想的代码,但它不起作用: [UIView animateWithDuration:0.4 delay:0.0 options ..

如何从 Projection 和 ModelView 矩阵中获取 CATransform3D?

所有, 我有一个 iphone 项目,它使用 OpenGL-ES 为给定的模型视图矩阵和给定的投影矩阵绘制 3D 模型.我需要用 CALayer 替换 3D 模型,所以我将模型视图矩阵的值放入 CATransform3D 结构并将其分配给 layer.transform.它运行良好,图层可见并按预期在屏幕上移动,但一段时间后我意识到我的图层行为不够精确,我应该考虑投影矩阵.然后出现了一个问题 ..
发布时间:2021-11-25 00:49:26 C#

使用 CATransform3D 透视折纸过渡

我正在尝试仅使用图层功能在两个 UIView 上实现一种折纸过渡.这个想法是用透视效果折叠两个视图.两个视图都有一个透视图,转换由每个视图的旋转以及一个视图的平移定义,这样该视图似乎附加到另一个视图. 问题是视图在过渡过程中彼此重叠.我不想使用 zPosition 在视觉上避免这种重叠,我真的希望这两个视图表现得好像它们被共享的一面绑定在一起.这是转换的代码. 任何想法或任何其他解决方 ..
发布时间:2021-11-10 05:50:12 移动开发

UIView 垂直翻转

我知道这可能是一个愚蠢的问题,但我不得不问:如何垂直翻转 UIView?我不是要求做动画,只是翻转它. 我可以通过以下方式垂直翻转 UILabel: label1.layer.transform = CATransform3DMakeRotation(M_PI, 1.0f, 0.0f, 0.0f); 然后把它转回来: label1.layer.transform = CATra ..
发布时间:2021-07-10 19:37:03 其他开发

将 OpenCV's findHomography 透视矩阵转换为 iOS'CATransform3D

我想采用从 OpenCV 返回的透视变换矩阵 findHomography 函数并将其(在 C++ 或 Objective-C 中)转换为 iOS 的 CATransform3D.我希望它们在 Core Graphics 端准确再现“扭曲"效果方面尽可能接近.示例代码将不胜感激! 来自 iOS 的 CATransform3D.h: /* 均匀的三维变换.*/结构体 CATransform3 ..
发布时间:2021-06-12 19:40:28 移动开发

应用CATransform3D后近似矩形吗?

我将 CATransform3D 应用于视图。 我的意思是我应用了一个复杂的变换:旋转,平移,缩放和透视。我需要找到近似最小矩形。我需要它,因为此视图已添加到 UIScrollView (要知道我需要的 contentSize ,当然也要实现“ scrollToItem :“) 解决方案 如果您想完全获得 CGRect 包含此转换后的视图,可以使用 convertRect:toVie ..
发布时间:2020-06-07 19:25:12 移动开发

应用锚点后,CATransform3DRotate效果消失了

以正确的观察进行编辑。 我使用以下两个片段来旋转UIImageView。在stage1之后,我得到了所需的3D效果:视图旋转(3D效果)并伸展了(更大的尺寸)。在stage2上,我尝试用右铰链摆动rightView。 如果我应用了更改锚点的线,则视图会正确摆动(右)有一个主要问题:在(旋转)3D效果仍然完好无损之后,视图的大小又恢复为原始大小(较小)。 有什么建议吗? r ..
发布时间:2020-06-07 19:25:10 移动开发

使用CATransform3D

我正在尝试在表格视图上旋转以倾斜表格(以提供类似于星球大战开启抓取的3d文字抓取的效果)。 环顾四周后,我发现了这个问题objective-сCALayer UIView真实旋转 和接受的答案似乎可以满足我的要求,但是,当我将代码应用到TableView时,它什么也没有做,并且表格照常显示。 这是我要复制的代码: 浮动距离= 50; CATransform3D ba ..

一起旋转X,Y和Z轴

我首先在Illustrator或Photoshop中3D旋转平面图形,获得精确的角度(x,y和z)在设计工具中应用于它,然后将相同的角度应用于放置在图像顶部的UILabel,以实现视觉上的同步。 如何使用CATransform3DConcat同时旋转2轴,但是我不确定如何应用第三个轴。 float angleX = -18 * M_PI / 180; CATransform3D ..
发布时间:2020-06-07 19:25:02 移动开发

3D立方体问题!第1部分

我已经使用 CALayer的在iPhone中创建了3D立方体。现在我想在用户双击时以90˚的角度旋转该多维数据集( CALayer )。 我能够将那个多维数据集( CALayer )旋转到90˚一次,但是当我双击多维数据集( CALayer )没有旋转时。 这是我使用的代码旋转立方体( CALayer ) CATransform3D x = CATransform3DRotat ..
发布时间:2020-06-07 19:24:55 移动开发

UITableViewCell中带有CATransform3D的UIView =断断续续的滚动

我正在使用自定义的 UITableViewCell ,在其中放置了一个子类 UIView (在 contentView 中, natch)。有问题的 UIView 显示一个方向箭头和两行支持文本。 箭头是通过具有背景颜色的图层显示的和箭头形的面具。背景颜色会根据箭头指向的方向更改为两种可能性之一。 该视图在需要更新时会收到 NSNotification 箭头(基于但不是与当前标题相同- ..
发布时间:2020-06-07 19:24:53 其他开发

如何获得转换后的CALayer的实际大小?

我有一个 200x200像素 CALayer 实例,我对其进行了两次转换: 缩小到50% 应用了3D透视 现在我想将转换后的图层与另一个图层对齐。为此,我需要转换后的图层的大小(宽度和高度)。 问题是 layer.bounds 仍返回该图层的 200x200 ,但由于透视变换,实际可见宽度较小,而高度大于 200 。顺便说一句,表示层的边界返回 0 。 有什么方法可以确定 ..
发布时间:2020-06-07 19:24:50 其他开发

CATransform3D的m34的含义

CATransform3D结构的m34是什么意思,我只知道它可以改变透视图,但是当值是-0.001和0.001时是什么意思? 解决方案 您可以在此处找到完整的详细信息。请注意,Apple使用相反的乘法顺序进行投影(相对于给定的链接),因此所有矩阵乘法都被反转并且所有矩阵都被转置。 含义的简短描述: m34 =到投影平面的1 / z距离(参考链接中的1 / e z 项) +的z ..
发布时间:2020-06-07 19:24:48 其他开发

核心动画-页面翻转

我想完全像Flipboard应用一样“弯曲"视图.我成功地翻转了整个视图,但没有弯曲.我的策略是:从要弯曲的视图的一半制作一个视图/图层,将其添加到视图中并翻转该新视图.因此:如何在一个视图/图层中仅绘制另一个视图的一半? 解决方案 嘿,我最近使用了对我来说很好的这段代码!您可以从页面的中心折叠获得类似页面动画的翻页板.它的概念很简单,易于使用.您只需在项目"AFKPageFliper"中 ..
发布时间:2020-05-19 01:19:14 移动开发