27
27
if ( ! tc ) { var tc = { } ; }
28
28
29
29
( function ( tc ) {
30
- if ( ! tc . particle ) { tc . particle = { } ; }
30
+
31
+
32
+ ( function requestAnimationFrame ( ) {
33
+ var lastTime = 0 ;
34
+ var vendors = [ 'ms' , 'moz' , 'webkit' , 'o' ] ;
35
+ for ( var x = 0 ; x < vendors . length && ! window . requestAnimationFrame ; ++ x ) {
36
+ window . requestAnimationFrame = window [ vendors [ x ] + 'RequestAnimationFrame' ] ;
37
+ window . cancelAnimationFrame =
38
+ window [ vendors [ x ] + 'CancelAnimationFrame' ] || window [ vendors [ x ] + 'CancelRequestAnimationFrame' ] ;
39
+ }
31
40
41
+ if ( ! window . requestAnimationFrame )
42
+ window . requestAnimationFrame = function ( callback , element ) {
43
+ var currTime = new Date ( ) . getTime ( ) ;
44
+ var timeToCall = Math . max ( 0 , 16 - ( currTime - lastTime ) ) ;
45
+ var id = window . setTimeout ( function ( ) { callback ( currTime + timeToCall ) ; } , timeToCall ) ;
46
+ lastTime = currTime + timeToCall ;
47
+ return id ;
48
+ } ;
49
+
50
+ if ( ! window . cancelAnimationFrame )
51
+ window . cancelAnimationFrame = function ( id ) {
52
+ clearTimeout ( id ) ;
53
+ } ;
54
+ } ( ) ) ;
55
+
56
+ if ( ! tc . particle ) { tc . particle = { } ; }
32
57
33
- tc . particle . context = function ( app , dom , options ) {
58
+ tc . particle . context = function ( dom , options ) {
34
59
var _me , o ;
35
60
_me = dom ;
36
61
@@ -51,7 +76,6 @@ if(!tc){ var tc = {}; }
51
76
_me . particles = [ ] ;
52
77
_me . frame = 0 ;
53
78
_me . stopped = true ;
54
- _me . paused = false ;
55
79
_me . timer = null ;
56
80
_me . mouse_pos = null ;
57
81
_me . mouse_down_pos = null ;
@@ -75,7 +99,7 @@ if(!tc){ var tc = {}; }
75
99
_me . css ( size ) . attr ( 'width' , size . width ) . attr ( 'height' , size . height ) ;
76
100
_me . anchor_offset = {
77
101
x :size . width / 2 ,
78
- y :90
102
+ y :size . height / 3
79
103
}
80
104
for ( i = 0 ; i < _me . particles . length ; i ++ ) {
81
105
_me . particles [ i ] [ 'set_anchor_offset' ] ( _me . anchor_offset ) ;
@@ -106,8 +130,10 @@ if(!tc){ var tc = {}; }
106
130
for ( i = 0 ; i < _me . forces . length ; i ++ ) {
107
131
_me . forces [ i ] . radius = ( _me . forces [ i ] . radius * 0.98 ) ;
108
132
}
109
- _me . timer = setTimeout ( _me . update , ( 1000 / o . fps ) ) ;
110
- if ( ! _me . stopped ) {
133
+ if ( _me . stopped ) {
134
+ window . cancelAnimationFrame ( ) ;
135
+ } else {
136
+ window . requestAnimationFrame ( _me . update ) ;
111
137
for ( i = 0 ; i < _me . particles . length ; i ++ ) {
112
138
_me . particles [ i ] [ 'reset_forces' ] ( ) ;
113
139
_me . particles [ i ] [ 'add_forces' ] ( _me . forces ) ;
@@ -118,40 +144,30 @@ if(!tc){ var tc = {}; }
118
144
_me . particles [ i ] [ 'update' ] ( ) ;
119
145
_me . net_energy = _me . net_energy + _me . particles [ i ] . norm_dist_from_anchor ;
120
146
}
147
+ _me . net_energy = _me . net_energy / _me . particles . length ;
148
+ _me . mouse_down_pos = null ;
149
+ _draw ( ) ;
121
150
}
122
- _me . net_energy = _me . net_energy / _me . particles . length ;
123
- _me . mouse_down_pos = null ;
124
- _draw ( ) ;
125
- }
126
-
127
- _me . isPaused = function ( ) {
128
- return _paused ;
151
+
129
152
}
130
153
131
154
_me . start = function ( ) {
132
- _me . paused = false ;
133
155
_me . mouse_pos = null ;
134
156
_me . mouse_down_pos = null ;
135
157
if ( _me . stopped ) {
136
158
_me . stopped = false ;
137
- _me . timer = setTimeout ( _me . update , ( 1000 / o . fps ) ) ;
159
+ window . requestAnimationFrame ( _me . update ) ;
138
160
}
139
161
}
140
162
141
- _me . pause = function ( ) {
142
- _me . paused = true ;
143
- }
144
-
145
163
_me . stop = function ( ) {
146
164
_me . stopped = true ;
147
- //_me.timer.cancel();
148
- clearTimeout ( _me . timer ) ;
149
165
}
150
166
151
- function _draw ( ) {
167
+ function _draw ( drawing_context ) {
152
168
var opacity , i , alpha ;
153
169
154
- _me . context . globalAlpha = 1 ;
170
+ _me . context . globalAlpha = 1.0 ;
155
171
_me . context . fillStyle = 'rgba(252,252,252,0.45)' ;
156
172
_me . context . fillRect (
157
173
0 ,
@@ -171,17 +187,22 @@ if(!tc){ var tc = {}; }
171
187
}
172
188
173
189
if ( opacity ) {
174
- alpha = 1 - opacity + 0.01 ;
190
+ alpha = 1.0 - opacity + 0.01 ;
175
191
} else {
176
- alpha = 1 ;
192
+ alpha = 1.0 ;
177
193
}
178
194
179
195
_me . context . globalAlpha = alpha ;
180
196
197
+ _me . context . fillStyle = '#000000' ;
181
198
for ( i = 0 ; i < _me . particles . length ; i ++ ) {
182
199
_me . particles [ i ] . draw ( _me . context ) ;
183
200
}
184
201
}
202
+
203
+ function _render ( ) {
204
+
205
+ }
185
206
186
207
return this . initialize ( ) ;
187
208
}
0 commit comments