0% found this document useful (0 votes)
78 views

ME6501 Computer Aided Design ME6501 Computer Aided Design

This document discusses computer aided design (CAD) and the product design cycle. It begins by defining CAD as using computers to assist in the creation, modification, and optimization of designs. CAD is used for both 2D and 3D designs and is important in many industries. The document then discusses the basic product cycle of design and manufacturing processes. It describes how CAD, CAM, and CAE technologies are used at various stages of the product cycle. Finally, it contrasts sequential engineering with concurrent engineering, where the stages of design, manufacturing, etc. overlap and collaborate rather than proceeding linearly.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views

ME6501 Computer Aided Design ME6501 Computer Aided Design

This document discusses computer aided design (CAD) and the product design cycle. It begins by defining CAD as using computers to assist in the creation, modification, and optimization of designs. CAD is used for both 2D and 3D designs and is important in many industries. The document then discusses the basic product cycle of design and manufacturing processes. It describes how CAD, CAM, and CAE technologies are used at various stages of the product cycle. Finally, it contrasts sequential engineering with concurrent engineering, where the stages of design, manufacturing, etc. overlap and collaborate rather than proceeding linearly.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 79

ME6501

COMPUTER AIDED DESIGN


UNIT-1
FUNDAMENTALS OF
COMPUTER GRAPHICS
FUNDAMENTALS OF COMPUTER
GRAPHICS
 Product cycle
 Design process
 sequential and concurrent engineering
 Computer aided design
 CAD system architecture
 Computer graphics
 Co-ordinate systems- 2D and 3D Transformations
 Homogeneous coordinates
 Line drawing
 Clipping
 Viewing transformation
CAD – COMPUTER AIDED DESIGN
 CAD is the use
of computer systems to assist
in the creation, modification,
analysis, or optimization of a
design.

 CAD may be used to design


curves and figures in two-
dimensional (2D) space; or
curves, surfaces, and solids
in three-dimensional (3D)
space
CAD – COMPUTER AIDED DESIGN
 CAD is an important industrial art extensively used in
many applications, including automotive, shipbuilding,
and aerospace industries, industrial and architectural
design, prosthetics, and many more.

 CAD is also widely used to produce computer


animation for special effects in movies, advertising and
technical manuals, often called DCC digital content
creation.

 CAD software is used to increase the productivity of


the designer, improve the quality of design, improve
communications through documentation, and to create
a database for manufacturing
BASIC CAD PRODUCT CYCLE
CAD/CAE MODEL BASED ON LIFE CYCLE
CAD/CAM MODEL BASED ON LIFE CYCLE
BENEFITS OF COMPUTER AIDED DESIGN

Here, following features are includes:-


1. Productivity improvement in design.
2. Shorter lead times.
3. Design analysis.
4. Fewer design errors.
5. Greater accuracy in design calculations.
6. Standardization of design, drafting and
documentation.
7. Drawing are more understandable.
8. Improved procedures for engg. Changes.
9. Benefits in manufacturing.
 Computer Aided design (CAD),
 Computer Aided Manufacturing (CAM)

 Computer Aided Engineering (CAE) are the


technologies used for this purpose during the
product cycle.
PRODUCT CYCLE
 Product cycle is composed of two main
processes:
Design process and
Manufacturing process
 The design process starts from customers’
demands that are identified by marketing
personnel and ends with a complete description
of the product, usually in the form of a drawing.
 The manufacturing process starts from the
design specifications and ends with shipping of
the actual products.
PRODUCT LIFE CYLCE
 The activities involved in the design process
can be classified largely as two types :
Synthesis and Analysis
 The initial design activities such as

Identification of the design need,


