private void btnstatisticEX_Click(object sender, EventArgs e) { double dblProportion = -1; List <double> dbllt = new List <double>(); List <CPoint> CResultPtLt = _DataRecords.ParameterResult.CResultPtLt; for (int i = 0; i <= 300; i++) { CPolyline cpl = CGeometricMethods.GetTargetcpl(CResultPtLt, dblProportion); dbllt.Add(cpl.pPolyline.Length); dblProportion = dblProportion + 0.01; } CHelperFunctionExcel.ExportDataltToExcel(dbllt, "Length", _DataRecords.ParameterInitialize.strSavePath); }
public CParameterResult OptCorMMMorphing() { List <CPolyline> pBSCPlLt = _BSCPlLt; List <CPolyline> pSSCPlLt = _SSCPlLt; int intMaxBackK = _intMaxBackK; int intMulti = _intMulti; int intIncrease = _intIncrease; double dblSmallDis = _dblSmallDis; long lngStartTime1 = System.Environment.TickCount; //lngTime1 CGeometricMethods.SetEdgeLength(ref pBSCPlLt); CGeometricMethods.SetEdgeLength(ref pSSCPlLt); long lngTime1 = System.Environment.TickCount - lngStartTime1; //lngTime1 double dblX = pSSCPlLt[0].FrCpt.X - pBSCPlLt[0].FrCpt.X; double dblY = pSSCPlLt[0].FrCpt.Y - pBSCPlLt[0].FrCpt.Y; CPoint StandardVetorCpt = new CPoint(0, dblX, dblY); //StandardVetorCpt = new CPoint(0, 0, 0); _StandardVetorCpt = StandardVetorCpt; double dblStandardLength = CGeometricMethods.CalDis(0, 0, dblX, dblY); List <double> dblDistanceLt = new List <double>(intMulti); List <double> dblTimeLt = new List <double>(intMulti); List <LinkedList <CCorrespondCPoint> > pCorrCptLkLt = new List <LinkedList <CCorrespondCPoint> >(pBSCPlLt.Count); List <LinkedList <CCorrespondCPoint> > pCtrlCptLkLt = new List <LinkedList <CCorrespondCPoint> >(pBSCPlLt.Count); for (int i = 0; i < intMulti; i++) { long lngStartTime2 = System.Environment.TickCount; //lngTime2 double dblDistance = 0; pCorrCptLkLt = new List <LinkedList <CCorrespondCPoint> >(pBSCPlLt.Count); //initialize pCtrlCptLkLt = new List <LinkedList <CCorrespondCPoint> >(pBSCPlLt.Count); //initialize for (int j = 0; j < pBSCPlLt.Count; j++) { CTable[,] Table = CreatTable(pBSCPlLt[j], pSSCPlLt[j], intMaxBackK, StandardVetorCpt, dblSmallDis); //创建T矩阵 dblDistance += Table[pBSCPlLt[j].cptlt.Count - 1, pSSCPlLt[j].cptlt.Count - 1].dblEvaluation; LinkedList <CCorrespondCPoint> CtrlCptLk; pCorrCptLkLt.Add(FindCorrespondSegmentLk(Table, out CtrlCptLk)); pCtrlCptLkLt.Add(CtrlCptLk); } long lngTime2 = System.Environment.TickCount - lngStartTime2; //lngTime2 dblTimeLt.Add(lngTime1 + lngTime2); dblDistanceLt.Add(dblDistance); //保存对应线 CHelperFunctionExcel.ExportDataltToExcel(dblTimeLt, intMaxBackK + "Timelt0", _ParameterInitialize.strSavePath); CHelperFunctionExcel.ExportDataltToExcel(dblDistanceLt, intMaxBackK + "Distancelt0", _ParameterInitialize.strSavePath); if (i == (intMulti - 1)) { CHelperFunction.SaveCtrlLine(pCtrlCptLkLt, intMaxBackK + "OptCorMMControlLine", dblStandardLength, _ParameterInitialize.pWorkspace, _ParameterInitialize.m_mapControl); CHelperFunction.SaveCorrLine(pCorrCptLkLt, intMaxBackK + "OptCorMMCorrLine", _ParameterInitialize.pWorkspace, _ParameterInitialize.m_mapControl); } intMaxBackK = intMaxBackK + intIncrease; _CorrCptLkLt = pCorrCptLkLt; } return(null); }
private void btnExportToExcel_Click(object sender, EventArgs e) { CHelperFunctionExcel.ExportEvaluationToExcelCorr(_DataRecords.ParameterResult, _DataRecords.ParameterInitialize.strSavePath); }
private void btnExportToExcel_Click(object sender, EventArgs e) { CHelperFunctionExcel.ExportEvaluationToExcel(_DataRecords.ParameterResultToExcel, _DataRecords.ParameterInitialize, "0"); CHelperFunctionExcel.KillExcel(); }