sig
type t = AGeom.vector2d
val of_points : AGeom.Point2d.t -> AGeom.Point2d.t -> AGeom.Vector2d.t
val add : AGeom.Vector2d.t -> AGeom.Vector2d.t -> AGeom.Vector2d.t
val sub : AGeom.Vector2d.t -> AGeom.Vector2d.t -> AGeom.Vector2d.t
val mul : AGeom.Vector2d.t -> float -> AGeom.Vector2d.t
val div : AGeom.Vector2d.t -> float -> AGeom.Vector2d.t
val dot : AGeom.Vector2d.t -> AGeom.Vector2d.t -> float
val length : AGeom.Vector2d.t -> float
val normalise : AGeom.Vector2d.t -> AGeom.Vector2d.t
val angle : AGeom.Vector2d.t -> AGeom.Angle.t
val cross : AGeom.Vector2d.t -> AGeom.Vector2d.t -> float
val rot90 : AGeom.Vector2d.t -> AGeom.Vector2d.t
val rot90neg : AGeom.Vector2d.t -> AGeom.Vector2d.t
val get_line_intersection :
seg1:AGeom.Vector2d.t * AGeom.Vector2d.t ->
seg2:AGeom.Vector2d.t * AGeom.Vector2d.t -> AGeom.Vector2d.t option
val rand : float * float -> AGeom.Vector2d.t
val srand : Random.State.t -> float * float -> AGeom.Vector2d.t
val to_string : AGeom.Vector2d.t -> string
val of_string : string -> AGeom.Vector2d.t
module Infix :
sig
val ( + ) : AGeom.Vector2d.t -> AGeom.Vector2d.t -> AGeom.Vector2d.t
val ( - ) : AGeom.Vector2d.t -> AGeom.Vector2d.t -> AGeom.Vector2d.t
val ( * ) : AGeom.Vector2d.t -> float -> AGeom.Vector2d.t
val ( / ) : AGeom.Vector2d.t -> float -> AGeom.Vector2d.t
val ( !. ) : AGeom.Vector2d.t -> AGeom.Vector2d.t -> float
val ( ~. ) : AGeom.Vector2d.t -> AGeom.Vector2d.t
val ( ?. ) : float * float -> AGeom.Vector2d.t
end
end