Formulation of design specifications,
Feasibility study with collecting relevant
design information, and
Design conceptualization are part of the
synthesis sub process.
That is, the result of the synthesis is a
conceptual design of the prospective
product in the form of a sketch or a layout
drawing that shows the relationships
among the various product components.
Once the conceptual design has been
developed, the analysis sub process
begins with analysis and optimization of
the design.
TYPICAL PRODUCT LIFE CYCLE
The Design Process
Design Collecting
Design definitions, relevant design
needs specifications,
and requirements
information and
feasibility study Synthesis
Analysis The CAD Process
Design Design
Design Design Design Design
documentation and modeling and
evaluation optimization analysis conceptualization
communication simulation

The Manufacturing Process


Production
The CA
planning

Design and
procurement of
Process Quality
new tools Packaging
planning Production control Shipping
Order
materials

NC, CNC, DNC


programming

Marketing
PRODUCT CYCLE IN CONVENTIONAL MACHINING
PROCESS
COMPUTER AIDED PRODUCT CYCLE
DESIGN PROCESS
 In general it is agreed that the
design progresses in a step by step
manner from identification of need for
the problem, a search for solutions and
development of chosen solution to
manufacture, test and use.
 There descriptions of design are often
called as models of the design process
and to illustrate these we shall consider
following models namely Shigley, Pahl
and Beitz, Ohsuga and Earle.
SHIGLEY DESIGN PROCESS
THE DESIGN PROCESS

Before CAD After CAD


COMPUTER-AIDED DESIGN PROCESS

 Two types of activities: synthesis and analysis


 Synthesis is largely qualitative and hard to
capture on computer
 Analysis can be greatly enhanced with
computers
 Once analysis is complete, design evaluation-
rapid prototyping
 Software packages for design optimization
SEQUENTIAL AND CONCURRENT
ENGINEERING
SEQUENTIAL OR TRADITIONAL
ENGINEERING

 Traditional engineering, also known


as sequential engineering, is the process of
marketing, engineering design, manufacturing,
testing and production where each stage of the
development process is carried out separately,
and the next stage cannot start until the
previous stage is finished
SEQUENTIAL OR TRADITIONAL
ENGINEERING

 The information flow is only in one direction,


and it is not until the end of the chain that
errors, changes and corrections can be relayed
to the start of the sequence, causing estimated
costs to be under predicted.

 This is also known as over the wall


engineering as each stage blindly throws the
development to the next stage over the wall.
SEQUENTIAL ENGINEERING STAGES

 Research
 Design

 Manufacture

 Quality Control

 Distribution

 Sales
DISADVANTAGES OF SEQUENTIAL ENGINEERING

 This orderly step-by-step process will bring control to


complex projects but is very slow.

 In today’s highly competitive Market place this can


lead to product failures and lost sales.
Concurrent Engineering
Concurrent Engineering:
Is a strategy where all the tasks involved in product
development are done in parallel.

Collaboration between all individuals, groups and


departments within a company.
• Customer research
• Designers
• Marketing
• Accounting
• Engineering
Concurrent Engineering
Suppliers R&D Customers

Commercial
Design Process Competitors Idea
Generation Marketing

Product or Service concept

Feasibility
Study

Performance Specifications

Linear Process
Preliminary
Form Design
Design
Revising and testing
prototypes

Functional Production
Design Design
Design Manufacturing
Specifications Specifications

Pilot run and final


tests

Final Design and


process plans

Product Launch
Concurrent Engineering

Techniques:
•Perceptual mapping
•Benchmarking
•Reverse Engineering
Concurrent Engineering
Benchmarking
•Get the best product available
•Base performance specifications for new product on it

Reverse Engineering
•Dismantle and inspect competitors product(s)
•Select features to incorporate into new product
Concurrent Engineering

Demand for the proposed product?


Cost of developing and producing the product?
Does company have manufacturing capability?
Skilled personnel?
Concurrent Engineering

Form Design: Physical appearance of the product


Functional Design: Performance of the product
Production Design: How to manufacture product
Concurrent Engineering

•Prototype produced
•Adjustments made
•Final specification agreed
Concurrent Engineering

•Manufacturing process commences


•Product is marketed to buying public
Concurrent Engineering

Traditional Process = Linear


