Bézier curves/Intersections: Difference between revisions
→{{header|Icon}}: Say "critical points" instead of "extreme points".
(→{{header|Icon}}: Ignore extreme points at 0 or 1.) |
(→{{header|Icon}}: Say "critical points" instead of "extreme points".) |
||
Line 1,392:
procedure initial_workload (P, Q)
# Create an initial workload set, by breaking P and Q at any
# critical points.
local workload
every insert (workload := set (), [
return workload
end
procedure
# Generate workitems for the curve P, after breaking it at any
#
local ts, pts, i
ts := [0] ||| sort (
every put (pts := [], curve_eval (P, !ts))
every i := 1 to *pts - 1 do
Line 1,453:
end
procedure
# Return a set containing parameter values (values of t) for the
#
local ts
ts := set ()
insert (ts,
insert (ts,
return ts
end
Line 1,477:
end
procedure
# Return t in (0,1) where p is
local t
|