Как определить, пересекаются ли два изображения - PullRequest
0 голосов
/ 07 октября 2018

Как определить, пересекается ли один элемент или дочерний элемент пикта с другим?

Вот небольшой пример.

(require pict pict/color)

(define (mkdisk color) (disk 15 #:draw-border? #f #:color color))
(define d1 (mkdisk "Aquamarine"))
(define d2 (mkdisk "SlateGray"))
(define d3 (mkdisk "Orchid"))
(define row (ghost (rectangle 100 20)))
(define p (foldl vl-append (blank) (list (lc-superimpose row d1)
                                         (cc-superimpose row d2)
                                         (rc-superimpose row d3))))

enter image description here

Какая функция может проверять последний пикт и определять, что линия пересекается d2, диск посередине?

(Кстати, если я использую пикт неуклюже или простоне так, как это предполагается использовать, пожалуйста, дайте мне знать.)

...