Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 11

What is a bezier curve?

So a Bezier curve is a mathematically defined curve used in two-dimensional graphic


applications like abode illustrator,inkscape etc.The curve is defined by four points: the initial
position and the terminating position i.e P0 and P3 respectively (which are called “anchors”)
and two separate middle points i.e P1 and P2(which are called “handles”) in our
example.Bezier curves are frequently used in computer graphics, animation, modeling etc.

How do we Represent Bezier Curves Mathematically ?


Bezier curves can be generated under the control of other points. Approximate tangents by using
control points are used to generate curve. The Bezier curve can be represented mathematically as

Properties of bezier curves

1. They always pass through the first and last control points.

2. They are contained in the convex hull of their defining control points.

3. The degree of the polynomial defining the curve segment is one less that the number of
defining polygon point. Therefore, for 4 control points, the degree of the polynomial is 3, i.e.
cubic polynomial.

4. A Bezier curve generally follows the shape of the defining polygon

5. The direction of the tangent vector at the end points is same as that of the vector determined
by first and last segments.

6. Bezier curves exhibit global control means moving a control point alters the shape of the
whole curve

What is Bezier Curve?

Bezier curves are parametric curves used frequently in modeling smooth surfaces in computer
graphics and many other related fields. These curves can be scaled indefinitely. Linked Bezier
curves contain paths that are combinations that are intuitive and can be modified. This tool is
also made use of in controlling motions in animation videos. When programmers of these
animations talk about the physics involved, they are in essence talking about these Bezier curves.
Bezier curves were first developed by Paul de Castlejau using Castlejau’s algorithm, which is
considered a stable method to develop such curves. However, these curves became famous in
1962 when French designer Pierre Bezier used them to design automobiles.

The most popular Bezier curves are quadratic and cubic in nature as higher degree curves are
expensive to draw and evaluate. An example of the equation of Bezier curve involving two
points (linear curve) is as follows

B(t) = P0 + t(P1 – P0) = (1 – t)P0 + tP1, tε[0,1]


What is B-Spline Curve?

B-Spline curves are considered as a generalization of Bezier curves and as such share many
similarities with it. However, they have more desired properties than Bezier curves. B-Spline
curves require more information such as degree of the curve and a knot vector, and in general
involve a more complex theory than Bezier curves. They however possess many advantages that
off set this shortcoming. Firstly, a B-Spline curve can be a Bezier curve whenever the
programmer so desires. Further B-Spline curve offers more control and flexibility than Bezier
curve. It is possible to use lower degree curves and still maintain a large number of control
points. B-Spline, despite being more useful are still polynomial curves and cannot represent
simple curves like circles and ellipses. For these shapes, a further generalization of B-Spline
curves known as NURBS are used.

Bezier vs B-Spline curves

• Both Bezier and B-Spline curves are used for drawing and evaluating smooth curves,
especially in computer graphics and animations.

• B-Spline are considered a special case of Bezier curves

• B-Spline offer more control and flexibility than Bezier curves

Window:

1. A world-coordinate area selected for display is called a window.


2. In computer graphics, a window is a graphical control element.
3. It consists of a visual area containing some of the graphical user interface of the program
it belongs to and is framed by a window decoration.
4. A window defines a rectangular area in world coordinates. You define a window with a
GWINDOW statement. You can define the window to be larger than, the same size as, or
smaller than the actual range of data values, depending on whether you want to show all
of the data or only part of the data.

Viewport:

1. An area on a display device to which a window is mapped is called a viewport.


2. A viewport is a polygon viewing region in computer graphics. The viewport is an area
expressed in rendering-device-specific coordinates, e.g. pixels for screen coordinates, in
which the objects of interest are going to be rendered.
3. A viewport defines in normalized coordinates a rectangular area on the display device
where the image of the data appears. You define a viewport with the GPORT command.
You can have your graph take up the entire display device or show it in only a portion,
say the upper-right part.

Window to viewport transformation:


1. Window-to-Viewport transformation is the process of transforming a two-dimensional,
world-coordinate scene to device coordinates.
2. In particular, objects inside the world or clipping window are mapped to the viewport.
The viewport is displayed in the interface window on the screen.
3. In other words, the clipping window is used to select the part of the scene that is to be
displayed. The viewport then positions the scene on the output device.