Vs
Concurrent Engineering = Team collaboration
Concurrent Engineering
Why Concurrent Engineering?
•Pace of market change has increased
•Companies must keep pace with changing
markets
•Decisions made sooner rather than later
•Reduces/eliminates repetition of tasks
•Reduces waste and reworking of design
•Product quicker to market
•Maximises company profit
•Company operates more efficiently
Concurrent Engineering
To make decisions concurrently:
•Team knows the design goals/objectives
•Team is aware of the interrelationships between all
aspects of the design process
•Superior communication between all sections of
the company

Method:
Quality Function Deployment (QFD)
Concurrent Engineering

Quality Function Deployment (QFD)


Collection of matrices that converts the needs of the
customer into technical specifications at all stages of the
design and manufacture process.

Product Planning (most popular)


•House of Quality
WHAT IS COMPUTER GRAPHICS?

 Creation, Manipulation, and Storage of


geometric objects (modelling) and their
images (rendering)
 Display those images on screens or
hardcopy devices
 Image processing
WHAT DRIVES COMPUTER GRAPHICS?
 Movie Industry
 Leaders in quality and artistry
 Not slaves to conceptual purity

 Big budgets and tight schedules

 Reminder that there is more to

CG than technology

Slide information from Leonard


McMillian's slides
http://www.cs.unc.edu/~mcmillan/comp1
WHAT DRIVES COMPUTER GRAPHICS?
 Game Industry
 The newest driving force in CG
 Why? Volume and Profit
 This is why we have commodity GPUs

 Focus on interactivity
 Cost effective solutions

 Avoiding computating and other tricks

 Games drive the baseline

Slide information from Leonard


McMillian's slides
http://www.cs.unc.edu/~mcmillan/comp1
WHAT DRIVES COMPUTER GRAPHICS?

 Medical Imaging and Scientific


Visualization
 Tools for teaching and diagnosis
 No cheating or tricks allowed
 New data representations and modalities
 Drive issues of precision and correctness
 Focus on presentation and interpretation of
data
 Construction of models from acquired data

Nanomanipulator, UNC
Joe Kniss, Utah Gordon Kindelman, Utah
WHAT DRIVES COMPUTER GRAPHICS?

 Computer Aided Design


 Mechanical, Electronic, Architecture,...
 Drives the high end of the hardware market

 Integration of computing and display


resources
 Reduced design cyles == faster systems,
sooner

ProEngineer, www.ptc.com
WHAT DRIVES COMPUTER GRAPHICS?

 Graphic User Interfaces (GUI)


 www.webpagesthatsuck.com

Slide information from Leonard


McMillian's slides
http://www.cs.unc.edu/~mcmillan/comp1
OVERVIEW

Today’s industries cannot survive worldwide


competition unless they introduce new
products with better quality (quality, Q), at lower
cost (cost, C), and with shorter lead time
(delivery, D).
2D TRANSLATION

y
x  x  t x , y   y  t y
P
 x  x  t x 
T P    , P    , T   
 y  y t y 
P x P  P  T

46
2D SCALING
x  x  s x , y   y  s y
Sx
 x   s x 0   x
 y   0 s y   y 
Sy   
P  S  P
y

x f , yf 
x

47
2D ROTATION
y
Rotation in angle  about a

pivot (rotation) point  xr , yr  .



yr
x
xr
 x, y 
y

  x, y 
 xr , yr  x

48
 Rotation

Rotate through an angle  about the origin


x'  x  cos  y  sin y

y'  x  sin  y  cos P’(x’, y’)

 x' cos  sin   x


 y'  sin cos    y P(x, y)
     
P'  R( )  P 

49
 Derivation of the rotation equation

x  r  cos 
y  r  sin  y
P’(x’, y’)
x '  r  cos(    ) rsin(+)

 r  cos   cos   r  sin   sin 


y '  r  sin(    ) P(x, y)
rsin
 r  cos   sin   r  sin   cos  r

x'  x  cos  y  sin 

