box_sphere_intersections(z, d, lb, ub, trust_radius, entire_line=False, extra_info=False)
Find the intersection between the segment (or line) defined by the parametric equation x(t) = z + t*d
, the rectangular box lb <= x <= ub
and the ball ||x|| <= trust_radius
.
Initial point.
Direction.
Lower bounds to each one of the components of x
. Used to delimit the rectangular box.
Upper bounds to each one of the components of x
. Used to delimit the rectangular box.
Ball radius.
When True
, the function returns the intersection between the line x(t) = z + t*d
( t
can assume any value) and the constraints. When False
, the function returns the intersection between the segment x(t) = z + t*d
, 0 <= t <= 1
and the constraints.
When True
, the function returns intersect_sphere
and intersect_box
.
The line/segment x(t) = z + t*d
is inside the rectangular box and inside the ball for for ta <= t <= tb
.
When True
, there is a intersection between the line (or segment) and both constraints. On the other hand, when False
, there is no intersection.
Dictionary {ta, tb, intersect}
containing the interval [ta, tb]
for which the line intercepts the ball. And a boolean value indicating whether the sphere is intersected by the line.
Dictionary {ta, tb, intersect}
containing the interval [ta, tb]
for which the line intercepts the box. And a boolean value indicating whether the box is intersected by the line.
Find the intersection between segment (or line) and box/sphere constraints.
Hover to see nodes names; edges to Self not shown, Caped at 50 nodes.
Using a canvas is more power efficient and can get hundred of nodes ; but does not allow hyperlinks; , arrows or text (beyond on hover)
SVG is more flexible but power hungry; and does not scale well to 50 + nodes.
All aboves nodes referred to, (or are referred from) current nodes; Edges from Self to other have been omitted (or all nodes would be connected to the central node "self" which is not useful). Nodes are colored by the library they belong to, and scaled with the number of references pointing them