File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -23,6 +23,8 @@ class Base extends NeoBase {
2323 app : [
2424 'clearGraph' ,
2525 'initGraph' ,
26+ 'pause' ,
27+ 'resume' ,
2628 'setTheme' ,
2729 'updateSize'
2830 ]
@@ -51,6 +53,11 @@ class Base extends NeoBase {
5153 * @member {OffscreenCanvasRenderingContext2D|null} context=null
5254 */
5355 context = null
56+ /**
57+ * Flag to pause the render loop.
58+ * @member {Boolean} isPaused=false
59+ */
60+ isPaused = false
5461
5562 /**
5663 * @member {Function} renderLoop=this.render.bind(this)
@@ -77,7 +84,8 @@ class Base extends NeoBase {
7784 me . context = null ;
7885 me . canvasId = null ;
7986 me . canvasSize = null ;
80- me . animationId = null
87+ me . animationId = null ;
88+ me . isPaused = false
8189 }
8290
8391 /**
@@ -96,11 +104,30 @@ class Base extends NeoBase {
96104 me . waitForCanvas ( canvasId , windowId , hasChange )
97105 }
98106
107+ /**
108+ * Pauses the simulation.
109+ */
110+ pause ( ) {
111+ this . isPaused = true
112+ }
113+
99114 /**
100115 * Abstract render method
101116 */
102117 render ( ) { }
103118
119+ /**
120+ * Resumes the simulation.
121+ */
122+ resume ( ) {
123+ let me = this ;
124+
125+ if ( me . isPaused ) {
126+ me . isPaused = false ;
127+ me . renderLoop ( )
128+ }
129+ }
130+
104131 /**
105132 * Exposed method for Remote Access to trigger the reactive config setter.
106133 * @param {String } value
Original file line number Diff line number Diff line change @@ -115,8 +115,6 @@ class HomeCanvas extends Base {
115115 */
116116 remote : {
117117 app : [
118- 'pause' ,
119- 'resume' ,
120118 'updateMouseState'
121119 ]
122120 } ,
@@ -137,11 +135,6 @@ class HomeCanvas extends Base {
137135 * @member {Object} gradients={}
138136 */
139137 gradients = { }
140- /**
141- * Flag to pause the render loop.
142- * @member {Boolean} isPaused=false
143- */
144- isPaused = false
145138 /**
146139 * Tracked mouse position for interactive physics.
147140 * Initialize off-screen to prevent startup jitters.
@@ -192,7 +185,6 @@ class HomeCanvas extends Base {
192185 me . packetBuffer = null ;
193186 me . shockwaves = [ ] ;
194187 me . sparks = [ ] ;
195- me . isPaused = false ;
196188 me . gradients = { } ;
197189 me . scale = 1
198190 }
@@ -713,25 +705,6 @@ class HomeCanvas extends Base {
713705 }
714706 }
715707
716- /**
717- * Pauses the simulation.
718- */
719- pause ( ) {
720- this . isPaused = true
721- }
722-
723- /**
724- * Resumes the simulation.
725- */
726- resume ( ) {
727- let me = this ;
728-
729- if ( me . isPaused ) {
730- me . isPaused = false ;
731- me . renderLoop ( )
732- }
733- }
734-
735708 /**
736709 * @member {Function} renderLoop=this.render.bind(this)
737710 */
Original file line number Diff line number Diff line change @@ -116,8 +116,6 @@ class ServicesCanvas extends Base {
116116 */
117117 remote : {
118118 app : [
119- 'pause' ,
120- 'resume' ,
121119 'updateMouseState' ,
122120 'updateSize'
123121 ]
@@ -153,11 +151,6 @@ class ServicesCanvas extends Base {
153151 * @member {Object} gradients={}
154152 */
155153 gradients = { }
156- /**
157- * Flag to pause the render loop.
158- * @member {Boolean} isPaused=false
159- */
160- isPaused = false
161154 /**
162155 * Tracked mouse position for interactive physics.
163156 * Initialize off-screen to prevent startup jitters.
@@ -241,7 +234,6 @@ class ServicesCanvas extends Base {
241234 me . strataBuffer = null ;
242235 me . particleBuffer = null ;
243236 me . superHexes = [ ] ;
244- me . isPaused = false ;
245237 me . gradients = { } ;
246238 me . scale = 1
247239 }
@@ -927,24 +919,6 @@ class ServicesCanvas extends Base {
927919 }
928920 }
929921
930- /**
931- * Pauses the simulation.
932- */
933- pause ( ) {
934- this . isPaused = true
935- }
936-
937- /**
938- * Resumes the simulation.
939- */
940- resume ( ) {
941- let me = this ;
942- if ( me . isPaused ) {
943- me . isPaused = false ;
944- me . renderLoop ( )
945- }
946- }
947-
948922 /**
949923 * Main Render Loop.
950924 * Updates physics, projects geometry, and draws all layers.
You can’t perform that action at this time.
0 commit comments