private List <CCorrCpts> BuildCorrespondences(CPolyline frcpl, CPolyline tocpl) { CLinearInterpolationA pLinearInterpolationA = new CLinearInterpolationA(); List <CPoint> pResultPtLt = pLinearInterpolationA.CLI(frcpl, tocpl); List <CCorrCpts> pCorrCptsLt = CHelpFunc.TransferResultptltToCorrCptsLt(pResultPtLt); return(pCorrCptsLt); }
private void DWCorrAtBd(List <CAtBd> pBSAtBdLt, List <CAtBd> pSSAtBdLt, CParameterThreshold ParameterThreshold) { CLinearInterpolationA pLinearInterpolation = new CLinearInterpolationA(); for (int i = 0; i < pBSAtBdLt.Count; i++) { CPolyline frcpl = pBSAtBdLt[i] as CPolyline; CPolyline tocpl = pSSAtBdLt[i] as CPolyline; //CHelpFunc.PreviousWork(ref frcpl, ref tocpl); pBSAtBdLt[i].CResultPtLt = pLinearInterpolation.CLI(frcpl, tocpl); ////By DP Algorithm //_pDPSimplify.DivideCplByDP(pBSAtBdLt[i] as CPolyline, pBSAtBdLt[i].pVirtualPolyline); //_pDPSimplify.DivideCplByDP(pSSAtBdLt[i] as CPolyline, pSSAtBdLt[i].pVirtualPolyline); //C5.LinkedList<CCorrSegment> CorrespondSegmentLk = new C5.LinkedList<CCorrSegment>(); //SubPolylineMatchLA(pBSAtBdLt[i] as CPolyline, pBSAtBdLt[i].pVirtualPolyline, pSSAtBdLt[i] as CPolyline, pSSAtBdLt[i].pVirtualPolyline, ParameterThreshold, ref CorrespondSegmentLk); ////linear interpolation //pBSAtBdLt[i].CResultPtLt = pAlgorithmsHelper.BuildPointCorrespondence(CorrespondSegmentLk, "Linear"); } }