ToolInclusionNewPolygon.cs 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. using PaintDotNet.Annotation.Enum;
  2. using PaintDotNet.Annotation.Label;
  3. using PaintDotNet.Annotation.Measure;
  4. using PaintDotNet.Base.DedicatedAnalysis.Inclusions;
  5. using PaintDotNet.Base.DedicatedAnalysis.Inclusions.Model;
  6. using System;
  7. using System.Collections.Generic;
  8. using System.Linq;
  9. using System.Text;
  10. using System.Threading.Tasks;
  11. using System.Windows.Forms;
  12. namespace PaintDotNet.Annotation.DedicatedAnalysis
  13. {
  14. /// <summary>
  15. ///
  16. /// </summary>
  17. public class ToolInclusionNewPolygon : ToolObject
  18. {
  19. public static void OnMouseDown(ISurfaceBox surfacebox, MouseEventArgs e)
  20. {
  21. ToolPencil.OnMouseDown(surfacebox, e);
  22. }
  23. public static void OnMouseMove(ISurfaceBox surfacebox, MouseEventArgs e)
  24. {
  25. ToolPencil.OnMouseMove(surfacebox, e);
  26. }
  27. public static void OnMouseUp(ISurfaceBox surfacebox, MouseEventArgs e)
  28. {
  29. var drawObject = surfacebox.GraphicsList[0];
  30. if (!(drawObject is DrawPencil))
  31. {
  32. return;
  33. }
  34. DrawPencil measurePolygon = (DrawPencil)surfacebox.GraphicsList[0];
  35. Inclusion oldInclusion = surfacebox.GetInclusion();
  36. //int x = oldInclusion.rectProfile.X;
  37. //int y = oldInclusion.rectProfile.Y;
  38. List<Particle> oldParticles = new List<Particle>();
  39. //oldParticles.AddRange(oldInclusion.particles);
  40. System.Drawing.PointF[] pointFs = measurePolygon.GetPoints().ToArray();
  41. Inclusion newinclusion = new Inclusion(MethodOfAssessment.activeMethod.inclusionsStandard, pointFs);
  42. oldInclusion.addParticles(newinclusion.particles);
  43. InclusionDrawObject inclusionDrawObject = new InclusionDrawObject(surfacebox, oldInclusion, false, 2);
  44. RemoveOldObject(surfacebox, measurePolygon);
  45. surfacebox.ActiveTool = DrawToolType.InclusionSelect;
  46. inclusionDrawObject.Selected = true;
  47. surfacebox.Cursor = Cursors.Default;
  48. AddNewObject(surfacebox, inclusionDrawObject);
  49. //for (int i = 0; i < newinclusion.particles.Count; i++)
  50. //{
  51. // newinclusion.particles[i].rectProfile = new System.Drawing.Rectangle(newinclusion.particles[i].rectProfile.X + x, newinclusion.particles[i].rectProfile.Y + y , newinclusion.particles[i].rectProfile.Width, newinclusion.particles[i].rectProfile.Height);
  52. //}
  53. //oldInclusion.particles.Clear();
  54. //oldInclusion.addParticles(oldParticles);
  55. //oldInclusion.addParticles(newinclusion.particles);
  56. }
  57. public static void OnMouseLeftDoubleClick(ISurfaceBox surfacebox, MouseEventArgs e)
  58. {
  59. }
  60. public static void OnMouseClick(ISurfaceBox surfacebox, MouseEventArgs e)
  61. {
  62. }
  63. public static void beginWithNewObject()
  64. {
  65. ToolMeasurePolygon.beginWithNewObject();
  66. }
  67. }
  68. }