Page 1 of 1

Curvature sign

Posted: Mon May 06, 2019 1:14 pm
by AMQ298
Hello,
I am working on a study focused on characterize structural complexity on coral reefs ecosystems. I have been using CC to calculate different parameters such as roughness or curvature. However, for my study is critical to differentiate between concave and convex surfaces. Is there any way to include the sign somehow in the curvature calculations?
I am realign struggling with this particular issue, and I do not find a solution not even from other resources. Nobody seems to make this calculation in the cloud, just in the mesh. Any idea on how could I fix this problem?..I think CloudCompare is fantastic by the way..

Thanks in advance,

Angela M (SUNY at Buffalo)

Re: Curvature sign

Posted: Tue May 07, 2019 8:28 pm
by daniel
Well, that would require to use normals for instance... and that's not something supported by the CC_CORE_LIB librairie where all these calculations are done). I fear the change won't be that simple... And moreover you would need good normals on your cloud!

Re: Curvature sign

Posted: Fri Sep 27, 2019 2:11 pm
by RomanPC
Hi,

I also would really benefit from some indication of concave or convex structures. I understand that for the Curvature the sign calculation is more complex. But by looking at your Roughness Calculation Code I noticed that your last step is to take the absolute() of the calculated distance to the plane.

Am I wrong or would leaving this value as it is, instead of taking the absolute value, give the sign and therefore the information if the point is above or below the best fitting plane. And therefore concave or convex? At least for horizontal hills and valleys (I am trying to distinguish craters from hills).

Would it be an option to make this an optional Parameter to decide, if you want the absolute values or signed values for the roughness calculation?

Thanks in advance,

Roman

Re: Curvature sign

Posted: Fri Sep 27, 2019 8:42 pm
by daniel
Sadly, once again, the sign would be a little bit random due to how the plane fitting algorithm works... This is why we have to take the absolute value.