y'  x  sin   y  cos x
rcos(+) rcos
50
HOMOGENEOUS COORDINATES
SCALING AND ROTATION MATRICES ARE IN THE FORM OF
MATRIX MULTIPLICATION AND THE TRANSLATION TAKES THE
FORM OF VECTOR ADDITION.
ALL THE TRANSFORMATION MATRIX SHOULD BE
MULTIPLIED.
CONCENTENATE ( LINK TOGETHER IN CHAIN OR SERIES).
Make displacement linear with Homoheneous Coordinates.

 x, y    x, y,1 . Transformations turn into 3  3 matrices.


Very big advantage. All transformations are concatenated by
matrix multiplication.
51
 x   1 0 t x   x 
 y     0 1 t    y  , P  T t , t  P
2D Translation
   y    x y
 1   0 0 1   1 

 x   cos   sin  0  x 
2D Rotation  y   sin  cos  0    y  , P  R    P
  
 1   0 0 1   1 

 x   S x 0 0  x 
2D Scaling  y   0 Sy 0    y  , P  S  S x , S y   P
  
 1   0 0 1   1 

52
2D REFLECTIONS
y y y

x x

1 0 0   1 0 0   1 0 0 
0 1 0   0 1 0  0 1 0 
     
0 0 1   0 0 1   0 0 1 

53
yx y  x

0 1 0  0 1 0 
1 0 0   1 0 0 
   
0 0 1   0 0 1 

54
3D TRANSFORMATIONS
TRANSLATION
Very similar to 2D. Using 4x4 matrices rather than 3x3.

Translation
x  x  t x
y
y  y  t y

z  z  t z

 x, y, z   x   1 0 0 tx   x 
 x, y , z   y  0
  1 0 t y   y 

 z  0 0 1 tz   z 
z x      
 1  0 0 0 1  1

55
3D SCALING
y y
x  x  S x

y  y  S y

z  x  S z

z x z x
Enlarging object also moves it from origin

 x   S x 0 0 0  x 
 y  0 Sy 0 0   y 
P        SP
 z   0 0 Sz 0  z 
     
1  0 0 0 1  1 

58
Scaling with respect to a fixed point (not necessarily of object)

y y y

x f , yf , zf  x f , yf , zf  x f , yf , zf 
z x z x z x

x f , yf , zf 
z x

59
ROTATION
ROTATION
ROTATION
Parallel to one of the Coordinate Axis
In special cases where an object is to be rotated
about an axis that is parallel to one of the coordinate axis,
we can obtain the desired rotation with the following
transformation sequence.
1. Translate the object so that the rotation axis coincides with
the parallel coordinate axis (for simplicity, let us take x-axis).
2. Perform the specified rotation about that axis.
3. Translate the object so that the rotation axis is moved back
to its original position.
ROTATION
SCALING
 The matrix expression for the scaling
transformation of a position P = (x, y, z) relative to
coordinate origin can be written as:
SCALING

 The matrix representation for an arbitrary fixed-


point (xf, yf, zf) can be expressed as:
Line drawing
LINE DRAWING ALGORITHMS

Cartesian equation:
y = mx + c y2
where y1

m – slope x1 x2
c – y-intercept

y 2  y1 y
m 
x2  x1 x

67
SLOPE
+ve -ve

if |m| = 1 45°
45°
 = 45°

if |m|  1
-45° <  < 45° °
°

if |m|  1
45° <  < 90° or °

-90° <  < -45° °


68
|m| = 1
y=x
m=1
c=0
y

x y 8 
0 0 7 
1 1 6 
2 2 5 
3 3 4 
4 4
3 
5 5
2 
6 6 1 
7 7 0 
8 8 x
0 1 2 3 4 5 6 7 8

69
|m|  1
y=½x+1
m=½
y
c=1 x y round(y)

0 1 1 8
1 1.5 2 7
6
2 2 2 5  
3 2.5 3 4  
3  
4 3 3
5 3.5 4 2  
1 
6 4 4 0
7 4.5 5 0 1 2 3 4 5 6 7 8 x