Aliasing :
In computer graphics, the process by which smooth curves and other lines become jagged
because the resolution of the graphics device or file is not high enough to represent a smooth
curve.

In the line drawing algorithms, we have seen that all rasterized locations do not match with the
true line and we have to select the optimum raster locations to represent a straight line. This
problem is severe in low resolution screens. In such screens line appears like a stair-step, as
shown in the figure below. This effect is known as aliasing. It is dominant for lines having
gentle and sharp slopes.

The aliasing effect can be reduced by adjusting intensities of the pixels along the line. The
process of adjusting intensities of the pixels along the line to minimize the effect of aliasing is
called antialiasing.

The aliasing effect can be minimized by increasing resolution of the raster display. By increasing
resolution and making it twice the original one, the line passes through twice as many column of
pixels and therefore has twice as many jags, but each jag is half as large in x and in y direction.
As shown in the figure above, line looks better in twice resolution, but this improvement comes
at the price of quadrupling the cost of memory, bandwidth of memory and scan-conversion time.
Thus increasing resolution is an expensive method for reducing aliasing effect.

With raster system that are capable of displaying more than two intensity levels (colour and gray
scale), we can apply antialiasing methods to modify pixel intensities. By appropriately varying
the intensities of pixels along the line or object boundaries, we can smooth the edges to lessen
the stair-step or the jagged appearance.

Antialiasing methods are basically classified as :-

Flood Fill Algorithm Boundary Fill Algorithm


Flood fill colors an entire area in an enclosed Here area gets colored with pixels of a
figure through interconnected pixels using a single chosen color as boundary this giving the
color technique its name
Boundary Fill is very similar with the
So, Flood Fill is one in which all connected pixels
difference being the program stopping when
of a selected color get replaced by a fill color.
a given color boundary is found.
A flood fill may use an unpredictable amount of Boundary fill is usually more complicated but
memory to finish because it isn't known how it is a linear algorithm and doesn't require
many sub-fills will be spawned recursion
Time Consuming It is less time Consuming

Food Fill Algorithm:-

Sometimes it is required to fill in an area that is not defined within a single colour boundary. In
such cases we can fill areas by replacing a specified interior colour instead of searching for a
boundary colour. This approach is called a flood-fill algorithm,here we start with some seed and
examine the neighbouring pixels. However, here pixels are checked for a specified interior
colour instead of boundary colour and they are replaced by new colour. Using either a 4-
connected or 8-connected approach we can step through pixel positions until all interior point has
been filled.

The following procedure illustrates the recursive method for filling 8-connected region using
flood-fill algorithm.

Boundary Fill Algorithm :-

In this method. edges of the polygons are drawn. Then starting with some seed, any point inside
the Polygon we examine the neighbouring pixels to check whether the boundary pixel is reached.
If boundary pixels are not reached, pixels are highlighted and the process is continued until
boundary pixels are reached.

Boundary defined regions may be either 4-connected or 8-connected as shown in the figure (a)
and (b). If a region is 4-connected, then every pixel in the region may be reached by a
combination of moves in only four directions: left, right, up and down. For an 8-connected
region every pixel in the region may be reached by a combination of moves in the two
horizontal, two vertical, and four diagonal directions.

Parallel Projection

1. Parallel projection discards z-coordinate and parallel lines from each vertex on the object
are extended until they intersect the view plane.
2. In parallel projection, we specify a direction of projection instead of center of projection.
3. In parallel projection, the distance from the center of projection to project plane is
infinite.
4. In this type of projection, we connect the projected vertices by line segments which
correspond to connections on the original object.
5. Parallel projections are less realistic, but they are good for exact measurements.
6. In this type of projections, parallel lines remain parallel and angles are not preserved.
7. Various types of parallel projections are shown in the following hierarchy.

a) Orthographic Projection

 In orthographic projection the direction of projection is normal to the projection of the


plane.
 There are three types of orthographic projections −
o Front Projection
o Top Projection
o Side Projection

b) Oblique Projection
 In orthographic projection, the direction of projection is not normal to the projection of
