examples/ex-134.rkt
#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)))))