Port spinning_square to SkyView universe

This demo shows how to create a spinning square using the lowest-level APIs. We
should probably create more spinning square demos at the other layers of the
system.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/1147393002
This commit is contained in:
Adam Barth 2015-05-21 12:14:10 -07:00
parent c63c396da8
commit ed38815dbd

View File

@ -0,0 +1,25 @@
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'dart:sky';
double timeBase = null;
void beginFrame(double timeStamp) {
if (timeBase == null)
timeBase = timeStamp;
double delta = timeStamp - timeBase;
PictureRecorder canvas = new PictureRecorder(view.width, view.height);
canvas.translate(view.width / 2.0, view.height / 2.0);
canvas.rotateDegrees(delta / 10);
canvas.drawRect(new Rect()..setLTRB(-100.0, -100.0, 100.0, 100.0),
new Paint()..setARGB(255, 0, 255, 0));
view.picture = canvas.endRecording();
view.scheduleFrame();
}
void main() {
view.setBeginFrameCallback(beginFrame);
view.scheduleFrame();
}