5.9 iOS 动力学元素UIDynamicItemBehavior自身属性

1.9动力学元素UIDynamicItemBehavior自身属性

(一)动力学元素UIDynamicItemBehavior作用

UIDynamicItemBehavior作用:是一个辅助行为,用来设置动力学元素参与物理仿真过程中的参数,如:弹性系数,摩擦系数,密度,阻力,角阻力,以及是否允许旋转等.

(二)UIDynamicItemBehavior常用属性和方法


@property (nonatomic, readonly, copy) NSArray<id <UIDynamicItem>> *items;
// 弹性系数,决定了碰撞时的弹性程度
@property (readwrite, nonatomic) CGFloat elasticity; // Usually between 0 (inelastic) and 1 (collide elastically) 
// 摩擦系数,决定了延接触面平滑时的摩擦力有多大
@property (readwrite, nonatomic) CGFloat friction; // 0 being no friction between objects slide along each other
// 密度,根size结合使用,计算物体的总质量,质量越大物体减速或加速越困难.
@property (readwrite, nonatomic) CGFloat density; // 1 by default
// 阻力,决定线性移动的阻力大小,和摩擦系数不同,摩擦系数只作用于摩擦运动
@property (readwrite, nonatomic) CGFloat resistance; // 0: no velocity damping
// 角阻力 ,决定旋转运动时的阻力
@property (readwrite, nonatomic) CGFloat angularResistance; // 0: no angular velocity damping

// 是否允许旋转 在真是物理环境中是没有的.为NO时无论施加到物体上面是什么都不会动
@property (readwrite, nonatomic) BOOL allowsRotation; // force an item to never rotate
// 初始化一个UIDynamicItemBehavior
- (instancetype)initWithItems:(NSArray<id <UIDynamicItem>> *)items;
// 添加一个动力学元素
- (void)addItem:(id <UIDynamicItem>)item;
// 移除一个动力学元素
- (void)removeItem:(id <UIDynamicItem>)item;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • UIKit动力学最大的特点是将现实世界动力驱动的动画引入了UIKit,比如重力,铰链连接,碰撞,悬挂等效果,即将2...
    BarleyZ阅读 5,071评论 0 49
  • 概念介绍 UIDynamic从ios7才开始有的,其他2D仿真引擎:BOX2D:C语言框架,免费Chipmunk:...
    我是滕先生阅读 6,678评论 5 23
  • 我又乱花钱了,买了战隼的喜马拉雅课程。 遇见的第一个问题就是,你想培养什么习惯和技能? 罗列下我想培养的习惯: 1...
    木ding西阅读 1,787评论 0 0
  • 爱的等待恰逢花开,正如雨后春笋般茁壮成长。在迷途的光怪陆离中,我们期待爱,寻觅爱,等待爱,期翼着有一天爱神可以眷顾...
    阿俊xi阅读 1,683评论 0 0