source: 2010/27/sijoseha/GridTest/Peli.cs @ 1327

Revision 1327, 2.5 KB checked in by sijoseha, 11 years ago (diff)

Commit, jotta voin jatkaa kotona.

Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Widgets;
5using Jypeli.Assets;
6
7public class Peli : PhysicsGame
8{
9    protected override void Begin()
10    {
11        Grid verkko = new Grid();
12        int gridSize = 50;
13        Vector gPosition = new Vector(0, 0);
14        for (double i = Level.Left; i < Level.Width; i += gridSize)
15        {
16            for (double j = Level.Bottom; j < Level.Height; j += gridSize)
17            {
18                Point piste = new Point(new Vector(i, j), gPosition);
19                verkko.AddPoint(piste);
20                gPosition.Y++;
21            }
22            gPosition.X++;
23        }
24        //Point piste1 = new Point(new Vector(0,0));
25        //Point piste2 = new Point(new Vector(50, 0));
26        //Point piste3 = new Point(new Vector(50, -150));
27        //verkko.AddPoint(piste1);
28        //verkko.AddPoint(piste2);
29        //verkko.AddPoint(piste3);
30
31        for (int i = 0; i < verkko.points.Count; i++)
32        {
33            PhysicsObject pallo = new PhysicsObject(10, 10);
34            pallo.Shape = Shapes.Circle;
35            pallo.Position = verkko.points[i].position;
36            Add(pallo);
37        }
38    }
39}
40
41public class Grid
42{
43    public Boolean visible;
44    public List<Point> points;
45    public List<Edge> edges;
46
47    public Grid()
48    {
49        points = new List<Point>();
50        edges = new List<Edge>();
51    }
52
53    public void AddPoint(Point piste)
54    {
55        points.Add(piste);
56    }
57
58    public void AddEdge(Point piste1, Point piste2, double lenght)
59    {
60        AddPoint(piste1);
61        AddPoint(piste2);
62        edges.Add(new Edge(piste1, piste2, lenght));
63    }
64
65    public void FormEdges()
66    {
67        foreach (Point point in points)
68        {
69           
70        }
71    }
72}
73
74public class Point
75{
76    public Point[] neighbors;   // 1 = left, 2 = top, 3 = right, 4 = bottom
77    public Vector position;
78    public Vector gridPosition;
79    public Point(Vector p, Vector gP)
80    {
81        this.position = p;
82        this.gridPosition = gP;
83        neighbors = new Point[4];
84    }
85
86    public void AddNeighbor(Point p, int dir)
87    {
88        neighbors[dir] = p;
89    }
90}
91
92public class Edge
93{
94    public double length;
95    public Point startPoint;
96    public Point endPoint;
97    public Edge(Point startPoint, Point endPoint, double length)
98    {
99        this.startPoint = startPoint;
100        this.endPoint = endPoint;
101        this.length = length;
102    }
103}
Note: See TracBrowser for help on using the repository browser.