plane.
 In oblique projection, we can view the object better than orthographic projection.
 There are two types of oblique projections − Cavalier and Cabinet.
 The Cavalier projection makes 45° angle with the projection plane.
 The projection of a line perpendicular to the view plane has the same length as the line
itself in Cavalier projection.
 In a cavalier projection, the foreshortening factors for all three principal directions are
equal.
 The Cabinet projection makes 63.4° angle with the projection plane.
 In Cabinet projection, lines perpendicular to the viewing surface are projected at ½ their
actual length.
 Both the projections are shown in the following figure –

Perspective Projection

1. In perspective projection, the distance from the center of projection to project plane is
finite and the size of the object varies inversely with distance which looks more realistic.
2. The distance and angles are not preserved and parallel lines do not remain parallel.
3. Instead, they all converge at a single point called center of projection or projection
reference point.
4. There are 3 types of perspective projections which are shown in the following chart.
o One point perspective projection is simple to draw.
o Two point perspective projection gives better impression of depth.
o Three point perspective projection is most difficult to draw.
1. The following figure shows all the three types of perspective projection

• Authoring systems can also be defined as process of creating multimedia application.

• Multimedia authoring tools provide the framework for organizing and editing the elements of a
multimedia project.

• Authoring software provides an integrated environment for combining the content and
functions of a project.

• It enables the developer to combine text, graphics, audio, video and animation to create an
interactive presentation/project. E.g. MS PowerPoint

• Authoring tools are used for designing interactivity and the user interface, for presentation your
project on screen and assembling multimedia elements into a single project.

Features of Authoring Tools:

• Editing and organizing features

• Programming features

• Interactivity features
• Playback features

• Cross-platform feature

Design issues of Authoring Systems:

• Display resolution

• File format and compression issues: Authoring systems should be capable of handling different
file formats.

• The first – and hardest – part is to choose the technology for your presentation. The choice
comes down to two main contenders,

Adobe Flash

• Flash allows you to create presentations where you can build in powerful animation. It also has
very good video compression technology.

• Perhaps the best part of Flash is that it also allows you to put presentations directly onto your
web site.

• The biggest problem though is that Flash is a difficult system to get to use.

Microsoft PowerPoint.

• The easiest way to create a multimedia presentation is in Microsoft PowerPoint. You can add in
video, a soundtrack and also a reasonable degree of animation.

• By far the biggest advantage of making multimedia presentations in PowerPoint is that it is


easy for anyone to be able to edit the presentation.

• Types of Authoring Systems

Icon based authoring system

• Each part is represented an icon (symbolic picture)

• Each icon does a specific task, e.g. plays a sound

• Icons are then linked together to form complete applications

• Can easily visualize the structure and navigation of the final application
Dedicated authoring system

• Dedicated authoring systems are designed for a single user consisting of single track for
playback.

• In the case of dedicated authoring system, users need not to be experts in multimedia or a
professional artist.

• Dedicated authoring systems are extremely simple since they provide drag and drop concept.

• Authoring is done on objects captured by video camera, image scanner or objects stored in
multimedia library.

• It does not provide effective presentation due to single stream.

• Examples of Dedicated authoring systems are Paint, MS PowerPoint etc.

Telephone Authoring Systems

• There is an application where the phone is linking into multimedia electronic mail application.

• Telephone can be used as a reading device by providing full text to-speech synthesis capability.

• The phone can be used for voice command input for setting up and managing voice mail
messages.
• Digitized voice clips are captured via the phone and embedded in electronic mail messages.

• As the capability to recognize continuous speech is deployed, phones can be used to create
electronic mail.

Programmable authoring system

• Structured authoring tools were not able to allow the authors to express automatic function for
handling certain routine tasks.

• But, programmable authoring system has improved in providing powerful functions based on
image processing and analysis and embedding program interpreters to use image processing
functions. E.g. Visual Basic, Net beans, Visual Studio

Timeline Based Authoring

• It has an ability to develop an application like movie.

• It can create complex animations and transitions.

• All the tracks can be played simultaneously carrying different data.

• Best to use when you have a message with a beginning and an end.

• Played back at a speed that you can set.

• Other elements (such as audio events) are triggered at a given time or location in the sequence
of events.

• Jumps to any location in a sequence

You might also like