Curve and Vector

Curve (com.elbeno.curve) is my common lisp package for doing cool things with two-dimensional curves. In particular, modulating cubic Bézier curves and splines, but also approximating arbitrary elliptical and circular arc segments with cubic Bézier curves.

It depends on Vector (com.elbeno.vector), a cobbled together set of functionality for representing and manipulating points on the 2D Cartesian plane. It also depends on Zach Beane’s excellent Vecto, for ease of drawing. Both Curve and Vector are available under the GPLv3 license.

Download Curve
Download Vector

Currently both Curve and Vector are at v0.1.

3 comments

  1. CL-VECTORS also represents points as conses. I found I was able to get about a 25% speedup using a specialized two-element vector of double-floats, and declaring it appropriately for various operations.

  2. Why GPL3 ?! This is the sort of thing that renders Common Lisp utterly useless!

    The community is already small…and we have to fight to push Lisp…AND if a project can’t be business-friendly, then WE HAVE NO CASE!

    It’s widely known that if you want to spread technology then you must use a BSD-style license!

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.