Module Gg.P3

module P3: sig .. end

type t = Gg.p3 
The type for points.
val dim : int
dim is the dimension of points of type Gg.p3.
type mh = Gg.m4 
The type for matrices representing linear transformations of homogenous 3D space.

Constructors, accessors and constants


val v : float -> float -> float -> Gg.p3
v x y z is the point (x y z).
val x : Gg.p3 -> float
x p is the x coordinate of p.
val y : Gg.p3 -> float
y p is the y coordinate of p.
val z : Gg.p3 -> float
y p is the z coordinate of p.
val o : Gg.p3
o is the point (0 0 0).

Functions


val mid : Gg.p3 -> Gg.p3 -> Gg.p3
mid p q is the mid point (p + q)/2.
val tr : Gg.m4 -> Gg.p3 -> Gg.p3
tr m p is the affine transform in homogenous 3D space of the point p by m.

Note. Since m is supposed to be affine the function ignores the last row of m. p is treated as a finite point (its last coordinate in homogenous space is 1). Use Gg.V3.tr to transform vectors (infinite points).