private void btnExit_Click(object sender, EventArgs e) { int idx = mf.ABLine.numABLineSelected - 1; if (idx >= 0) { mf.ABLine.lineArr[idx].heading = mf.ABLine.abHeading; //calculate the new points for the reference line and points mf.ABLine.lineArr[idx].origin.easting = mf.ABLine.refPoint1.easting; mf.ABLine.lineArr[idx].origin.northing = mf.ABLine.refPoint1.northing; //sin x cos z for endpoints, opposite for additional lines mf.ABLine.lineArr[idx].ref1.easting = mf.ABLine.lineArr[idx].origin.easting - (Math.Sin(mf.ABLine.lineArr[idx].heading) * mf.ABLine.abLength); mf.ABLine.lineArr[idx].ref1.northing = mf.ABLine.lineArr[idx].origin.northing - (Math.Cos(mf.ABLine.lineArr[idx].heading) * mf.ABLine.abLength); mf.ABLine.lineArr[idx].ref2.easting = mf.ABLine.lineArr[idx].origin.easting + (Math.Sin(mf.ABLine.lineArr[idx].heading) * mf.ABLine.abLength); mf.ABLine.lineArr[idx].ref2.northing = mf.ABLine.lineArr[idx].origin.northing + (Math.Cos(mf.ABLine.lineArr[idx].heading) * mf.ABLine.abLength); } mf.FileSaveABLines(); mf.ABLine.moveDistance = 0; mf.panelRight.Enabled = true; mf.panelDrag.Visible = false; mf.offX = 0; mf.offY = 0; mf.FileSaveTram(); mf.FixTramModeButton(); Close(); }
private void btnSave_Click(object sender, EventArgs e) { //mf.ABLine.moveDistance = 0; mf.panelRight.Enabled = true; mf.panelDrag.Visible = false; mf.offX = 0; mf.offY = 0; if (mf.curve.refList.Count > 0) { //array number is 1 less since it starts at zero int idx = mf.curve.numCurveLineSelected - 1; //mf.curve.curveArr[idx].Name = textBox1.Text.Trim(); if (idx >= 0) { mf.curve.curveArr[idx].aveHeading = mf.curve.aveLineHeading; mf.curve.curveArr[idx].curvePts.Clear(); //write out the Curve Points foreach (vec3 item in mf.curve.refList) { mf.curve.curveArr[idx].curvePts.Add(item); } } //save entire list mf.FileSaveCurveLines(); mf.curve.moveDistance = 0; } mf.FileSaveTram(); mf.FixTramModeButton(); isClosing = true; Close(); }
private void FormTram_FormClosing(object sender, FormClosingEventArgs e) { if (isSaving) { if (isCurve) { if (mf.curve.refList.Count > 0) { //array number is 1 less since it starts at zero int idx = mf.curve.numCurveLineSelected - 1; //mf.curve.curveArr[idx].Name = textBox1.Text.Trim(); if (idx >= 0) { mf.curve.curveArr[idx].aveHeading = mf.curve.aveLineHeading; mf.curve.curveArr[idx].curvePts.Clear(); //write out the Curve Points foreach (vec3 item in mf.curve.refList) { mf.curve.curveArr[idx].curvePts.Add(item); } } //save entire list mf.FileSaveCurveLines(); mf.curve.moveDistance = 0; } } else { int idx = mf.ABLine.numABLineSelected - 1; if (idx >= 0) { mf.ABLine.lineArr[idx].heading = mf.ABLine.abHeading; //calculate the new points for the reference line and points mf.ABLine.lineArr[idx].origin.easting = mf.ABLine.refPoint1.easting; mf.ABLine.lineArr[idx].origin.northing = mf.ABLine.refPoint1.northing; } mf.FileSaveABLines(); mf.ABLine.moveDistance = 0; } } else { mf.tram.tramArr?.Clear(); mf.tram.tramList?.Clear(); mf.tram.tramBndOuterArr?.Clear(); mf.tram.tramBndInnerArr?.Clear(); mf.tram.displayMode = 0; } mf.panelRight.Enabled = true; mf.panelDrag.Visible = false; mf.FileSaveTram(); mf.FixTramModeButton(); }
private void btnExit_Click(object sender, EventArgs e) { int idx = mf.ABLine.numABLineSelected - 1; if (idx >= 0) { mf.ABLine.lineArr[idx].heading = mf.ABLine.abHeading; //calculate the new points for the reference line and points mf.ABLine.lineArr[idx].origin.easting = mf.ABLine.refPoint1.easting; mf.ABLine.lineArr[idx].origin.northing = mf.ABLine.refPoint1.northing; } mf.FileSaveABLines(); mf.ABLine.moveDistance = 0; mf.panelRight.Enabled = true; mf.panelDrag.Visible = false; mf.offX = 0; mf.offY = 0; mf.FileSaveTram(); mf.FixTramModeButton(); Close(); }