public static PointCloud RotateToOriginAxes(PointCloud mypointCloudSource) { PCA pca = new PCA(); pca.PCA_OfPointCloud(mypointCloudSource); Matrix3 R = new Matrix3(); PointCloud mypointCloudResult = PointCloud.CloneAll(mypointCloudSource); R = R.Rotation_ToOriginAxes(mypointCloudResult.PCAAxes); PointCloud.Rotate(mypointCloudResult, R); pca.PCA_OfPointCloud(mypointCloudResult); mypointCloudResult.Path = mypointCloudSource.Path; mypointCloudResult.Name = mypointCloudSource.Name; return(mypointCloudResult); }