povray
povray copied to clipboard
parametric with clipped_by or in intersection has holes
A parametric get truncated to its first intersection when used with clipped_by or inside an intersection. Other intersections seems to be dismissed.
Illustration with clipped_by
Illustration with intersection
Scenes to reproduce (beware, parametric is slow, even for that small sphere) param.tar.gz
This behaviour has been verified also on the head of master branch :white_check_mark:
isosurface has the same kind of issue, unless "all_intersections" is added. That would be a suitable behaviour. But all_intersections is not allowed so far for parametric
We need to decide whether to address this...
- by just documenting it as intended behavior (if it isn't documented already),
- by adding an
all_intersections
-like mechanism to parametrics, or - by some other clever solution.
I vote for documenting the one intersection returned behaviour in the near term no matter. It's not now as far as I can see.
Related: The intersection behaviour sometimes causes shadow artifacts too - though, I cannot recall particulars at the moment. It was something like code somewhere filtering the one and only first intersection and because here we have a surface no effective shadowing gets done due the normal direction as happens with shapes in similar situations. But, too long ago...
Aside: There are too in self crossing surfaces, places where having a shadow_tolerance keyword is useful.