Module Hand.Fingers

type t = {
  1. index : Finger.t;
  2. middle : Finger.t;
  3. ring : Finger.t;
  4. pinky : Finger.t;
}
val translate : OCADml.V3.t -> t -> t
val xtrans : float -> t -> t
val ytrans : float -> t -> t
val ztrans : float -> t -> t
val rotate : ?about:OCADml.V3.t -> OCADml.V3.t -> t -> t
val xrot : ?about:OCADml.V3.t -> float -> t -> t
val yrot : ?about:OCADml.V3.t -> float -> t -> t
val zrot : ?about:OCADml.V3.t -> float -> t -> t
val axis_rotate : ?about:OCADml.V3.t -> OCADml.V3.t -> float -> t -> t
val quaternion : ?about:OCADml.V3.t -> OCADml.Quaternion.t -> t -> t
val scale : OCADml.V3.t -> t -> t
val xscale : float -> t -> t
val yscale : float -> t -> t
val zscale : float -> t -> t
val mirror : OCADml.V3.t -> t -> t
val affine : OCADml.Affine3.t -> t -> t
val map : (Finger.t -> Finger.t) -> t -> t
val fold : ('a -> Finger.t -> 'b) -> 'c -> t -> 'd
val update : ?index:(Finger.t -> Finger.t) -> ?ring:(Finger.t -> Finger.t) -> ?middle:(Finger.t -> Finger.t) -> ?pinky:(Finger.t -> Finger.t) -> t -> t
val extend : ?mult:(float * float * float) -> float -> t -> t
val flex : ?mult:(float * float * float) -> float -> t -> t
val of_configs : index:Finger.config -> middle:Finger.config -> ring:Finger.config -> pinky:Finger.config -> t
val to_scad : t -> ([ `D3 ], OCADml.V3.t, OCADml.V3.t, OCADml.Affine3.t) OSCADml.Scad.t