I asked a question about filling the space between two curves (Sin and Cos) with random points and the answer I received does not work for InterpolatingFunctions. How can I fill the space between two BezierCurves or InterpolatingFunctions?
For example, I have the BezierCurves c1 and c2:
c1 = {{0, 0}, {2, 0}, {2, 1}}; c2 = {{0, 0.25}, {1.75, 0.25}, {1.75, 1}}; Graphics[{BezierCurve@c1,BezierCurve@c2}] I can use RandomPoint by turning these curves into a Polygon:
f[c_] := Quiet@ Interpolation[BezierFunction[c][#] & /@ Range[0, 1, 0.01]]; g[c_] := {#, f[c][#]} & /@ Range[0, c[[-1, 1]], 0.01]; h1 = Join[{c2[[1]]}, g@c1]; h2 = Join[g@c2, {c1[[-1]]}]; Graphics[{ Point@RandomPoint[Polygon@Join[h1, h2], 500], Thick, Line@h1, Line@h2 }] My question is, is there a better/more efficient way of doing this?



