source: 2017/30/MikkoH/Sq/Sq/Sq/Sq.cs @ 9236

Revision 9236, 1.3 KB checked in by mianhayr, 2 years ago (diff)
Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4
5public class Sq : PhysicsGame
6{
7    List<Vector> ps = new List<Vector>();
8    double x, y, z, a, fac = 0.01;
9
10    public override void Begin()
11    {
12        Window.Width = 1200; Window.Height = 800;
13        Level.Background.Color = Color.Black;
14
15        for (int i = -300; i < 300; i += 10) ps.Add(new Vector(-300, i));
16        for (int i = -300; i < 300; i += 10) ps.Add(new Vector(i, 300));
17        for (int i = 300; i > -300; i -= 10) ps.Add(new Vector(300, i));
18        for (int i = 300; i > -300; i -= 10) ps.Add(new Vector(i, -300));
19       
20    }
21
22    protected override void Paint(Canvas c)
23    {
24        c.BrushColor = Color.Red;
25        for (int i = 0; i < ps.Count; i++)
26            c.DrawLine(ps[i % ps.Count], ps[(i + ps.Count / 4) % ps.Count]);
27
28        for (int i = 0; i < ps.Count/4; i++) ps[i] = new Vector(ps[i].X + (x -= fac), ps[i].Y + (y -= fac));
29        for (int i = ps.Count / 4 * 3; i < ps.Count; i++) ps[i] = new Vector(ps[i].X + (x -= fac), ps[i].Y + (y -= fac));
30        for (int i = ps.Count / 4; i < ps.Count / 2; i++) ps[i] = new Vector(ps[i].X + (z += fac), ps[i].Y + (a += fac));
31        for (int i = ps.Count / 2; i < ps.Count / 4 * 3; i++) ps[i] = new Vector(ps[i].X + (z += fac), ps[i].Y + (a += fac));
32
33        base.Paint(c);
34    }
35}
Note: See TracBrowser for help on using the repository browser.