private void update_GCode_Depending_Controls() { lbDimension.Text = VisuGCode.xyzSize.getMinMaxString() + "\r\n" + VisuGCode.getProcessingTime(); //String.Format("X:[ {0:0.0} | {1:0.0} ]; Y:[ {2:0.0} | {3:0.0} ]; Z:[ {4:0.0} | {5:0.0} ]", visuGCode.xyzSize.minx, visuGCode.xyzSize.maxx, visuGCode.xyzSize.miny, visuGCode.xyzSize.maxy, visuGCode.xyzSize.minz, visuGCode.xyzSize.maxz); lbDimension.Select(0, 0); // toolTip1.SetToolTip(lbDimension, visuGCode.getProcessingTime()); checkMachineLimit(); toolStrip_tb_XY_X_scale.Text = string.Format("{0:0.000}", VisuGCode.xyzSize.dimx); toolStrip_tb_X_X_scale.Text = string.Format("{0:0.000}", VisuGCode.xyzSize.dimx); toolStrip_tb_XY_Y_scale.Text = string.Format("{0:0.000}", VisuGCode.xyzSize.dimy); toolStrip_tb_Y_Y_scale.Text = string.Format("{0:0.000}", VisuGCode.xyzSize.dimy); btnSimulate.Enabled = true; setGcodeVariables(); if (VisuGCode.containsG2G3Command()) // disable X/Y independend scaling if G2 or G3 GCode is in use { // because it's not possible to stretch (convert 1st to G1 GCode) skaliereXUmToolStripMenuItem.Enabled = false; skaliereXUmToolStripMenuItem.Enabled = false; skaliereYUmToolStripMenuItem.Enabled = false; skaliereAufXUnitsToolStripMenuItem.Enabled = false; skaliereAufYUnitsToolStripMenuItem.Enabled = false; skaliereXAufDrehachseToolStripMenuItem.Enabled = false; skaliereYAufDrehachseToolStripMenuItem.Enabled = false; ersetzteG23DurchLinienToolStripMenuItem.Enabled = true; } else { skaliereXUmToolStripMenuItem.Enabled = true; // enable X/Y independend scaling because no G2 or G3 GCode skaliereYUmToolStripMenuItem.Enabled = true; skaliereAufXUnitsToolStripMenuItem.Enabled = true; skaliereAufYUnitsToolStripMenuItem.Enabled = true; skaliereXAufDrehachseToolStripMenuItem.Enabled = true; skaliereYAufDrehachseToolStripMenuItem.Enabled = true; ersetzteG23DurchLinienToolStripMenuItem.Enabled = false; } }
public static void sortByDistance() { List <BlockData> result = new List <BlockData>(); xyPoint first = new xyPoint(); double distanceReverse; BlockData tmp; bool allowReverse = !VisuGCode.containsG2G3Command() && !VisuGCode.containsG91Command() && !VisuGCode.containsTangential(); while (listFigures.Count > 0) { for (int i = 0; i < listFigures.Count; i++) { tmp = listFigures[i]; tmp.distance = first.DistanceTo(tmp.posStart); distanceReverse = first.DistanceTo(tmp.posEnd); if (allowReverse && (distanceReverse < tmp.distance)) { tmp.distance = distanceReverse; tmp.reverse = true; } listFigures[i] = tmp; } listFigures.Sort((x, y) => x.distance.CompareTo(y.distance)); result.Add(listFigures[0]); first = listFigures[0].posEnd; listFigures.RemoveAt(0); } listFigures.Clear(); foreach (BlockData item in result) { listFigures.Add(item); } }
private void createFrom2DView(float step) { scanCNCPos.Clear(); Logger.Trace("createFrom2DView G2G3:{0}", VisuGCode.containsG2G3Command()); // Export from VisuGCode. if (!VisuGCode.getPathCordinates(scanCNCPos, step)) { } }