#lang racket (require (planet wcy/mpost-wrapper)) (provide main) (define (main) (define (funcall f) (f)) (let* ((u '1cm) (n 3) (m 3) (An (map funcall (make-list n unknown-point))) (Bn (map funcall (make-list m unknown-point)))) (for ((Xn (in-list (list An Bn)))) (for ((Xi (in-list Xn)) (Xi+1 (in-list (cdr Xn)))) (eqn= (op- Xi+1 Xi) (point (op* 0.5 u) 0)))) (eqn= (apply op+ An) (point 0 0)) (eqn= (apply op+ Bn) (point 0 (op* 4 u))) (define (draw-point x) (draw x #:withpen (scale '4bp 'pencircle))) (map draw-point An) (map draw-point Bn) (for* ((Ai (in-list An)) (Bi (in-list Bn))) (draw (op-- Ai Bi)))))