Page 1 of 1

Min and Max Diameter

Posted: Tue Feb 18, 2025 10:57 am
by MattFoster
Good Morning,

I currently have a .bin file which is comprised of 12 individual circular sections (.ply files) that when stitched together make up a section of a length of pipe. I am looking for the best and most efficient way to find the minimum and maximum internal diameter for each of the individual circular sections to then determine an average across this section (which is a meter long with all scans stitched together).

Any help would be greatly appreciated.

Thanks in advance for your help.

Re: Min and Max Diameter

Posted: Tue Feb 18, 2025 11:05 am
by daniel
You could maybe fit a circle on each section, the compute the distance of the points of each section to their respective circle entity (with 'Tools > Distances > Compute Cloud/Primitive dist.').

And then if you look at the resulting distances (the scalar field that should appear on the cloud), you'll be able to read the deviation from this average circle.

Sadly, I just realized that the 'Tools > Distances > Compute Cloud/Primitive dist.' tool compute unsigned distances... You would need signed distances to differentiate between the min and the max radii. If you think this could answer your need, it should be easy for me to add this option.

Re: Min and Max Diameter

Posted: Tue Feb 18, 2025 11:46 am
by MattFoster
Hi Daniel,

Thanks for your response. I have just responded to your email.

Kind Regards,
Matt

Re: Min and Max Diameter

Posted: Wed Feb 19, 2025 7:43 am
by daniel
Ok, so for the records, I've introduced a real 'circle' entity (previously the 'Fit > Circle' tool was only producing a polyline). And this circle entity can now be promoted to a cylinder. This allows to compute the (signed) distances between the points and the cylinder.

Re: Min and Max Diameter

Posted: Sat Feb 22, 2025 2:48 am
by justgord
daniel wrote: Wed Feb 19, 2025 7:43 am Ok, so for the records, I've introduced a real 'circle' entity (previously the 'Fit > Circle' tool was only producing a polyline). And this circle entity can now be promoted to a cylinder. This allows to compute the (signed) distances between the points and the cylinder.
Great feature .. I guess this is in the github repo .. so I would build latest code to try it ?

Is there a way to import primitive solids, such as cylinders / boxes / circles into CloudCompare .. or create them via scripting / python ?

.. or is a seperate .DXF or .obj the best approach for importing / saving pipes that one fits to the pointcloud ?