Basic (and thus efficient) implementation of 3D vector. This file loads either ruby version or C extension, and adds methods from module CoordinateVector.

class Coordinate

Coordinate.angle   Coordinate.torsion   point_line_distance   point_plane_distance  

point_plane_distance(plane_normal_vec, plane_point)

Calculate perprndicular distance of the point to a plane defined by its normal vector and one point that lies on the plane.

point_line_distance(line_point_1, line_point_2)

Calculate perprndicular distance of the point to a line defined by two points

Coordinate.angle(a,b,c)

Coordinate.torsion(a,b,c,d)

Extension of numeric types to allow commutative multiplication

Float class extension

class Float

*  

*(operand)

Multiplication is extended to handle Float * Coordinate

Fixnum class extension

class Fixnum

*  

*(operand)

Multiplication is extended to handle Fixnum * Coordinate