The surface_normal routine in geomlib has belatedly been changed to handle input indices i/j (now renamed ic/jc) at the surface patch upper bounds, ni/nj. Applications no longer need to safeguard the call, but if (say) ic = ni, it is assumed the input q (now qc) is zero because the target surface point is presumably right on the edge of the patch.
The change was prompted by the new solid_angle_quad routine, which has been simplified by removing the safeguards.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The surface_normal routine in geomlib has belatedly been changed to handle input indices i/j (now renamed ic/jc) at the surface patch upper bounds, ni/nj. Applications no longer need to safeguard the call, but if (say) ic = ni, it is assumed the input q (now qc) is zero because the target surface point is presumably right on the edge of the patch.
The change was prompted by the new solid_angle_quad routine, which has been simplified by removing the safeguards.