public static double Test5_Cube8Shuffle_1Milion(ref PointCloudVertices myPCLTarget, ref PointCloudVertices myPCLSource, ref PointCloudVertices myPCLResult, float cubeSize) { myPCLTarget = PointCloudVertices.CreateCube_RegularGrid_Empty(cubeSize, 409); myPCLSource = PointCloudVertices.CloneVertices(myPCLTarget); PointCloudVertices.ShuffleRandom(myPCLSource); myPCLResult = IterativeClosestPointTransform.Instance.PerformICP(myPCLSource, myPCLTarget); return(IterativeClosestPointTransform.Instance.MeanDistance); }
public static double Test10_Cube26p_RotateShuffle(ref PointCloudVertices myPCLTarget, ref PointCloudVertices myPCLSource, ref PointCloudVertices myPCLResult, float cubeSize) { myPCLTarget = PointCloudVertices.CreateCube_RegularGrid_Empty(cubeSize, 2); myPCLSource = PointCloudVertices.CloneVertices(myPCLTarget); Matrix3d R = CreateAndPrintMatrix(65, -123, 35); PointCloudVertices.Rotate(myPCLSource, R); PointCloudVertices.ShuffleRandom(myPCLSource); myPCLResult = IterativeClosestPointTransform.Instance.PerformICP(myPCLSource, myPCLTarget); return(IterativeClosestPointTransform.Instance.MeanDistance); }