Thanks for your reply @Evgeni_Popov
As my know that objects are from BJS built by facets (triangles). A basic box will be drawn by 12 triangles.
So this is case, I want to measure thickness of the box. And more general, objects will be loaded by *.obj file.

Some 3D printers canâ€™t print some details which are less than 0.5mm, so I will check thickness of all details on model. In this case, maybe fingers in your example have less than 0.5mm and I will paint them in red color for warning.

So I think you need to find for each vertex of a triangle which is the nearest triangle that intersects the line going from this vertex in the direction of the inverse (opposite, meaning -normal) of the normal to this vertex (I donâ€™t know if this algorithm will work in all cases)â€¦

You can use the Ray class to compute the intersection of a line with the triangles of a mesh (donâ€™t forget to exclude the source triangle from the computation!).

I tried to create multi rays with inverse of direction and intersect with box, how can I exclude source triangle and will get value on second intersection.

Currently, ray.distance always 0 because the ray intersect with source triangle.

A better way would be to get all intersections, sort them and take the first one with a non 0 distance, but thereâ€™s currently no way to retrieve all intersections of a ray with a mesh.