<div dir="ltr">Unfortunately the algorithms only work in 2D, and probably aren't actually efficient. I have been meaning to generalize some of them now that Pict3D exists :) And they would probably serve as reference implementations.<br></div><br><div class="gmail_quote">On Tue, Mar 17, 2015 at 1:56 PM Neil Toronto <<a href="mailto:neil.toronto@gmail.com">neil.toronto@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">That looks like an awesome project. I could probably even use the convex<br>
hull implementations in Pict3D.<br>
<br>
You could use `plot-bitmap` or `plot/dc` as well, FWIW.<br>
<br>
I'll count this as a +1, then. :)<br>
<br>
Neil ⊥<br>
<br>
On 03/17/2015 01:51 PM, Spencer Florence wrote:<br>
> I've been using plot heavily for<br>
> <a href="https://github.com/florence/convex-hulls" target="_blank">https://github.com/florence/<u></u>convex-hulls</a>, which pulls a bitmap% from the<br>
> snip% to render it as a gif. As long at the Plot object can get me a<br>
> bitmap% or its underlying vector, I would love the new interface.<br>
><br>
> or maybe I should just be using `plot-pict`...<br>
><br>
> On Tue, Mar 17, 2015 at 12:35 PM Neil Toronto <<a href="mailto:neil.toronto@gmail.com" target="_blank">neil.toronto@gmail.com</a><br>
> <mailto:<a href="mailto:neil.toronto@gmail.com" target="_blank">neil.toronto@gmail.com</a><u></u>>> wrote:<br>
><br>
>     Plot has been converted to Typed Racket in the upcoming Racket 6.2.<br>
><br>
>     I'm strongly considering taking this opportunity to improve the API. The<br>
>     change is backward-incompatible, however, so I need input from those of<br>
>     you who use Plot a lot.<br>
><br>
>     In particular, recent experience with Pict3D makes it clear that the<br>
>     type of the `plot` function shouldn't be this:<br>
><br>
>         (-> (Treeof (U nonrenderer renderer2d)) ... (U Void (Instance<br>
>     Snip%)))<br>
><br>
>     but should be this instead:<br>
><br>
>         (-> (Treeof (U nonrenderer renderer2d)) ... Plot)<br>
><br>
>     where a `Plot` instance is a value that can be queried for its<br>
>     properties (such as the legend, plot bounds, ticks, etc.) and just<br>
>     happens to print in DrRacket as an interactive snip. The type of<br>
>     `plot3d` would be changed to return `Plot3D` instances.<br>
><br>
>     Casual uses wouldn't see any change at all.<br>
><br>
>     However, functions that receive or return plots, *which also put<br>
>     contracts on plots*, would have to change to use `plot?` instead of<br>
>     (is-a?/c snip%), or use (require plot/snip), a new compatibility module,<br>
>     instead of (require plot).<br>
><br>
>     How many programs of yours would this change break?<br>
><br>
>     Any objections? Any suggestions?<br>
><br>
>     Neil ⊥<br>
>     ____________________<br>
>        Racket Users list:<br>
>     <a href="http://lists.racket-lang.org/__u__sers" target="_blank">http://lists.racket-lang.org/_<u></u>_u__sers</a><br>
>     <<a href="http://lists.racket-lang.org/users" target="_blank">http://lists.racket-lang.org/<u></u>users</a>><br>
><br>
<br>
</blockquote></div>