################ omc-geometry.lsp ################ Commands and functions for handling raw geometry. ******** Commands ******** LIST\-LEN ========= ILP === Intersect line and plane. Draw a point in the intersection of a line and a plane. IPP === Intersect two planes. Draw a line in the intersection of two planes. ROUND\-LINE\-COORDS =================== Round specified coordinates of the start and end points of lines to a multiple of the specified divisor. INVERT\-LINES ============= Switch start and end points of the lines selected. ********* Functions ********* (**omc\-geometry\-v\+** *vector0* *vector1*) Return the sum of two 3d vectors. (**omc\-geometry\-v\-** *point0* *point1*) Return the difference of two 3d vectors. (**omc\-geometry\-sv\*** *scalar* *vector*) Multiply a scalar and a 3d vector. (**omc\-geometry\-dot** *vector0* *vector1*) Return the dot-product of two 3d vectors. (**omc\-geometry\-cross** *vector0* *vector1*) Return the cross-product u x v. Arguments are 3d vectors. (**omc\-geometry\-norm** *vector*) Return the L2 norm of a 3d vector. (**omc\-geometry\-intersect\-line\-plane** *point0\-in\-line* *point1\-in\-line* *point0\-in\-plane* *point1\-in\-plane* *point2\-in\-plane*) Return the point of where a line and a plane intersect. (**omc\-geometry\-intersect\-plane\-plane** *point0\-in\-plane0* *point1\-in\-plane0* *point2\-in\-plane0* *point0\-in\-plane1* *point1\-in\-plane1* *point2\-in\-plane1*) Return two points on the line where two planes intersect. (**omc\-geometry\-round** *num* *div*) Round number to a multiple of divisor. Round using half to even. See https://en.wikipedia.org/wiki/Rounding#Round_half_to_even (**omc\-geometry\-test\-round**) **************** Global variables **************** * **precision** assigned in * *c:list\-len* ************************ Functions called on load ************************ * **princ**