| Allegro CL version 8.2This page is new in 8.2. |

**Arguments: ***
point-x point-y box-left box-top box-right
box-bottom *&key *margin**
*

Returns as multiple values the coordinates of the point on the edge of
a box where it is crossed by a line that passes through the center of
the box and through an arbitrary
point. Returns `nil`

if the box center and the
arbitrary point are the same.

The first two arguments are real numbers for the X and Y coordinates
of the arbitrary point. The remaining required arguments are real
numbers that specify the sides of a box. Returns two real numbers for
the X and Y coordinates of the intersection point,
or `nil`

.

The ** margin** argument is somewhat
obscure. If specified, it should be a real number indicating a
distance. If the real intersection point is less than this distance
from a corner of the box, then the returned point will be adjusted so
that it is this distance from the corner. (This is used by one
application to avoid drawing a connecting line to a rounded corner of
a rounded box.)

See also **radial-line-box-intersection** and
**radial-line-circle-intersection-x-y**.

Copyright (c) 1998-2015, Franz Inc. Oakland, CA., USA. All rights reserved.

Documentation for Allegro CL version 8.2. This page is new in the 8.2 release.

Created 2010.1.21.

| Allegro CL version 8.2This page is new in 8.2. |