Frequently asked questions about the web app Exploring Bezier and Spline Curves

  1. Q: What is the purpose of this app?
    A: This interactive web app enables you to explore the relationship between the following objects that are related to a curve C that can be either a Bezier curve or a spline curve.

  2. Q: How do I get this app to run on my computer, tablet, or smart phone?
    A: Launch a web browser on your device and access https://richardfuhr.neocities.org/BusyBCurves.html.

  3. Q: On which devices does this app run?
    A: The web app runs on the following devices:

  4. Q: What programming language was used to develop this app?
    A: TypeScript

  5. Q: How is the cubic Bezier curve drawn?
    A: The cubic Bezier curve is drawn using the bezierCurveTo method of the CanvasRenderingContext2D object, which is obtained from the HTML5 Canvas.

  6. Q: How is the cubic spline curve drawn?
    A: The cubic spline curve is drawn by first internally representing it as a piecewise Bezier curve and then using the bezierCurveTo method. The piecewise-Bezier curve representation is obtained by knot insertion so that each distinct knot has multiplicity equal to the degree.

  7. Q: How are the graphs of the Bernstein polynomials drawn?
    A: The graph of each Bernstein polynomial b[i](t) is represented as a cubic Bezier curve (t, b[i](t)) by determining the appropriate control points, and that Bezier curve is drawn as described above.

  8. Q: How are the graphs of the B-spline functions drawn?
    A: The graph of each B-spline function b[i](t) is represented as a cubic spline curve (t, b[i](t)) by determining the appropriate control points, and that cubic spline curve is drawn as described above.

  9. Q: If I have more questions or comments, how do I contact the developer?
    A: Please send your questions or comments to the software developer at richard.fuhr@gmail.com.