Как определить, пересекается ли один элемент или дочерний элемент пикта с другим?
Вот небольшой пример.
(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))))
Какая функция может проверять последний пикт и определять, что линия пересекается d2
, диск посередине?
(Кстати, если я использую пикт неуклюже или простоне так, как это предполагается использовать, пожалуйста, дайте мне знать.)