Description:
|
A
ray is a composite data type, consisting of a position and a gvector. Rays represent pick direction vectors, infinite lines, or planes.
ray objects are not saved as part of the model.
|
|
|
The direction represents a displacement vector in 3D Cartesian space. Internally, a direction is represented in model space coordinates. When coordinates are required, the coordinates are entered relative to the active coordinate system.
|
|
Derivation:
|
ray : position : gvector : scheme-object
|
|
C++ Type:
|
pick_ray
|
|
External Rep:
|
#[ray (%g %g %g) (%g %g %g)]
|
|
where the first triplet of doubles is the (x y z) position, and the second triplet of doubles is the (x y z) gvector.
|
|
Example:
|
; ray (data type)
|
|
; Define and inquire a ray object.
|
|
(define x-ray (ray (position 0 0 0) (gvector 1 0 0)))
|
|
;; x-ray
|
|
(ray? x-ray)
|
|
;; #t
|