Reflect a single ray off a flat surface:
Given
[math]\;\;[/math]Light Ray L=Ray[A,B]
[math]\;\;[/math] Flat object Segment[C,D]
Reflection1[A,B, C,D]
Returns three objects: X, r1, R
[math]\;\;\;[/math]X, the point of intersection, if any. (If there is no intersection, X=A)
[math]\;\;\;[/math]r1, the path AX
[math]\;\;\;[/math]R, the resultant vector. (If there is no intersection, R=L)
_____
For tool setup, any Input object should be replaced with a free, dummy variable,. or GGB may not find/recognize it.