Blame


1 665c255d 2023-08-04 jrmu (defun make-segment (start end)
2 665c255d 2023-08-04 jrmu (cons start end))
3 665c255d 2023-08-04 jrmu (defun start-segment (segment)
4 665c255d 2023-08-04 jrmu (car segment))
5 665c255d 2023-08-04 jrmu (defun end-segment (segment)
6 665c255d 2023-08-04 jrmu (cdr segment))
7 665c255d 2023-08-04 jrmu (defun make-point (x y)
8 665c255d 2023-08-04 jrmu (cons x y))
9 665c255d 2023-08-04 jrmu (defun x-point (point)
10 665c255d 2023-08-04 jrmu (car point))
11 665c255d 2023-08-04 jrmu (defun y-point (point)
12 665c255d 2023-08-04 jrmu (cdr point))
13 665c255d 2023-08-04 jrmu (defun print-point (point)
14 665c255d 2023-08-04 jrmu (format t "(~F,~F)~%" (x-point point) (y-point point)))
15 665c255d 2023-08-04 jrmu (defun midpoint-segment (segment)
16 665c255d 2023-08-04 jrmu (let ((segstart (start-segment segment))
17 665c255d 2023-08-04 jrmu (segend (end-segment segment)))
18 665c255d 2023-08-04 jrmu (make-point (average (x-point segstart)
19 665c255d 2023-08-04 jrmu (x-point segend))
20 665c255d 2023-08-04 jrmu (average (y-point segstart)
21 665c255d 2023-08-04 jrmu (y-point segend)))))
22 665c255d 2023-08-04 jrmu (defvar aa (make-point 4 6))
23 665c255d 2023-08-04 jrmu (defvar bb (make-point 9 15))
24 665c255d 2023-08-04 jrmu (print-point
25 665c255d 2023-08-04 jrmu (midpoint-segment (make-segment aa bb)))
26 665c255d 2023-08-04 jrmu