From cc9ccd26baac2d916351ca76983d49e72531cbc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Dulski?= Date: Mon, 8 Apr 2019 15:47:01 +0200 Subject: [PATCH] Tworzenie Mapy --- .../CzokoŚmieciarka.WPFv2/MainWindow.xaml.cs | 111 +++++++++++------- .../CzokoŚmieciarka.WPFv2/Models/Dump.cs | 3 +- 2 files changed, 72 insertions(+), 42 deletions(-) diff --git a/Trunk/Interface/CzokoŚmieciarka.WPFv2/MainWindow.xaml.cs b/Trunk/Interface/CzokoŚmieciarka.WPFv2/MainWindow.xaml.cs index 7531163..9cd5c65 100644 --- a/Trunk/Interface/CzokoŚmieciarka.WPFv2/MainWindow.xaml.cs +++ b/Trunk/Interface/CzokoŚmieciarka.WPFv2/MainWindow.xaml.cs @@ -13,6 +13,7 @@ using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; +using CzokoŚmieciarka.DataModels.Enums; using CzokoŚmieciarka.DataModels.GeneralModels.Models; using CzokoŚmieciarka.DataModels.Interfaces.TrashCans; using CzokoŚmieciarka.DataModels.Models; @@ -34,47 +35,9 @@ namespace CzokoŚmieciarka.WPFv2 public MainWindow() { - ColumnDefinition column; - RowDefinition row; + InitializeComponent(); - for(int i = 0; i < Rows; i++) - { - column = new ColumnDefinition(); - row = new RowDefinition(); - Board.ColumnDefinitions.Add(column); - Board.RowDefinitions.Add(row); - column = new ColumnDefinition(); - row = new RowDefinition(); - CollectorBoard.ColumnDefinitions.Add(column); - CollectorBoard.RowDefinitions.Add(row); - for (int j = 0; j < Columns; j++) - { - Road road = new Road(); - Objects[i, j] = road; - Grid.SetRow(Objects[i,j].Image, i); - Grid.SetColumn(Objects[i, j].Image, j); - Board.Children.Add(Objects[i, j].Image); - } - - IEnumerable trashCans = new List(); - WPFHouse house = new WPFHouse(new Coords(i, i), trashCans); - Objects[i, i] = house; - Grid.SetRow(Objects[i, i].Image, i); - Grid.SetColumn(Objects[i, i].Image, i); - Board.Children.Add(Objects[i, i].Image); - - } - - GarbageCollectorContainers = new List(); - garbageCollector = new WPFGarbageCollector(new Coords(2, 1), GarbageCollectorContainers); - Grid.SetRow(garbageCollector.Image, garbageCollector.Position.Y); - Grid.SetColumn(garbageCollector.Image, garbageCollector.Position.X); - CollectorBoard.Children.Add(garbageCollector.Image); - CollectorBoard.ShowGridLines = true; - CollectorInfo.ItemsSource = garbageCollector.TrashContainers; - //CollectorInfo.Items.Add(garbageCollector); - //CollectorInfo.Columns.Add(new DataGridTextColumn {Header="X", Binding = new Binding("Position.X")}); - //CollectorInfo.Columns.Add(new DataGridTextColumn { Header = "Y", Binding = new Binding("Position.Y") }); + BoardInitialize(); } private void MainWindow_OnKeyDown(object sender, KeyEventArgs e) @@ -91,5 +54,73 @@ namespace CzokoŚmieciarka.WPFv2 CollectorBoard.Children.Add(garbageCollector.Image); } + + + private void BoardInitialize() + { + ColumnDefinition column; + RowDefinition row; + for (int i = 0; i < Rows; i++) + { + column = new ColumnDefinition(); + row = new RowDefinition(); + Board.ColumnDefinitions.Add(column); + Board.RowDefinitions.Add(row); + column = new ColumnDefinition(); + row = new RowDefinition(); + CollectorBoard.ColumnDefinitions.Add(column); + CollectorBoard.RowDefinitions.Add(row); + for (int j = 0; j < Columns; j++) + { + Road road = new Road(); + Objects[i, j] = road; + Grid.SetRow(Objects[i, j].Image, i); + Grid.SetColumn(Objects[i, j].Image, j); + Board.Children.Add(Objects[i, j].Image); + } + + IEnumerable trashCans = new List(); + WPFHouse house = new WPFHouse(new Coords(i, i), trashCans); + Objects[i, i] = house; + Grid.SetRow(Objects[i, i].Image, i); + Grid.SetColumn(Objects[i, i].Image, i); + Board.Children.Add(Objects[i, i].Image); + + } + Objects[2,7] = new WPFDump(new TypeOfGarbage(GarbageType.Glass,1,1), 10000,new Coords(2,7)); + Grid.SetColumn(Objects[2, 7].Image, 2); + Grid.SetRow(Objects[2, 7].Image, 7); + Board.Children.Add(Objects[2, 7].Image); + Objects[3,7] = new WPFDump(new TypeOfGarbage(GarbageType.Organic,1,1),10000, new Coords(3,7)); + Grid.SetColumn(Objects[3, 7].Image, 3); + Grid.SetRow(Objects[3, 7].Image, 7); + Board.Children.Add(Objects[3, 7].Image); + Objects[2,8] = new WPFDump(new TypeOfGarbage(GarbageType.Paper,1,1), 10000, new Coords(2,8)); + Grid.SetColumn(Objects[2, 8].Image, 2); + Grid.SetRow(Objects[2, 8].Image, 8); + Board.Children.Add(Objects[2, 8].Image); + Objects[3,8] = new WPFDump(new TypeOfGarbage(GarbageType.PlasticMetal, 1,1), 10000, new Coords(3,8)); + Grid.SetColumn(Objects[3, 8].Image, 3); + Grid.SetRow(Objects[3, 8].Image, 8); + Board.Children.Add(Objects[3, 8].Image); + + + GarbageCollectorContainers = new List() + { + new GarbageCollectorContainer(new TypeOfGarbage(GarbageType.Glass,1,1), 500), + new GarbageCollectorContainer(new TypeOfGarbage(GarbageType.Organic,1,1), 500), + new GarbageCollectorContainer(new TypeOfGarbage(GarbageType.PlasticMetal, 1,1),500), + new GarbageCollectorContainer(new TypeOfGarbage(GarbageType.Paper, 1,1), 500) + }; + garbageCollector = new WPFGarbageCollector(new Coords(2, 1), GarbageCollectorContainers); + Grid.SetRow(garbageCollector.Image, garbageCollector.Position.Y); + Grid.SetColumn(garbageCollector.Image, garbageCollector.Position.X); + CollectorBoard.Children.Add(garbageCollector.Image); + CollectorBoard.ShowGridLines = true; + //CollectorInfo.ItemsSource = garbageCollector.TrashContainers; + //CollectorInfo.Items.Add(garbageCollector); + //CollectorInfo.Columns.Add(new DataGridTextColumn {Header="X", Binding = new Binding("Position.X")}); + //CollectorInfo.Columns.Add(new DataGridTextColumn { Header = "Y", Binding = new Binding("Position.Y") }); + } } } diff --git a/Trunk/Interface/CzokoŚmieciarka.WPFv2/Models/Dump.cs b/Trunk/Interface/CzokoŚmieciarka.WPFv2/Models/Dump.cs index 2f50ebe..ba82dcf 100644 --- a/Trunk/Interface/CzokoŚmieciarka.WPFv2/Models/Dump.cs +++ b/Trunk/Interface/CzokoŚmieciarka.WPFv2/Models/Dump.cs @@ -20,9 +20,8 @@ namespace CzokoŚmieciarka.WPFv2.Models public string ImagePath { get; set; } public Image Image { get; set; } - public WPFDump(ITypeOfGarbage typeofGarbage, int maxVolume, Coords localization, string imagePath) : base ( typeofGarbage, maxVolume, localization) + public WPFDump(ITypeOfGarbage typeofGarbage, int maxVolume, Coords localization) : base ( typeofGarbage, maxVolume, localization) { - ImagePath = imagePath; Image = new Image(); switch (typeofGarbage.GarbageType) {