private void MyCanvas_MouseUp(object sender, MouseButtonEventArgs e) { if (ClikOnCanvas) { TreeTop.ToolNow.MouseUp(e.GetPosition(MyCanvas)); if (!(TreeTop.ToolNow is AllotmentTool) & !(TreeTop.ToolNow is ZoomTool) & !(TreeTop.ToolNow is HandTool)) { TreeTop.AddState(); gotoPastCondition.IsEnabled = true; gotoSecondCondition.IsEnabled = false; } if (TreeTop.ToolNow is ZoomTool) { MyCanvas.LayoutTransform = new ScaleTransform(TreeTop.ScaleRateX, TreeTop.ScaleRateY); ScrollViewerCanvas.ScrollToVerticalOffset(TreeTop.DistanceToPointY * TreeTop.ScaleRateY); ScrollViewerCanvas.ScrollToHorizontalOffset(TreeTop.DistanceToPointX * TreeTop.ScaleRateX); } if (TreeTop.ToolNow is HandForFigureTool) { TreeTop.ToolNow = TreeTop.TransformTools["Allotment"]; } ClikOnCanvas = false; Invalidate(); } }
public MainWindow() { InitializeComponent(); Instance = this; MyCanvas.Children.Add(Paint.TreeTop.FigureHost); ButtonGeneration.Generation(); TreeTop.AddState(); }
private void GotoSecondCondition_Click(object sender, RoutedEventArgs e) { TreeTop.GotoSecondState(); if (TreeTop.ConditionNumber == TreeTop.StatesCanvas.Count) { gotoSecondCondition.IsEnabled = false; } gotoPastCondition.IsEnabled = true; Invalidate(); }
public void CleanMyCanvas(object sender, RoutedEventArgs e) { TreeTop.FigureHost.Children.Clear(); TreeTop.Figures.Clear(); TreeTop.ConditionNumber = 0; TreeTop.StatesCanvas.Clear(); TreeTop.AddState(); gotoPastCondition.IsEnabled = false; gotoSecondCondition.IsEnabled = false; }
public void ChangeDash(object sender, RoutedEventArgs e) { foreach (Figure figure in TreeTop.Figures) { if (figure.Selected == true) { figure.ChangePen(TreeTop.TransformDashProp[(sender as System.Windows.Controls.Button).Content.ToString()], (sender as System.Windows.Controls.Button).Content.ToString()); } } TreeTop.AddState(); gotoPastCondition.IsEnabled = true; gotoSecondCondition.IsEnabled = false; Invalidate(); }
private void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.CompareTag("Wood")) { TreeBody treebody = collision.transform.GetComponent <TreeBody>(); treebody.DealDamage(); Debug.Log("Dealing Damage"); } if (collision.gameObject.CompareTag("treeTop")) { TreeTop treetop = collision.transform.GetComponent <TreeTop>(); treetop.DealDamage(); Debug.Log("Dealing Damage"); } }
public void ClearSelectedFigure(object sender, RoutedEventArgs e) { foreach (Figure figure in TreeTop.Figures.ToArray()) { if (figure.Selected == true) { TreeTop.Figures.Remove(figure); } } PropToolBarPanel.Children.Clear(); TreeTop.AddState(); gotoPastCondition.IsEnabled = true; gotoSecondCondition.IsEnabled = false; Invalidate(); }
private void LoadButton_Click(object sender, RoutedEventArgs e) { if (TreeTop.Figures.Count != 0) { DialogResult dialogResult = System.Windows.Forms.MessageBox.Show("Сохранить текущее изображение?", "", MessageBoxButtons.YesNo); if (dialogResult == System.Windows.Forms.DialogResult.Yes) { SaveFileDialog sfd = new SaveFileDialog { Title = "Сохранить как", OverwritePrompt = true, CheckPathExists = true, Filter = "Files(*.bin)|*.bin" }; sfd.ShowDialog(); if (sfd.FileName != "") { FileStream file = (FileStream)sfd.OpenFile(); BinaryFormatter bin = new BinaryFormatter(); bin.Serialize(file, TreeTop.Figures); file.Close(); } } } TreeTop.Figures.Clear(); OpenFileDialog ofd = new OpenFileDialog { Filter = "Files(*.bin)|*.bin", Title = "Открыть" }; ofd.ShowDialog(); if (ofd.FileName != "") { Stream file = (FileStream)ofd.OpenFile(); BinaryFormatter deserializer = new BinaryFormatter(); TreeTop.Figures = (List <Figure>)deserializer.Deserialize(file); file.Close(); Invalidate(); } TreeTop.StatesCanvas.Clear(); TreeTop.ConditionNumber = 0; TreeTop.AddState(); gotoPastCondition.IsEnabled = false; gotoSecondCondition.IsEnabled = false; }
public void TreeVolumeTest() { var m1 = new ValuePhantom { new ValueString('1'), new ValueString('2'), new ValueString('3') }; var m2 = new ValuePhantom { new ValueString('4'), new ValueString('3') }; var m3 = new ValuePhantom { new ValueString('a') }; var test = new BaseChain(4); test.Set(m1, 0); test.Set(m2, 1); test.Set(m2, 2); test.Set(m3, 3); IGenerator gen = new SimpleGenerator(); var tree = new TreeTop(test, gen); Assert.AreEqual(12, tree.Volume); var ch1 = tree.GetChild(0); Assert.AreEqual(4, ch1.Volume); var ch2 = tree.GetChild(1); Assert.AreEqual(4, ch2.Volume); var ch3 = tree.GetChild(2); Assert.AreEqual(4, ch3.Volume); }
private void Window_KeyDown(object sender, System.Windows.Input.KeyEventArgs e) { if (e.Key == Key.C & Keyboard.Modifiers == ModifierKeys.Control) { TreeTop.RemoveBufferFigures(); TreeTop.SaveToBuffer(TreeTop.FiguresBuffer); } if (e.Key == Key.V & Keyboard.Modifiers == ModifierKeys.Control) { TreeTop.LoadFromBuffer(); Invalidate(); } if (e.Key == Key.Z & Keyboard.Modifiers == ModifierKeys.Control) { GotoPastCondition_Click(sender, e); } if (e.Key == Key.Y & Keyboard.Modifiers == ModifierKeys.Control) { GotoSecondCondition_Click(sender, e); } }
public void SldMouseUp(object sender, MouseButtonEventArgs e) { TreeTop.AddState(); gotoPastCondition.IsEnabled = true; gotoSecondCondition.IsEnabled = false; }
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) { TreeTop.ClearBuffer(); }