8 5 5
70
|m|  1
y = 3x - 2
m=3
c = -2 y
x y round(y
) 8
0 -2 -2 7 
1 1 1 6
2 4 4 5
3 7 7 4 
4 10 10
3
5 13 13 2
6 16 16 1 
0
7 19 19
0 1 2 3 4 5 6 7 8 x
8 22 22

71
BRESENHAM LINE ALGORITHM
A MORE EFFICIENT APPROACH

Basis of the algorithm:

A
B

Start position

From start position decide A or B next


72
BRESENHAM LINE ALGORITHM

True line

ti
si

For a given value of x


one pixel lies at distance ti above the line, and
one pixel lies at distance si below the line
73
BRESENHAM LINE ALGORITHM

Decision parameter

di = (si - ti)
If di  0, then closest pixel is below true line (si smaller)
If di  0, then closest pixel is above true line (ti smaller)

We must calculate the new values for di as we move


along the line.

74
EXAMPLE:
dy
Let gradient(slope)  0.5 (i.e.  0.5 or 2dy  dx )
dx
Start pixel at (x0,y1)
y5 At x1 :
s1 = dy t1 = dx - dy
y3 d1 = (si - ti) = dy - (dx - dy) = 2dy - dx
but 2dy  dx  di  0  y stays the
same
y2 hence next pixel is at (x1,y1)
3dy 4dy At x2 :
2dy s2 = 2dy t2 = dx - 2dy
y1 dy
d2 = (s2 – t2) = 2dy - (dx - 2dy) = 4dy -
dx
y0 Suppose d2  0  y is incremented
x0 x1 x2 x3 x4 x5 hence next pixel is at (x2,y2)
At x3 :
s3 = 3dy - dx t2 = 2dx - 3dy
d3 = (s2 – t3) = 6dy - 3dx  0
so y stays the same
hence next pixel is at (x3,y2)
75
IN GENERAL For a line with gradient ≤ 1
d0 = 2dy – dx
if di  0 then yi+1 = yi
di+1 = di + 2dy
if di ≥ 0 then yi+1 = yi + 1
di+1 = di + 2(dy –
dx)
xi+1 = xi + 1
For a line with gradient  1
d0 = 2dx – dy
if di  0 then xi+1 = xi
di+1 = di + 2dx
if di ≥ 0 then xi+1 = xi + 1
di+1 = di + 2(dx – dy)
yi+1 = yi + 1

Note: For |m| ≤ 1 the constants 2dy and 2(dy-dx) can be calculated
once,
76
so the arithmetic will involve only integer addition and subtraction.
EXAMPLE – DRAW A LINE FROM (20,10) TO (30,18)
(30,18)
dx = 10
dy = 8
initial decision d0 = 2dy – dx = 6
Also 2dy = 16, 2(dy – dx) = -4
(20,10)
i di (xi+1,yi+1)
0 6 (21,11)
1 2 (22,12)
2 -2 (23,12)
3 14 (24,13)
4 10 (25,14)
5 6 (26,15)
6 2 (27,16)
7 -2 (28,16)
8 14 (29,17)
9 10 (30,18)

77
void LineBres(int x0, int y0, int x1, int y1) // line for |m| < 1
{
int dx = abs(x1 – x0), dy = abs(y1 – y0);
int d = 2 * dy – dx, twoDy = 2 * dy, twoDyMinusDx = 2 * (dy – dx);
int x, y;
if (x0 > x1) { // determines which point to use as start, which as
end
x = x1;
y = y1;
x1 = x0;
}
else {
x = x0;
y = y0;
}
setPixel(x,y);
while (x < x1) {
x++;
if (d < 0) d += twoDy;
else {
y++;
d += twoDyMinusDx;
}
setPixel(x, y);
}
}

78
SPECIAL CASES

 Special cases can be handled separately


 Horizontal lines (y = 0)
 Vertical lines (x = 0)

 Diagonal lines (|x| = |y|)

 directly into the frame-buffer without


processing them through the line-plotting
algorithms.

79

You might also like