UNIT V
INTRODUCTION
TO CURVES
INTRODUCTION
Objects in the real world may not always be
made up of regular geometric shapes.
Surfaces are made up of curved surfaces &
curved edges.
Curves are quite complicated to represent them
in exact mathematical equations.
Curves are classified into two categories-
namable, unnamable.
Namable curves known as true-curve
generation approach(planes, spheres, parabolas,
circles, straight lines)
CURVE CONTINUITY
To guarantee a smooth transition from one
section of the piecewise curve to the next, we
can enforce continuity conditions at the link
points.
There are two types of curve continuities:
geometric & parametric.
In geometric continuity, requires parametric
derivatives of two curve sections to be
proportional to each other at their common
boundary instead of equal to each other.
Parametric continuity is obtained by matching
the parametric derivatives of the adjoining two
curve segments at their common boundary.
CONIC CURVE
Curves are one of the most important primitive
shapes to create high resolution graphics.
While using many small polylines allows to create
graphic that appears smooth at fixed resolution and
they do not preserve smoothness when scaled.
Curves can be stored much easier, can be scaled to
any resolution without loosing smoothness and
provide much easier way to specify real world objects.
A conic section or just conic is a plane curve that can
be formed by intersecting a cone with a plane that
does not go through the vertex of the cone.
Five types of conics are: Circle, Hyperbola, Parabola,
Rectangular Hyperbola and Ellipse.
A circle and an ellipse are created when a cone and
plane are intersected as a closed curve.
SPLINE CURVE REPRESENTATION
A spline is used to refer to a wide class of
functions that are used in applications requiring
data interpolation & smoothing.
These type of curves in the field of computer
science because of the simplicity of their
construction, accuracy of evaluation & their
capacity to approximate complex shapes through
curve fitting & interactive curve design.
It produces smooth curves through a designated
set of points using piecewise cubic polynomial
functions.
Two categories comes under this,
Interpolated
Spline
Approximated Spline
Interpolation - the curve passes
through all of the control points
Approximation - the
curve does not pass
through all of the control
points
BEZIER CURVE
Bezier curves must have precisely n control
points, where n+1 is the degree of the Bezier
polynomial.
By connecting bezier curves we can create long
curves.
This is done by connecting last control point of
one curve the same as first control point of next
curve.
This type of curve always lie within the convex
hull of the control points & always have the sum
of the basis functions add to 1.
A convex hull of set of points is the smallest
convex polygon that contains one of the points.
BEZIER CURVE
B-SPLINE CURVES
A spline curve is a sequence of curve segments
that are connected together to form a single
continuous curve.
It refers to a spline curve parameterized by spline
functions that are expressed as linear
combinations of splines.
A B-spline is simply a generalization of a bezier
FRACTAL
curve. CURVES
A fractal is defined as a rough or fragmented
geometric shape that can be split into parts, each of
which is approx. a reduced-size reproduction of the
complete shape, based on the property known as self
similarity.
Many natural objects that approximate fractals to a
degree, include clouds, mountains, coastlines.
B-spline curve
Applications of fractals
SURFACE GENERATION
The surface plays a critical role in designing &
manufacturing of automobile bodies, ship hulls,
aircraft, games, furniture etc.
A surface in a 3D space is an object definition that
has breadth, width which is specified with the help
of equation.
Following are some types of surfaces:
A) Bilinear Surfaces
B) Ruled surfaces
C) Developable surfaces
D) Coons patch.
A) Bilinear surfaces:
They are the simplest of all.
These types of surfaces are defined by means of their 4
corner points.
Their 4 boundary curves are straight lines & the
coordinates of any point on this surface are derived by
linear interpolations.
B) Ruled surfaces:
Itis a surface swept out by a straight line as it moves
through space.
Which means original figure stays fixed at one point
but changes direction.
C) Developable surfaces:
These surfaces are characterized by only blending in
one direction at a time like a cylinder or a cone.
Developable surfaces are useful because they allow
round forms to be made out of a flat materials like
plywood, sheet metal, or cloth etc.
D) Coons patch:
There are many other surfaces that needs to be deal
within Computer-aided Geometric Design(CAGD), such
as car bodies & airplane.
In these situations, a common approach is to divide the
surface into patches defined by a network of curves.
Each patch is then parameterized by filling in or
interpolating the given parameterizations of their
boundary.
PAINTERS ALGORITHM
The idea behind painters algorithm is to paint the
polygon into frame buffer in order of decreasing
distance.
The algorithm gets its name from the manner in
which an oil painting is created. The artist begins
with the background.
He then adds the most distant object and then the
newer object and so on.
There is no need to erase the portion of
background, the artist simple paints on top of
them.
Whole canvas is painted first then on top this
canvas a circle is painted
On top this circle a rectangle is painted.
On top of this rectangle an ellipse is painted.
It gives an appearance as the ellipse is nearer to
the viewer then the circle.
The main factor here is to check the priority
Each polygon is assigned a priority number
Polygons are sorted according to their priority.
Lowest one first, followed by higher then highest.
Z-BUFFER ALGORITHM
Z Buffer is one of the way to handle hidden lines
and surfaces.
Here we are storing polygon which are closer to
the viewer in the frame buffer.
Along with frame buffer we make use of Z Buffer
which is a large array to store z coordinates(depth)
of pixel which we want to display.
Depth buffer compares the two depth and
chooses the depth nearer to the viewer
Used for detecting visible surfaces, comparing
surface depths at each pixel position on the
projection plane.
Also known as Depth buffering.
Advantages
It is easy to implement.
As Z buffer processes one object at a time
total number of objects can be large.
It does not require any additional technique.
Disadvantages
It requires lot of memory as we are storing
each pixel’s z value.
It is time consuming process as we are
comparing each and every pixel.