#lang racket (require (planet wcy/mpost-wrapper)) (provide main) (define (main) (let* ((A (point 0 0)) (B (point '3cm 0)) (C (point '1cm '2cm)) (AA (mediation 0.5 B C)) (BB (mediation 0.5 A C)) (CC (mediation 0.5 A B)) (O (unknown-point)) (polar (unknown-numeric))) (eqn= (op- O (mediation 0.5 BB CC)) (op* (whatever) (rotate 90 (op- BB CC)))) (eqn= (op- O (mediation 0.5 AA BB)) (op* (whatever) (rotate 90 (op- AA BB)))) (draw (op-- A B C 'cycle)) (for ((x (in-list (list AA BB CC)))) (draw x #:withpen (scale '4bp 'pencircle ))) (draw (fullcircle (op* 2 (op-abs (op- O AA))) O)) (let ((AA (unknown-point)) (BB (unknown-point)) (CC (unknown-point)) (H (unknown-point))) (for ((vAA (in-list (list AA BB CC))) (vA (in-list (list A B C))) (vB (in-list (list B C A))) (vC (in-list (list C A B)))) (eqn= (op- vAA vA) (op* (whatever) (rotate 90 (op- vB vC)))) (eqn= vAA (mediation (whatever) vB vC))) (for ((vA (in-list (list A B C))) (vAA (in-list (list AA BB CC)))) (draw (op-- vA vAA))) (for ((x (in-list (list AA BB CC)))) (draw x #:withpen (scale '4bp 'pencircle ))) (eqn= H (mediation (whatever) A AA)) (eqn= H (mediation (whatever) B BB)) (for ((x (in-list (list A B C)))) (draw (mediation 0.5 x H) #:withpen (scale '4bp 'pencircle))) )))