(********************************************************************) (* OCaml code from the book ``Learn Programming with OCaml'' *) (* See https://usr.lmf.cnrs.fr/lpo/ *) (* *) (* Sylvain Conchon and Jean-Christophe Filliâtre *) (* Copyright 2025 Université Paris-Saclay and CNRS *) (* *) (* Openly licensed via CC BY SA 4.0 *) (* See https://creativecommons.org/licenses/by-sa/4.0/deed.en *) (********************************************************************) (* Program 10 on page 86 Breakout without Bricks (1/2) *) open Graphics let left = 0. let right = 300. let down = 0. let up = 200. let ball = 5 let paddle = 50 let thick = 8 let gray = rgb 220 220 220 let init () = let s = Printf.sprintf " %dx%d" (truncate right) (truncate up) in open_graph s; auto_synchronize false let clear () = set_color gray; fill_rect 0 0 (truncate right) (truncate up) let get_paddle_pos () = let x = fst (mouse_pos ()) in max 0 (min x (truncate right - paddle)) let game x y = clear (); set_color black; fill_circle (truncate x) (truncate y) ball; let x = get_paddle_pos () in fill_rect x 0 paddle thick; synchronize (); x
This document was generated using caml2html