OLD | NEW |
---|---|
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 import 'dart:sky'; | 5 import 'dart:sky'; |
6 import 'dart:math' as math; | 6 import 'dart:math' as math; |
7 | 7 |
8 import 'package:sky/rendering/object.dart'; | |
abarth-chromium
2015/06/23 02:28:45
ditto
iansf
2015/06/23 22:46:09
Done.
| |
9 | |
8 double timeBase = null; | 10 double timeBase = null; |
9 | 11 |
10 void beginFrame(double timeStamp) { | 12 void beginFrame(double timeStamp) { |
11 tracing.begin('beginFrame'); | 13 tracing.begin('beginFrame'); |
12 if (timeBase == null) | 14 if (timeBase == null) |
13 timeBase = timeStamp; | 15 timeBase = timeStamp; |
14 double delta = timeStamp - timeBase; | 16 double delta = timeStamp - timeBase; |
15 PictureRecorder canvas = new PictureRecorder(view.width, view.height); | 17 PictureRecorder recorder = new PictureRecorder(); |
18 RenderCanvas canvas = new RenderCanvas(recorder, view.width, view.height); | |
16 canvas.translate(view.width / 2.0, view.height / 2.0); | 19 canvas.translate(view.width / 2.0, view.height / 2.0); |
17 canvas.rotate(math.PI * delta / 1800); | 20 canvas.rotate(math.PI * delta / 1800); |
18 canvas.drawRect(new Rect.fromLTRB(-100.0, -100.0, 100.0, 100.0), | 21 canvas.drawRect(new Rect.fromLTRB(-100.0, -100.0, 100.0, 100.0), |
19 new Paint()..color = const Color.fromARGB(255, 0, 255, 0)); | 22 new Paint()..color = const Color.fromARGB(255, 0, 255, 0)); |
20 view.picture = canvas.endRecording(); | 23 view.picture = recorder.endRecording(); |
21 view.scheduleFrame(); | 24 view.scheduleFrame(); |
22 tracing.end('beginFrame'); | 25 tracing.end('beginFrame'); |
23 } | 26 } |
24 | 27 |
25 void main() { | 28 void main() { |
26 view.setBeginFrameCallback(beginFrame); | 29 view.setBeginFrameCallback(beginFrame); |
27 view.scheduleFrame(); | 30 view.scheduleFrame(); |
28 } | 31 } |
OLD | NEW |