using PaintDotNet.Annotation.Enum; using PaintDotNet.Annotation.Label; using PaintDotNet.Annotation.Measure; using PaintDotNet.Base.DedicatedAnalysis.Inclusions; using PaintDotNet.Base.DedicatedAnalysis.Inclusions.Model; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace PaintDotNet.Annotation.DedicatedAnalysis { /// /// /// public class ToolInclusionNewPolygon : ToolObject { public static void OnMouseDown(ISurfaceBox surfacebox, MouseEventArgs e) { ToolPencil.OnMouseDown(surfacebox, e); } public static void OnMouseMove(ISurfaceBox surfacebox, MouseEventArgs e) { ToolPencil.OnMouseMove(surfacebox, e); } public static void OnMouseUp(ISurfaceBox surfacebox, MouseEventArgs e) { var drawObject = surfacebox.GraphicsList[0]; if (!(drawObject is DrawPencil)) { return; } DrawPencil measurePolygon = (DrawPencil)surfacebox.GraphicsList[0]; Inclusion oldInclusion = surfacebox.GetInclusion(); //int x = oldInclusion.rectProfile.X; //int y = oldInclusion.rectProfile.Y; List oldParticles = new List(); //oldParticles.AddRange(oldInclusion.particles); System.Drawing.PointF[] pointFs = measurePolygon.GetPoints().ToArray(); Inclusion newinclusion = new Inclusion(MethodOfAssessment.activeMethod.inclusionsStandard, pointFs); oldInclusion.addParticles(newinclusion.particles); InclusionDrawObject inclusionDrawObject = new InclusionDrawObject(surfacebox, oldInclusion, false, 2); RemoveOldObject(surfacebox, measurePolygon); surfacebox.ActiveTool = DrawToolType.InclusionSelect; inclusionDrawObject.Selected = true; surfacebox.Cursor = Cursors.Default; AddNewObject(surfacebox, inclusionDrawObject); //for (int i = 0; i < newinclusion.particles.Count; i++) //{ // 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); //} //oldInclusion.particles.Clear(); //oldInclusion.addParticles(oldParticles); //oldInclusion.addParticles(newinclusion.particles); } public static void OnMouseLeftDoubleClick(ISurfaceBox surfacebox, MouseEventArgs e) { } public static void OnMouseClick(ISurfaceBox surfacebox, MouseEventArgs e) { } public static void beginWithNewObject() { ToolMeasurePolygon.beginWithNewObject(); } } }