Question
Bezier curves are a class of parametric curves defined using a set of control points, and a parameter t in [0,1]. The analytic parametric equation
Bezier curves are a class of parametric curves defined using a set of control points, and a parameter t in [0,1]. The analytic parametric equation of a Bezier curve defined by a control polygon of n+1 points Pi i = 0,!,n is given through Bernstein polynomials Bin (t)
n n! as follows: C(t)=Bin(t)Pi WhereBin(t)=i!(ni)!(1t)niti is the ith Bernstein
i=0 polynomial of degree n.
Given a value of parameter t, the Bezier curve can be evaluated either using the above parametric equation or using the Decasteljau subdivision algorithm.
develop a tool for visualization and editing of Bzier curves of any degree n. A C++ class should be defined to encapsulate the data and all the functions necessary for easy manipulation of Bzier curves. A particular attention should be paid to the design of your application and to the graphic user interface that allows the activation of the desired functionality. Recommended functionalities:
1. Appropriate data structures to store the curve properties (number of control points, set of control points, etc.)
2. A Menu to allow navigation through the application functionalities and select the function to launch.
3. Mouse control function: allows the definition of the control polygon, the selection and move of one control point into another position to enhance the curve design
4. A function BezPoint() to compute and return the point on the Bzier curve using the parametric equation.
5. A function CasteljauPoint() to compute and return a point on the Bzier curve using the Decasteljau algorithm.
6. A function CasteljauSubdivid() to compute and return the two sub-curves of a Bzier curve using the Decasteljau algorithm.
7. A function drawBez() to visualize a Bzier curve with (or without) its control polygon.
8. A function to edit the curve: use the mouse to select and move one control point into another position, then trace the resulting curve.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started