I have several point clouds resulting from laser scanning. These are machined parts, so there are planes and cylinders available. My desire is to:

1. Recognize the major planes. I desire to do this with more than just three points with the plane produced using a regression technique to start off with as much accuracy as possible. Current I can do this with three points as the only option.

2. Recognize the axis of cylinders. Ideally I would be able to manually select several points on a cylinder and have the axis calculated from that.

The first step with this information is to align the part to the coordinate system.

Does anyone know of a way to do this within SolidWorks in the normal user interface or the API? I have Scan to 3d but frankly the results are not well suited to my project. That system wants to go straight to making surfaces of everything, which is both time consuming and doesn't produce the pure results that I need. I intend to use the point cloud data as a guide, with the knowledge that the overall accuracy of placement will improve if we can take in a larger number points.

I probably haven't explained this very well, but hopefully somewhere out there recognizes a similar need. Also, moderators please feel free to move this post if this is not the best location.

Thanks in advance.

Sound like what you want to do is some sort of regression analysis on your point data to obtain the best fit "pure" geometry you desire. Search cylindrical regression, or planar regression for mathematical procedure. Then construct the "pure" geometry from the resultant equations.

I think Geomagic (now owned by 3D systems) or Polyworks might offer a more automated solution.