OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Apple Inc. All rights reserved. | 2 * Copyright (C) 2011 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 21 matching lines...) Expand all Loading... |
32 | 32 |
33 namespace WebCore { | 33 namespace WebCore { |
34 | 34 |
35 inline int blend(int from, int to, double progress) | 35 inline int blend(int from, int to, double progress) |
36 { | 36 { |
37 return lround(from + (to - from) * progress); | 37 return lround(from + (to - from) * progress); |
38 } | 38 } |
39 | 39 |
40 inline unsigned blend(unsigned from, unsigned to, double progress) | 40 inline unsigned blend(unsigned from, unsigned to, double progress) |
41 { | 41 { |
42 return lround(to > from ? from + (to - from) * progress : from - (from - to)
* progress); | 42 return clampTo<unsigned>(round(to > from ? from + (to - from) * progress : f
rom - (from - to) * progress)); |
43 } | 43 } |
44 | 44 |
45 inline double blend(double from, double to, double progress) | 45 inline double blend(double from, double to, double progress) |
46 { | 46 { |
47 return from + (to - from) * progress; | 47 return from + (to - from) * progress; |
48 } | 48 } |
49 | 49 |
50 inline float blend(float from, float to, double progress) | 50 inline float blend(float from, float to, double progress) |
51 { | 51 { |
52 return static_cast<float>(from + (to - from) * progress); | 52 return static_cast<float>(from + (to - from) * progress); |
(...skipping 11 matching lines...) Expand all Loading... |
64 | 64 |
65 // Calculates the accuracy for evaluating a timing function for an animation wit
h the specified duration. | 65 // Calculates the accuracy for evaluating a timing function for an animation wit
h the specified duration. |
66 inline double accuracyForDuration(double duration) | 66 inline double accuracyForDuration(double duration) |
67 { | 67 { |
68 return 1.0 / (200.0 * duration); | 68 return 1.0 / (200.0 * duration); |
69 } | 69 } |
70 | 70 |
71 } // namespace WebCore | 71 } // namespace WebCore |
72 | 72 |
73 #endif // AnimationUtilities_h | 73 #endif // AnimationUtilities_h |
OLD | NEW |