139 | Tween Classes |
140 |
141 | PMTweenUnit |
142 | PMTweenUnit handles a single tween operation on an NSValue, interpolating between specified starting and ending values. |
143 |
144 |
145 | PMTweenPhysicsUnit |
146 | PMTweenPhysicsUnit handles a single physics-based tween operation on an NSValue, using a physics system to update a value with decaying velocity. |
147 |
148 |
149 | PMTweenGroup |
150 | PMTweenGroup handles the tweening of one or more objects which conform to the PMTweening protocol, either being instances of PMTweenUnit or other custom classes. The PMTweenGroup class is a good solution when you want to easily synchronize the operation of many tweens. |
151 |
152 |
153 | PMTweenSequence |
154 | PMTweenSequence allows objects which conform to the PMTweening protocol to be chained together in a sequential series of tween steps. |
155 |
156 |
157 | Tempo Classes |
158 |
159 | PMTweenCATempo |
160 | PMTweenCATempo is a concrete subclass of PMTweenTempo, and uses a CADisplayLink object to send out tempo updates that are synchronized with the refresh rate of the display. |
161 |
162 |
163 | PMTweenBeat |
164 | PMTweenBeat broadcasts updates from a PMTweenTempo object to multiple objects which adopt the PMTweening protocol. This allows you to use a single tempo object for all tween objects, avoiding a performance impact when tweening many objects. |
165 |
166 |
167 | Easing Types |
168 |
169 | PMTweenEasingLinear |
170 | Provides a linear easing equation. |
171 |
172 |
173 | PMTweenEasingQuadratic |
174 | Provides quadratic easing equations. |
175 |
176 |
177 | PMTweenEasingQuartic |
178 | Provides quartic easing equations. |
179 |
180 |
181 | PMTweenEasingQuintic |
182 | Provides quintic easing equations. |
183 |
184 |
185 | PMTweenEasingCubic |
186 | Provides cubic easing equations. |
187 |
188 |
189 | PMTweenEasingSine |
190 | Provides easing equations based on sine. |
191 |
192 |
193 | PMTweenEasingCircular |
194 | Provides circular easing equations. |
195 |
196 |
197 | PMTweenEasingElastic |
198 | Provides easing equations that behave in an elastic fashion. |
199 |
200 |
201 | PMTweenEasingExpo |
202 | Provides exponential easing equations. |
203 |
204 |
205 | PMTweenEasingBack |
206 | Provides back easing equations. |
207 |
208 |
209 | PMTweenEasingBounce |
210 | Provides easing equations that have successively smaller value peaks, like a bouncing ball. |
211 |
212 |
213 |
214 |
215 |
216 | ## Tests
217 |
218 | PMTween is tested using [Specta](https://github.com/specta/specta)/[Expecta](https://github.com/specta/expecta/). You can install the test dependencies using CocoaPods by running 'pod install' from within the Tests directory.
219 |
220 | ## Credits
221 |
222 | PMTween was created by [Brett Walker](https://twitter.com/petsound) of [Poet & Mountain](http://poetmountain.com).
223 |
224 | ## Compatibility
225 |
226 | * Requires iOS 7.0 or later, tvOS 9.0 or later
227 | * PMTween uses ARC
228 |
229 | ## License
230 |
231 | PMTween is licensed under the MIT License. I'd love to know if you use PMTween in your app!
232 |
--------------------------------------------------------------------------------
/Tests/.gitignore:
--------------------------------------------------------------------------------
1 | # Mac OS X Finder and whatnot
2 | .DS_Store
3 |
4 | # rvm files
5 | .ruby-version
6 | .ruby-gemset
7 | Gemfile
8 | Gemfile.lock
9 |
10 | # Xcode
11 | build/
12 | *.pbxuser
13 | !default.pbxuser
14 | *.mode1v3
15 | !default.mode1v3
16 | *.mode2v3
17 | !default.mode2v3
18 | *.perspectivev3
19 | !default.perspectivev3
20 | *.xcworkspace
21 | !default.xcworkspace
22 | xcuserdata
23 | profile
24 | *.moved-aside
25 | DerivedData
26 | .idea
27 |
28 | # cocoapods
29 | Pods/
30 | Podfile.lock
31 |
--------------------------------------------------------------------------------
/Tests/PMTweenTests/Classes/TestObject.h:
--------------------------------------------------------------------------------
1 | //
2 | // TestObject.h
3 | // PMTween
4 | //
5 | // Created by Brett Walker on 6/2/14.
6 | // Copyright (c) 2014-2016 Poet & Mountain, LLC. All rights reserved.
7 | //
8 |
9 | #import