public static double Test5_Cube8Shuffle(ref PointCloudVertices myPCLTarget, ref PointCloudVertices myPCLSource, ref PointCloudVertices myPCLResult, float cubeSize) { myPCLTarget = PointCloudVertices.CreateCube_Corners(cubeSize); myPCLSource = PointCloudVertices.CloneVertices(myPCLTarget); PointCloudVertices.ShuffleTest(myPCLSource); myPCLResult = IterativeClosestPointTransform.Instance.PerformICP(myPCLSource, myPCLTarget); return(IterativeClosestPointTransform.Instance.MeanDistance); }
public static double Test10_Cube8pRotateShuffle(ref PointCloudVertices myPCLTarget, ref PointCloudVertices myPCLSource, ref PointCloudVertices myPCLResult, float cubeSize) { myPCLTarget = PointCloudVertices.CreateCube_RegularGrid_Empty(cubeSize, 1); myPCLSource = PointCloudVertices.CloneVertices(myPCLTarget); Matrix3d R = CreateAndPrintMatrix(65, -123, 35); PointCloudVertices.Rotate(myPCLSource, R); PointCloudVertices.ShuffleTest(myPCLSource); myPCLResult = IterativeClosestPointTransform.Instance.PerformICP(myPCLSource, myPCLTarget); return(IterativeClosestPointTransform.Instance.MeanDistance); }
public static double Test5_Cube8TranslateRotateShuffleNew(ref PointCloudVertices myPCLTarget, ref PointCloudVertices myPCLSource, ref PointCloudVertices myPCLResult, float cubeSize) { myPCLTarget = PointCloudVertices.CreateCube_Corners(cubeSize); myPCLSource = PointCloudVertices.CloneVertices(myPCLTarget); //Model3D myModel = Example3DModels.Cuboid("Cuboid", 20f, 40f, 100, System.Drawing.Color.White, null); Matrix3d R = CreateAndPrintMatrix(65, -123, 35); PointCloudVertices.Rotate(myPCLSource, R); PointCloudVertices.Translate(myPCLSource, cubeSize * 1.2f, -cubeSize * 2.5f, cubeSize * 2); PointCloudVertices.ShuffleTest(myPCLSource); myPCLResult = IterativeClosestPointTransform.Instance.PerformICP(myPCLSource, myPCLTarget); return(IterativeClosestPointTransform.Instance.MeanDistance); }