`
lovebirdegg
  • 浏览: 175012 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

使用CGAffineTransform实现对控件的旋转

阅读更多
CGAffineTransform rotation = CGAffineTransformMakeRotation(M_PI_2);
[xxx setTransform:rotation];
呵呵就这么简单的两行代码就可以实现了!
顺便记录一些常量,以后用的着!
#define M_E         2.71828182845904523536028747135266250   e
#define M_LOG2E     1.44269504088896340735992468100189214   log 2e
#define M_LOG10E    0.434294481903251827651128918916605082  log 10e
#define M_LN2       0.693147180559945309417232121458176568  log e2
#define M_LN10      2.30258509299404568401799145468436421   log e10
#define M_PI        3.14159265358979323846264338327950288   pi
#define M_PI_2      1.57079632679489661923132169163975144   pi/2
#define M_PI_4      0.785398163397448309615660845819875721  pi/4
#define M_1_PI      0.318309886183790671537767526745028724  1/pi
#define M_2_PI      0.636619772367581343075535053490057448  2/pi
#define M_2_SQRTPI  1.12837916709551257389615890312154517   2/sqrt(pi)
#define M_SQRT2     1.41421356237309504880168872420969808   sqrt(2)
#define M_SQRT1_2   0.707106781186547524400844362104849039  1/sqrt(2)

原文:http://blog.sina.com.cn/s/blog_60b45f230100f6ll.html
分享到:
评论

相关推荐

    iOS 控件沿椭圆旋转

    在iOS开发中,让控件沿椭圆路径旋转是一种实现独特动画效果的技术。这通常涉及到对Core Animation框架的深入理解,以及对图形上下文(Graphics Context)和贝塞尔曲线(Bezier Path)的运用。以下是对这个主题的详细...

    swift-JLStickerTextViewiOS实现在图片上添加文字支持旋转平移缩放

    例如,它可能会使用`CGAffineTransform`来处理旋转和平移,而缩放可能通过修改文本框的大小来实现。同时,为了处理多行文本,它可能使用了`NSAttributedString`来控制文本样式,并结合`NSLayoutManager`和`...

    控件以及双指放大缩小图片、单指拖动图片.zip

    在iOS中,使用CGAffineTransform类,通过makeScale()和makeTranslation()方法来创建变换。 6. 图片边界检查:为了避免图片在放大或移动后超出屏幕范围,我们需要进行边界检查。当图片边缘接近屏幕边缘时,应限制其...

    iOS游戏应用源代码——funkyboy-How-To-Create-a-Rotating-Wheel-Control.zip

    总之,这个压缩包提供了一个很好的学习机会,让你了解如何在iOS中使用UIKit来创建一个自定义的旋转轮控件。通过这个教程,开发者不仅可以掌握自定义视图的创建,还能提升对触摸事件处理、动画和布局理解。对于希望...

    SingleRotateImageViewDemo

    这通常涉及到修改`UIView`的`transform`属性,这是一个`CGAffineTransform`结构体,可以表示缩放、旋转、平移等多种变换。 5. **Core Animation**:iOS中的Core Animation框架用于处理视图动画和图形渲染。在...

    iOS 建行客户端的转盘菜单效果

    4. **CADisplayLink**或NSTimer:为了实现平滑的旋转动画,可以使用CADisplayLink或者NSTimer来定时更新视图的状态。这两个工具可以帮助开发者精确控制动画的帧率,确保动画流畅。 5. **手势识别...

    ios-CGAffine基本操作.zip

    这个压缩包文件"ios-CGAffine基本操作.zip"显然包含了关于如何在UI控件上应用CGAffineTransform进行位移形态控制的相关示例或教程。"IOS-CGAffineTransformIdentity"可能是其中的一个文件,通常表示...

    ios自定义宽高比相框

    在自定义相框时,我们可能会用到`CGRect`来定义相框的边界,或者使用`CGAffineTransform`来应用旋转、缩放等变换。 3. **Core Graphics**:如果需要在相框内添加自定义图形,如边框、角标等,可能需要用到Core ...

    图片跟随手指.rar

    在Android中,可以使用`Matrix`类来实现,它提供了平移、旋转和缩放等方法。在iOS中,我们可以利用`CGAffineTransform`进行类似的操作。 5. 动画平滑性:为了提供流畅的用户体验,通常需要使用动画来平滑过渡图片的...

    swift-ZMJImageEditor仿微信选取图片后编辑功能

    3. 图片旋转:图片旋转功能可能基于`CGAffineTransform`进行实现,这个结构体提供了对2D变换的描述,包括旋转、缩放、平移等。通过调整角度,可以实现图片的任意角度旋转。 4. 滤镜应用:在Swift中,图片滤镜常常...

    ios应用源码之酷黑轮盘计数器 20181210

    在本案例中,酷黑轮盘计数器的UI很可能包含自定义的视图控制器(UIViewController)和视图(UIView),这些视图可能使用UIKit框架中的控件,如UILabel、UIButton等进行定制,以实现旋转轮盘的效果。可能还会使用到...

    轮盘效果demo

    在轮盘效果中,我们需要使用`CGAffineTransform.rotate(by:)`方法来实现旋转动画。 3. **CADisplayLink**: 为了实现平滑的动画效果,开发者通常会使用CADisplayLink,这是一个定时器,每当屏幕刷新时都会调用指定的...

    IOS应用源码之向四周动态扩展的圆形按钮 .rar

    CGAffineTransform允许我们对视图进行平移、旋转、缩放等变换;而CAShapeLayer则提供了更灵活的方式来绘制和动画化形状,如圆形。通过修改layer的frame、bounds或transform属性,并配合Core Animation的动画,可以...

    UIImageView-Rotate

    然而,有时我们可能需要对UIImageView中的图像进行旋转操作,比如调整照片的方向或者实现某种特殊的视觉效果。在Objective-C中,处理这种需求需要理解一些核心概念和技术。 首先,我们要了解UIImageView的基本使用...

    图片截取demo

    同时,`CGAffineTransform`可能被用来处理旋转操作。 在实际开发中,还需要考虑性能优化,如避免不必要的内存分配和图像解码,以及适配不同的设备分辨率和屏幕方向。此外,如果应用需要在后台处理图像,可能还需要...

    IOS应用源码之酷炫的图片展示效果 .rar

    9. **图片裁剪与变形**: 使用`CGAffineTransform`可以对图片进行裁剪和变形操作,如圆角、拉伸等。 10. **状态管理**: 在图片加载过程中,考虑显示加载指示器、错误提示以及无数据时的界面反馈,以提高用户体验。 ...

    UIImageView的手势

    在iOS开发中,UIImageView是用于显示图像的常见控件,而手势识别则为与用户交互提供了丰富的可能性。本文将深入探讨如何在UIImageView中添加和使用各种手势,包括点击、拖动、旋转和缩放。 首先,我们要引入手势...

    IOS应用源码之【应用】电子书阅读器 - iOS PDF Reader(Xcode 4.2 and iOS 5).rar

    这些功能可能通过手势识别(如UIPanGestureRecognizer、UIPinchGestureRecognizer、UIRotationGestureRecognizer)来实现,通过对CGAffineTransform的应用改变页面的视图变换矩阵。 4. **界面设计**:UI设计是iOS...

    ios-仿QQ菜单(完整版)可直接使用.zip

    3. **锚点(Anchor Point)**:锚点是iOS中CGAffineTransform的一部分,用于定义视图的旋转、缩放和位移中心点。在仿QQ菜单中,锚点可能被用来设置菜单展开或收起时的动画效果,例如,菜单可能从某个特定的屏幕角落弹...

    swift-MMCardView类似Wallet应用的卡片式动效设计及演示

    开发者需要理解如何创建和应用关键帧动画(CAKeyframeAnimation)、平移动画(CADisplayLink)、以及视图变换(CGAffineTransform)等,来实现卡片的滑动、旋转、缩放等效果。 4. **手势识别(UIGestureRecognizer...

Global site tag (gtag.js) - Google Analytics