Module Gg.P2

module P2: sig .. end

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

Constructors, accessors and constants

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


val mid : Gg.p2 -> Gg.p2 -> Gg.p2
mid p q is the mid point (p + q)/2.
val tr : Gg.m3 -> Gg.p2 -> Gg.p2
tr m p is the affine transform in homogenous 2D 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 to transform vectors (infinite points).