Professional Documents
Culture Documents
Cad Combined
Cad Combined
Instructors: A D Bhatt
Coordinator A.D. Bhatt
abhatt@mnnit.ac.in
Delivered on 16/08/2022
• Syllabus
• Evaluation Methods
Function:
Form:
• Soap case
• Hair Clips
• Chairs
• Mouse
• Speakers
What changes you observe?
Sl.
Component Maximum Marks Remarks
No.
End Semester
3. xx On campus 3 hour written examination.
Examination
A D Bhatt
19/08/2021
Look at the common products
• Soap case
• Hair Clips
• Chairs
• Mouse
• Speakers
What changes you observe?
Curtsey: https://chairimports.com.au/chair-history/
Creativity
• Ideas come and go.
• Capture them: improve upon them: Implement them
• Text: A way to further explain some features apart from the sketch
• Rendering
• Approximations:
• Curved flat surface rendered as piece wise straight lines.
• Curved surfaces rendered as piecewise flat surfaces.
• Resolution [ number of pixels in horizontal-vertical direction)
• Near Horizontal or near vertical lines.
[My screen resolution is set to 1920x1080 .. ]
• Finite objects
• No infinite curves/ surfaces
Point:
Basic element of geometry.
Indicates location
ordered set.
Position Vector:
The vector that is generated by joining the
origin of the coordinate system with the
position of the point.
LEFT HAND RIGHT HAND
Equations
• Implicit
f(x,y,z)=0
• Explicit
y=f(x)
• Intrinsic
o Defined within it self. No need for any entity external to it
such as coordinate system.
o Usually for planar curves the intrinsic equations are in the terms of
curvature and arc length
Intrinsic Equation of a curve
• Equation depends on the curve itself
• (not on any external entity such as coordinate system or frame of reference).
• Example:
• Rectangle:
• Has four internal angles equal is intrinsic to all rectangles.
• If I say that the one side is on horizontal axis, it will become extrinsic.
• Circle
• The curvature is constant is intrinsic to all curves.
• For planar curves, it is found that curvature and arc length are sufficient to define it.
• f(κ,s)=0, where κ = curvature, and s is the arc length.
Intrinsic equation of a curve
• Planar curve:
• κ=f(s)
• Curvature is constant.
A D Bhatt
20/08/2021
Parametric Equations
𝑥 𝑢
•𝒑 𝑢 = 𝑦 𝑢 , 𝑢𝜖[ 𝑢𝑚𝑖𝑛 𝑢𝑚𝑎𝑥 ]
𝑧(𝑢)
Degrees of freedom
Parametric space of the curve
𝑥 𝑢
• The cartesian space (R3) 𝒑 𝑢 = 𝑦 𝑢 , 𝑢𝜖[ 𝑢𝑚𝑖𝑛 𝑢𝑚𝑎𝑥 ]
𝑧(𝑢)
• All of these functions x=x(u), y=y(u) and z=z(u) are called parametric
space of the curve,
• All these functions may be viewed as separate disconnected functions
also…. (Exceptions..)
x
u
y
u
x
u
y
u
x
u
y
u
Algebraic Coefficients (A’s)
• Algebraic coefficients are not intuitive:
• Degrees of Freedom ??
𝒑 𝑢 = 𝒂3 𝑢3 + 𝒂2 𝑢2 + 𝒂1 𝑢 + 𝒂0 , 𝑢𝜖[0 1]
Parametric curve in polynomial form: Cubic
curves
𝑥 𝑢
•𝒑 𝑢 = 𝑦 𝑢 , 𝑢𝜖[ 𝑢𝑚𝑖𝑛 𝑢𝑚𝑎𝑥 ]
𝑧(𝑢)
Let :
x(u)= 𝑎3𝑥 𝑢3 + 𝑎2𝑥 𝑢2 + 𝑎1𝑥 𝑢 + 𝑎0𝑥
y(u)= 𝑎3𝑦 𝑢3 + 𝑎2𝑦 𝑢2 + 𝑎1𝑦 𝑢 + 𝑎0𝑦
z(u)= 𝑎3𝑧 𝑢3 + 𝑎2𝑧 𝑢2 + 𝑎1𝑧 𝑢 + 𝑎0𝑧
or
𝑎3𝑥 𝑎3𝑦 𝑎3𝑧
3 2
𝑎2𝑥 𝑎2𝑦 𝑎2𝑧
𝒑 𝑢 = 𝑢 𝑢 𝑢 1 𝑎 𝑎1𝑦 𝑎1𝑧
1𝑥
𝑎0𝑥 𝑎0𝑦 𝑎0𝑧
or
𝒑 𝑢 =𝑈𝐴
• Let
𝑎3𝑥 𝑎2𝑥 𝑎1𝑥 𝑎0𝑥
𝒂3 = 𝑎3𝑦 , 𝒂2 = 𝑎2𝑦 , 𝒂1 = 𝑎1𝑦 , & 𝒂0 = 𝑎0𝑦 ,
𝑎3𝑧 𝑎2𝑧 𝑎1𝑧 𝑎0𝑧
𝒑 𝑢 = 𝒂3 𝑢3 + 𝒂2 𝑢2 + 𝒂1 𝑢 + 𝒂0
𝒂3
3 2 𝒂2
Or 𝒑 𝑢 =[𝑢 𝑢 u 1] 𝒂 = U A: A: Algebraic Coefficients
1
𝒂0 U= [𝑢3 𝑢2 u 1]
Geometric Form of Parametric cubic Curves
The idea is to convert the Algebraic form into geometric form. So
that it becomes more intuitive.
𝒑 𝑢 = 𝒂3 𝑢3 + 𝒂2 𝑢2 + 𝒂1 𝑢 + 𝒂0 , 𝑢𝜖 0 1 --- ---- --- (1)
In other words, we want to find out the values of the p’s in terms of
the a’s:
𝐴𝑡 𝑢 = 𝑜, 𝒑 = 𝒑𝑜 ,
So, 𝒑𝑜 = 𝒂0 ,
or 𝒂0 = 𝒑𝑜 --- --- --- ---(2)
At u=1, 𝒑 = 𝒑1 ,
So 𝒂3 + 𝒂2 + 𝒂1 + 𝒂0 = 𝒑1 --- --- --- --- (3)
• Differentiating the equation (1) with respect to u, we get:
𝒂𝟏 = 𝒑𝒖𝟎
A D Bhatt
23/08/2021
Correction:
• Pl download the corrected L3 ppt that is uploaded today
(23/08/2022). The previous file with same name has been deleted.
• Corect Value of Blending Functions is:
A D Bhatt
25/08/2021
Changing the shape of Hermite Curves
𝒑 𝑢 = 𝐹1 𝒑𝑜 + 𝐹2 𝒑1 + 𝐹3 𝒑𝒖𝟎 + 𝐹4 𝒑𝒖𝟏
Degrees of freedom: 12
• Start Point
𝒑𝑜 𝐷𝑂𝐹: 𝐸𝑎𝑐ℎ 𝑐𝑜𝑜𝑟𝑑𝑖𝑛𝑎𝑡𝑒 𝑜𝑓 𝑡ℎ𝑒 𝑠𝑡𝑎𝑟𝑡 𝑝𝑜𝑖𝑛𝑡 (𝑥𝑜 , 𝑦𝑜 , 𝑧 𝑜 )𝑐𝑎𝑛 𝑏𝑒 𝑐ℎ𝑎𝑛𝑔𝑒𝑑
𝑖𝑛𝑑𝑒𝑝𝑒𝑛𝑑𝑒𝑛𝑡𝑙𝑦: DOF→ 3
• End Point 𝒑1 : DOF→ 3
• Start Tangent Vector 𝒑𝒖𝟎 : DOF→ 3
• End Tangent Vector 𝒑𝒖𝟏 : DOF→ 3
• So we have constrained all 12 DOF to construct a space curve
Properties of Hermite Curves
• Universality
• The are present there for the entire range of parameter u.
• Dimensional independence
• Does not depend on the dimensionality of the curve.
𝐹1 = 2𝑢3 − 3𝑢2 + 1 ,
𝐹2 = −2𝑢3 + 3𝑢2 , 𝐹3 = 𝑢3 − 2𝑢2 + 𝑢 , and 𝐹4 = 𝑢3 − 𝑢2 ,
𝐹1 = 2𝑢3 − 3𝑢2 + 1 ,
𝐹2 = −2𝑢3 + 3𝑢2 , 𝐹3 = (𝑢3 −
2𝑢2 + 𝑢), and 𝐹4 = 𝑢3 − 𝑢2 ,
Reparameterization
• Change the parametric interval (the curve remains unaltered)
Reparameterization
When I say that I am limiting my parametric interval from 0 to 1:
Many of you might have thought that I am considering a very specific case.
• We must understand that our ‘real’ object lies in the object space and not in
the parametric space.
• Parameters are actually not a part of our 3D space : E3 or R3:
• They are external to it and they help us to define the cartesian space
location of the object.
• As long as the object in Cartesian space remains unchanged, whatever I do
in parametric space is not visible to me (I: a part of the cartesian space)!
Reparameterization:
• Change of the parametric interval without changing the object location
or size or orientation in object space.
Re-parameterisation
In algebraic way of defining PC curve: We are not very strict in defining
the parametric interval.
p=UA, uϵ[umin umax]
But whenever we convert it to geometric way (using geometric
coefficients)
p=UMB, we restrict the parametric interval to [0 1]
Else the M matrix will be not the one that we have derived earlier.
Or the blending functions F1, F2,F3 and F4 will be different as
F=[F1 F2 F3 F4]=UM
Re-parametrization
• Reverse Parametrization
• Generic Reparameterization
• Truncation
• Subdivision
• Extension
Reparameterization (Contd)
Remember:
So the substitution v=au+b or u=(v-b)/a will work only if the equation is in the
Algebraic form.
𝒑 𝑢 = 𝒂3 𝑢3 + 𝒂2 𝑢2 + 𝒂1 𝑢 + 𝒂0 ,
horen
p=UMB 𝒖 𝟑
𝒖 𝟐
𝑷𝟏 𝟏 𝟏 𝒖𝟏 𝟏
𝑷𝟐 𝒖𝟑𝟐 𝒖𝟐𝟐 𝒖𝟐 𝟏
So = 𝟑 𝟐 MB
𝑷𝟑 𝒖𝟑 𝒖𝟑 𝒖𝟑 𝟏
𝑷𝟒 𝒖𝟑𝟒 𝒖𝟐𝟒 𝒖𝟒 𝟏
P =Ԋ M B
So: B=𝑴−𝟏 Ԋ−𝟏 P
So equation of curve: p=UMB= UM𝑴−𝟏 Ԋ−𝟏 P
or p(u)=UԊ−𝟏 P
So the equation of the curve can be plotted.
• p(u)=UԊ−𝟏 P (equation of my curve)
𝟑 𝟐
𝑷𝟏 𝒖 𝟏 𝒖𝟏 𝒖𝟏 𝟏
𝑷𝟐 𝒖𝟑𝟐 𝒖𝟐𝟐 𝒖𝟐 𝟏
• P= , Ԋ= 𝟑 𝟐
𝑷𝟑 𝒖𝟑 𝒖𝟑 𝒖𝟑 𝟏
𝑷𝟒 𝒖𝟑𝟒 𝒖𝟐𝟒 𝒖𝟒 𝟏
How should we take the value of 𝑢𝑖 (𝑖𝜖[1,2,3,4])
Should they be incremental ?
Should they be within the parametric interval [0 1]?
What will happen if they are not within the limit [0 1]?
L-6 15101
Computer Aided Design
A D Bhatt
26/08/2021
This lecture was essentially explain some finer points with explanations
through Matlab/ Octave programs
##Circle
clear all ## clear all variables
clf ## clears current figure-> any preexisting figure
u=linspace(0,2*pi,10) ## define u ( a row vector, having
##10 elements equidistance between 0 and 2pi)
a=1;
b=a;
x=a*cos(u);
y=b*sin(u);
plot(x,y)
hold on
title('Plot of a helix')
grid minor
hold off
Hermite cubic curve:
Effect of tangent vector magnitude
• Let the unit tangent vector at the start point
𝒑𝟎
ෝ
𝒕𝟎 =
𝑝𝟎
• Dimensional independence
• Does not depend on the dimensionality of the curve.
𝐹1 = 2𝑢3 − 3𝑢2 + 1 ,
𝐹2 = −2𝑢3 + 3𝑢2 , 𝐹3 = 𝑢3 − 2𝑢2 + 𝑢 , and 𝐹4 = 𝑢3 − 𝑢2 ,
𝐹1 = 2𝑢3 − 3𝑢2 + 1 ,
𝐹2 = −2𝑢3 + 3𝑢2 , 𝐹3 = ሺ𝑢3 −
2𝑢2 + 𝑢ሻ, and 𝐹4 = 𝑢3 − 𝑢2 ,
Control of curve
PC curve (Hermite curve)
Controls:
Global Control
Local Control
Variation Diminishing Property of curves
• Disturbance slowly diminishes as we go away from the point of
disturbance.
L-7 15101
Computer Aided Design
A D Bhatt
30/08/2021
Composite curves
• Joining of two or more curves: Composite Curve
• Continuity Requirements
• C Continuity :
𝐶 0 , 𝐶 1 , 𝐶 2 and higher
• G Continuity
𝐺 0 , 𝐺 1 and 𝐺 2
Spline Curves
•Used to smoothly join large number of points
with C2 continuity.
•Spline is an elastic strip that can be forced to
pass through different points.
•Mathematically it can be approximated with
the bending of elastic beam.
Bending of Beam
x
y
𝑑2 𝑦
𝑑𝑥2
𝑀 σ 𝐸 But ρ = 𝑑𝑦
= = =E/R [(1+ )2]3/2
𝑑𝑥
𝐼 𝑦 𝑅
1 𝑀 For small value of dy/dx,
or =ρ = 𝑑2 𝑦 𝑀
𝑅 𝐸𝐼
ρ≈ =
𝑑𝑥 2 𝐸𝐼
or y a3 x3 + a2 x2 + a1 x + a0
So bending of elastic beam can be approximated by a cubic
curve
𝐹1 = 2𝑢3 − 3𝑢2 + 1 ,
𝐹2 = −2𝑢3 + 3𝑢2 ,
𝐹3 = 𝑢3 − 2𝑢2 + 𝑢 , and
𝐹4 = 𝑢3 − 𝑢2 ,
Similar equations may be written for the junction point of other segments. 𝐹1 = 2𝑢3 − 3𝑢2 + 1 ,
𝐹2 = −2𝑢3 + 3𝑢2 ,
𝐹3 = 𝑢3 − 2𝑢2 + 𝑢 ,
and 𝐹4 = 𝑢3 − 𝑢2 ,
Looking at the junction of curve segment (1) and (2) we get:
𝑃 1 𝑢𝑢 𝑢 = 1 = 𝑃 1 𝑢𝑢 𝑢 = 0
Similar equations may be written for the junction point of other segments. 𝐹1 = 2𝑢3 − 3𝑢2 + 1 ,
𝐹2 = −2𝑢3 + 3𝑢2 ,
𝐹3 = 𝑢3 − 2𝑢2 + 𝑢 ,
and 𝐹4 = 𝑢3 − 𝑢2 ,
Consider only first three points:
The equations are:
𝑃1𝑢 +4 𝑃2𝑢 + 𝑃3𝑢 = 3(𝑃3 − 𝑃1 ) --------------------------(1)
𝑃2𝑢 +4 𝑃3𝑢 + 𝑃4𝑢 = 3(𝑃4 − 𝑃2 ) --------------------------(2)
𝑃3𝑢 +4 𝑃4𝑢 + 𝑃5𝑢 = 3(𝑃5 − 𝑃3 ) --------------------------(3)
…………………………………………..
…………………………………….
𝑢 𝑢
𝑃𝑛−2 +4 𝑃𝑛−1 + 𝑃𝑛𝑢 = 3(𝑃3 − 𝑃1 ) ---------------------(n-2)
𝑢 𝑢
𝑃𝑛−1 +4 𝑃𝑛𝑢 + 𝑃𝑛+1 = 3(𝑃𝑛+1 −3𝑃𝑛−1 ) -----------------------(n-1)
𝑃1𝑢 𝑃3 − 𝑃1
1 4 1 0 0 …… 0 0 0 0 0 0
0 1 4 1 0 ……0 0 0 0 0 0 𝑃2𝑢 𝑃4 − 𝑃2
0 0 1 4 1… … 0 0 0 0 0 0 𝑃3𝑢 𝑃5 − 𝑃3
.. .. .. .. .. .. .. ..…… .. .. ..
∗ =3
.. .. .. .. .. .. .. .. ..…… .. .. ..
𝑢
0 0 0 0 0 0 1 4 1 0 0 𝑃𝑛−1 𝑃𝑛−1 − 𝑃𝑛−3
0 0 0 0 0 0 0 1 4 1 0 𝑃𝑛𝑢 𝑃𝑛 − 𝑃𝑛−2
0 0 0 0 0 0 0 0 1 4 1 𝑢
𝑃𝑛+1
𝑃𝑛+1 − 𝑃𝑛−1
L * 𝑃𝑢 = R
So can it be solved?
Is this situation good or bad for a designer?
End Conditions:
𝐿 ∗ 𝑃𝑢 = 𝑅
Code: you may write your own code.
L 8 ME15101 Computer Aided Design
𝐿 ∗ 𝑃𝑢 = 𝑅
So, the elements of the first row and the last row will depend upon the
type of end conditions we choose.
So, the equation with relax end condition can be written in matrix form as:
𝑷𝟐 − 𝑷1
2 1 0 0 0 …… 0 0 0 0 0 0 𝑃3 − 𝑃1
1 4 1 0 0 …… 0 0 0 0 0 0 𝑃1𝑢
0 1 4 1 0 ……0 0 0 0 0 0 𝑃2𝑢 𝑃4 − 𝑃2
0 0 1 4 1… … 0 0 0 0 0 0 𝑃3𝑢 𝑃5 − 𝑃3
.. .. .. .. .. .. .. ..…… .. .. ..
∗ =3
.. .. .. .. .. .. .. .. ..…… .. .. ..
𝑢
0 0 0 0 0 0 1 4 1 0 0 𝑃𝑛−1 𝑃𝑛−1 − 𝑃𝑛−3
0 0 0 0 0 0 0 1 4 1 0 𝑢
𝑃𝑛 𝑃𝑛 − 𝑃𝑛−2
0 0 0 0 0 0 0 0 1 4 1 𝑢
𝑃𝑛+1
0 0 0 0 0 0 0 0 0 1 2 𝑃𝑛+1 − 𝑃𝑛−1
𝑷𝒏+𝟏 − 𝑷𝑛
𝑢
L * 𝑃 = R
Other end conditions (Contd)
Cyclic Spline:
• Both curvature and tangent vector at both the ends are equal.
Anticyclic Spline
• Curvature and tangent vectors at both ends are equal in magnitude but
opposite in direction.
Chord Approximation
Bezier Curves
2/09/2021
A D Bhatt
Bezier Curve
• Originally created by by Paul de Casteljau : popularized by French Engineer
P Bezier.
• The idea was to create a curve that can be easily manipulated by using
certain points termed as control points.
• The curve must pass through first and last point.
• The initial tangent (the tangent at start point ) of the curve should be
defined with first two points and the tangent at the last point of the curve
last two points.
• Similarly the second derivative at the start point will be defined with the
help of the first three points and that at the end point will be defined with
the help of last three points. (this statement an be generalized for higher
derivatives also.
• The Blending functions should be symmetric in u and 1-u. So if we reverse
the order of points, the curve should not change its shape.
L 10 ME15101 Computer Aided Design
6/09/2021
A D Bhatt
Last class: last question…..
Some Simulation Examples
Cubic Bezier curve
• Geometric Coefficients of Bezier Curve
The set of control points [ p0 p1 p2 …..pn]’
𝑝 𝑢 = 𝑈𝑀𝑏𝑛 P
Where P is the set of control points.
𝑀𝑏𝑛 Is the geometric transformation matrix for Bezier Curves for the
required degree n.
Bezier curves in Matrix Form
L 11 ME15101 Computer Aided Design
8/09/2021
A D Bhatt
Truncation of Bezier curve
Degree Elevation
• Let us take the example of a Bezier curve defined by three control points:
n=2
•
• Let us presume that we a four point Bezier curve actually represents the
same curve: having control points q0, q1,q2 and q3.
• Its obvious that q0=p0;and q3=p2.
Generalized Bezier Degree Elevation
Generalized Bezier Degree Elevation
Generalized Bezier Degree Elevation
L 12 ME15101 Computer Aided Design
B-spline Curves
9/09/2022
A D Bhatt
Last class we were discussing Limitations of
Bezier Curves
• Local Control is not possible.
• As number of points (n+1) increase, the degree of the curve (n)
increases.
• We can not create standard geometric shapes like circle/ellipse/
hyperbola!
But we were happy about certain things
about Bezier Curves:
• Intuitiveness
• Only control points are needed to define and thus control the curve.
(no tangent vectors etc)
If the denominator of any of the two terms on the right hand side is zero,
the term is neglected (not considered for summing these terms)
N11(u)
N21(u)
N31(u)
N41(u)
0 1 2 3 4 5 u---->
Example:2
13/09/2022
A D Bhatt
• Blending Functions
Ni,1 = 1 if ti u < ti+1
= 0 otherwise.
If the denominator of any of the two terms on the right hand side is zero,
the term is neglected (not considered for summing these terms)
15/9/2022
A D Bhatt
• Blending Functions
Ni,1 = 1 if ti u < ti+1
= 0 otherwise.
If the denominator of any of the two terms on the right hand side is zero,
the term is neglected (not considered for summing these terms)
u
0 1 2 3 4
N13(u)
1
u
0 1 2 3 4
Blending functions for n=4, K=3
N23(u)
1
u
0 1 2 3 4
N33(u)
1
u
0 1 2 3 4
Blending functions for n=4, K=3
N43(u)
1
u
0 1 2 3 4
For Cubic B-Spline Curve (Open Uniform)
Example 4:If we take the same example:
order K=4 (1+degree of the curve (3))
Equation of B-spline Curve
p(u) = σ4𝑖=0 pi Ni,K(u)
= 𝑝0 𝑁0 4(𝑢) + 𝑝1 𝑁14(𝑢) + 𝑝2 𝑁2 4(𝑢) +
,
𝑝3𝑁3 4(𝑢) + 𝑝4 𝑁, 4 4(𝑢)
, ,
L 15 ME15101 Computer Aided Design
20/9/2022
A D Bhatt
•Blending Functions
Ni,1 = 1 if ti u < ti+1
= 0 otherwise.
• For K=5 (n=4): we have a 𝐶 3 continuous curve (line joining the control points in the sequence), the
max power of u (Degree) in the equation is 4 .
• Knot vector:[0 0 0 0 0 1 1 1 1 1], 0≤ 𝑢 ≤ 1 𝐾 𝑟𝑒𝑝𝑒𝑎𝑡𝑒𝑑 𝑘𝑛𝑜𝑡𝑠 𝑖𝑛 𝑡ℎ𝑒 𝑏𝑒𝑔𝑖𝑛𝑖𝑛𝑔 𝑎𝑛𝑑 𝑖𝑛 𝑡ℎ𝑒 𝑒𝑛𝑑
• For K=6 (n=4): we may have a 𝐶 4 continuous curve (line joining the control points in the
sequence), the max power of u (Degree) in the equation is 3 .
• Knot vector:[0 0 0 0 0 0 0 0 0 0 0 0], 0≤ 𝑢 ≤ 0
• Curve exists only at u=0: so its of o use for us.
• So the only valid curve to a designer is a curve with K=5 (n=4): a 𝐶 3 continuous curve
within the interval 0≤ 𝑢 ≤ 1.
• This fixes the upper limit on K in relation to : K ≤n+1
Limits on K
• So, in general, we can say that:
• A B-Spline curve with order K will have a degree K-1 , continuity 𝐶 𝐾−2 .
• The highest order K that one can take is: K=n+1 .
• (So K can not exceed number of points n+1 of the curve).
• Let us also see what happens when K=n+1.
• Range of u will be from 0 to 1.
• So there is only one segment (Bezier) .
• And it indicates that the curve actually becomes a Bezier curve .
• You may check and prove it: take K=3, n=2 or K=4, n=4 (our example)
You may guess some properties of knot vector
By doing so:
• The parametric range will change (WHY?)
• The curve in object space will remain unchanged (WHY?)
In-between blending functions (open-uniform)
For Cubic B-Spline Curve (Open Uniform)
Example 4:If we take the same example:
order K=4 (1+degree of the curve (3))
Equation of B-spline Curve
p(u) = σ4𝑖=0 pi Ni,K(u)
= 𝑝0 𝑁0 4(𝑢) + 𝑝1 𝑁14(𝑢) + 𝑝2 𝑁2 4(𝑢) +
, ,
𝑝3𝑁3 4(𝑢) + 𝑝4 𝑁4 4(𝑢)
, ,
B-Spline Curves
• So-far, the B-Spline curve that we have understood are called Open
Uniform B-Spline curve, where we have constrained the knot vector
to a pre-defined set.
• In general, the knot-vector can be chosen by the designer and
depending upon the type of knot-vector, the B-spline curve is is also
defined.
• For example:
If the knot interval is uniform, then the B-Spline curve is called
Uniform or Periodic B-Spline.
Some B-Spline Curve Types
1. Uniform or Periodic:
• t=[ 1 2 3 4 5 6 7 8..]
• All knots are uniformly spaced.
2. Open-uniform or Clamped B-Spline curves
• t=[0 0 0 0 1 2 3 4 5 6 7 8 9 10 10 10 10]
• K knots repeated at the beginning as well as at the ends. Intermediate knots are
uniformly spaced.
3. Non-uniform
• t=[ 1 1 1 1.5 2 3 3.5 6 8 11 11 12]
• Normalized B-Spline curves:
• If the parametric interval is maintained between 0 to1 (0≤ 𝑢 ≤ 1 ), then the curve is
called normalized curve.
Some B-Spline Curve Types
Normalized curves:
(You may divide the knot vector by its maximum value)
1. Normalized Uniform or Periodic B-Spline curve:
• Not normalized t=[ 0 1 2 3 4 5 6 7 8]
1 2 3 4 5 6 7
• Normalized Knot vector[0, , , , , , , , 1]
8 8 8 8 8 8 8
• All knots are uniformly spaced.
2. Open-uniform or Clamped B-Spline curves
• Not normalized t=[ 0 0 0 1 2 3 4 5 6 7 8 8 8]
1 2 3 4 5 6 7
• Normalized Knot vector[0, 0,0, , , , , , , , 1]
8 8 8 8 8 8 8
3. Non-uniform
• Not normalized t=[ 0 0 1 2 5 7 7 9 9 10 1010]
1 2 3 4 5 6 7 7 9 9
• Normalized Knot vector[0, 0,0, , ′ , ,, , , , , , , 1]
10 10 10 10 10 10 10 10 10 10
Periodic (Uniform) B-spline curves
• Knot vectors are uniform.
• 𝑡𝑗 =j, for j=0, 1,2, ………, n+K
• Rest of the definitions for 𝑁𝑖𝐾 as usual.
• Example: Let n=4, K=1.
• Knot vector t=[ 0 1 2 3 4 5] …Same as in the open uniform case.
• So, the blending functions do not change. We get the same curve (the
control point!)
Example: Periodic B-Spline Curves, n=4, K=2
22/9/2022
A D Bhatt
Periodic (Uniform) B-spline curves
• Knot vectors are uniform.
• 𝑡𝑗 =j, for j=0, 1,2, ………, n+K
• Rest of the definitions for 𝑁𝑖𝐾 as usual.
• Example: Let n=4, K=1.
• Knot vector t=[ 0 1 2 3 4 5] …Same as in the open uniform case.
• So, the blending functions do not change. We get the same curve (the
control point!)
Example: Periodic B-Spline Curves, n=4, K=2
(𝑢−𝑖)𝑁𝑖,2 (𝑖+3−𝑢)𝑁𝑖+1,2
𝑁𝑖,3 = +
2 2
(𝑢−𝑖)
= 𝑢 − 𝑖 𝑁𝑖,1 + 𝑖 + 2 − 𝑢 𝑁𝑖+1,1
2
(𝑖+3−𝑢)
+ [(𝑢 − 𝑖 − 1)𝑁𝑖+1,1 +(𝑖 + 3 − 𝑢)𝑁𝑖+2,1 ]
2
• If a sixth control (now n=5) such that s added, point 𝑝5 is at the location of 𝑝0
my knot vector become:[0 1 2 3 4 5 6 7]
• For new valid range of 1 ≤ 𝑢 ≤ 6
• My curve is the polygon 𝑝0 − 𝑝1 − 𝑝2 − 𝑝3 − 𝑝4 - 𝑝5 ∶
that becomes a closed polygon.
Closed B-Spline curve with K=3
• For K=3, n=4, t= [0 1 2 3 4 5 6 7]
• For valid range of 2 ≤ 𝑢 ≤ 5
• My curve is the 𝐶 1 continuous curve drawn by pencil.
• If two control points 𝑝5 and 𝑝6 are added (now n=6) such that added, point 𝑝5 is
at the location of 𝑝0 and 𝑝6 is at the location of 𝑝1
my knot vector become:[0 1 2 3 4 5 6 7 8 9]
• For new valid range of 2 ≤ 𝑢 ≤ 7
• My curve is a closed curve that is still 𝐶 1 continuous
• (added curve is shown by red colour)
Creating Closed Curves with 𝐶 𝐾−2 Continuity
• Repeat the initial polygon vertices (n+1) up-to count (K-1) and make
them the last (K-1) control points of
• Such that the total number of control points : n+K-1 (new value of n is n+k-1).
• Construct the B-Spline curve as usual within the valid range of u depending
upon the new n and the K.
• The curve that we will get will be a closed B-Spline curve of order K.
Periodic B-Spline Curve
• K=3,
Closed B-Spline curves of various orders:
Non-uniform B-Spline Curve
• As the name suggest: knot vector is not(non-) uniform.
• Let us slightly tweak our open uniform B-spline curve:
• For K=3, n=4, we know that the knot vector t=[0 0 0 1 2 3 3 3 ]
• Let us say that our knot vector is: t=[0 0 0 0.5 1 3 3 3]
• Let us see how the new curve behaves.
(𝑢−𝑡𝑖 )𝑁𝑖,𝑘−1 (𝑡𝑖+𝑘 −𝑢)𝑁𝑖+1,𝑘−1
𝑁𝑖,𝑘 = +
𝑡𝑖+𝑘−1 −𝑡𝑖 𝑡𝑖+𝑘 −𝑡𝑖+1
• t=[0 0 0 0.5 1 3 3 3], K=3,n=5
(𝑢−𝑡𝑖 )𝑁𝑖,𝑘−1 (𝑡𝑖+𝑘 −𝑢)𝑁𝑖+1,𝑘−1
𝑁0,2 = + = 0
𝑡𝑖+𝑘−1 −𝑡𝑖 𝑡𝑖+𝑘 −𝑡𝑖+1
(𝑡3 −𝑢)𝑁2,1
𝑁1,2 =0+ =(1 − 2𝑢) 𝑁2,1
0.5−0
𝑢𝑁2,1 (1−𝑢)𝑁3,1
𝑁2,2 = + =2𝑢𝑁2,1 + (2 − 2𝑢) 𝑁3,1
0.5 0.5
(𝑢 − 1)𝑁4,1
𝑁4,2 = +0
2
𝑁5,2 = 0
The curve:
What is happening: t=[0 0 0 0.5 1 3 3 3]
• Let us see how the successive knot intervals affect the curve for K=3
• So the nature of curve changes, if the knot interval is changed.
• We have changed two knot values from the conventional Open-uniform B-
spline curve.
• 𝑡3 -𝑡2 = 0.5, and 𝑡4 -𝑡3 = 0.5, since these knot
intervals are equal: the curve touches the mid point of 𝑝1 and 𝑝2 .
𝑡4 -𝑡3 = 0.5 and 𝑡5 -𝑡4 = 2, and we have seen that the curve
Actually touches the line 𝑝2 - 𝑝3 at a point that divides it in the ratio
Of 0.5:2 or 1:4.
2.Given the following control points: (0 0 0); (0 1 0); (2 1 0); (2 0 0) and (1 0 0). The knot vectors are
non-uniform and given as
a. t=[0 0 0 .5 1 3 3 3]
b. t=[0 0 1 1 1 3 3 3] Express the changes in the shape of the curve from the open-non-uniform
case for K=3.
L 17 ME15101 Computer Aided Design
23/9/2022
A D Bhatt
• Some examples are there in tutorial sheet. You will experience what is
going to happen if we change the knot vector.
• [0 0 0 1 2 3 4 5 6 6 6] for K=3 this knot vector forces the curve pass
through the first and last point.
• If there are any repeated knots in between
For example [ 0 0 0 1 1 3 4 5 6 6 6], K=3,
• The curve will pass through the first and last point (K repeated knots
at the start and end).
• The curve should have been C(K-2) continuous that is C1 continuous
throughout, but you will see that the continuity goes down to C0 at
u=1.
• If I repeat three knots inside: [ 0 0 0 1 2 2 2 5 6 6 6]
• You will find that the curve becomes discontinuous at u=2!
𝐾−2
Creating Closed Curves with 𝐶 Continuity
• Repeat the initial polygon vertices (n+1) up-to count (K-1) and make
them the last (K-1) control points of
• Such that the total number of control points : n+K-1 (new value of n is n+k-1).
• Construct the B-Spline curve as usual within the valid range of u depending
upon the new n and the K.
• The curve that we will get will be a closed B-Spline curve of order K.
2.Given the following control points: (0 0 0); (0 1 0); (2 1 0); (2 0 0) and (1 0 0). The knot vectors are
non-uniform and given as
a. t=[0 0 0 .5 1 3 3 3]
b. t=[0 0 1 1 1 3 3 3] Express the changes in the shape of the curve from the open-non-uniform
case for K=3.
As such
• We may play with knot vector,
• We can play with K
• We may play with control points including repeated control points.
And we will be getting a variety of shapes.
Terminology:
Normalised
Non-uniform
Open Non-Uniform or Open Uniform or Clamped
Periodic / Uniform / [ used for closed curves]
Normalized periodic b splines
Normalized non-uniform B Splines.
Some properties of B-spline curve
1. Curve remains within the convex hull (within the valid range).
• Sum of Blending Functions is always 1 .
• The blending functions are either zero or positive.
Geometric Transformations
27/9/2022
A D Bhatt
Geometric Transformations
• Geometric transformations provide life to virtual objects created
through geometric modeling.
• Maneuver the object
• View it from different angles
• Create multiple copies
• Create its reflected image
• Reshape an object
• Position the object with respect to each other
Etc.
Geometric Transformations (contd.)
Definition
• A mapping function between a set of points both in the domain and
range.
• The points may belong to the object or the coordinate system.
• The function needs to be one to one mapping.
• The transformation should be onto.
• It means that for a mapping f(x)=y, for every y, we must have one x.
• This is required for inverse mapping.
The domain of a function f(x) is the set of all values for which the function is defined, and the range of
the function is the set of all values that function takes.
Onto and not one to one
One to one and not onto
• Deformations
• Shear
• Scaling
2D Rigid Body Transformations
(x*,y*)
• Translation
y dy
(x,y)
In homogeneous coordinates dx
x
Or p*=Tdx,dy.p
• Translation
1 0 0 dx
T(dx, dy, dz)= 0 1 0 dy
0 0 1 dz
0 0 0 1
Geometric Transformations
30/9/2022
A D Bhatt
Reflection
• Reflection about x axis (y=0)
Or x* 1 0 0 x
y*= 0 -1 0 y
1 0 0 1 1
x
Reflection about an arbitrary line 0
1. Translate d to origin
l
2. Rotate L by 0 to coincide
with y axis 1
d
3. Reflect about y axis 3
d
Reflection about an arbitrary line (contd.)
•Rotate by (- 0 )to bring back to 2. l
Axis.
3
d
•translate l to coincide with
original position of l
l
d
• Scaling (along x and y)
Scale along y Along x and y
x* sx 0 0 x
y*= 0 sy 0 y
1 0 0 1 1
Scale along x
• Overall Scaling
1 0 0 x
x* 0 1 0 y
| y*= 0 0 1/s 1
1
Overall Scaling
Shear
• Shear along x (Shx)
x* 1 a 0 x
y*= 0 1 0 y
1 0 0 1 1
x* x+ay
y*= y
1 1
Shear (Contd)
• Shear along y (Shy)
x* 1 0 0 x
y*= b 1 0 y
1 0 0 1 1
6/10/2022
A D Bhatt
Geometric Projections
Geometric Projections
• Transformations we have read so far were
from one 3D space to another 3D space.
• For viewing the object on a planar space, we
need to view the ‘shadow’ of the object in a
surface: planer or non-planer.
• Non-planer projections have applications in
cartography, Cinema hall (Multiplexes).
• We will be essentially talking about planer
geometric projections.
Projections
Elements:
1. Object to be projected.
2. Projection lines (passing through each
points on the object
3. Projection Plane
aner Geometric Projections
• Centre of Projection
• Parallel Projection
Pl
• Perspective Projection
Planer Geometric Projections
Planer Geometric Projections
Axonometric Projection
• Projectors are parallel.
7/10/2022
A D Bhatt
Oblique Projection .
•An oblique projection is formed by parallel projectors from center of
projection at infinity that intersect the plane of projection at an oblique
angle.
•Only faces of the object parallel to the plane of projection are shown at
their true size and shape ( angles and lengths are preserved for these
faces only).
•Faces not parallel to the plane of projection are distorted.
Oblique Projection (contd.).
•Cavalier Projection
• A cavalier projection is obtained when the angle between the oblique
projectors and the plane of projection is 450.
• In cavalier projection, the foreshortening factors for all three principal
directions are equal.
• The resulting figure appears too thick.
•Cabinet Projection
• An oblique projection for which the foreshortening factor for edges
perpendicular to the plane of projection is ½ is called cabinet projection.
• For cabinet projection, the angle between the projectors and the plane
of projection = cot-1 (1/2) = 63.430
Perspective Projection
• The projection plane is normal to z axis at z=d .
• Center of projection is z=0.
y xp /d = x/z
x p(x,y,z)
yp /d = y/z
pp
Or xp = d x /z =x/(z/d)
d z & yp = d y /z =y/(z/d)
View So,
p(0,y,z)
along Mper= 1 0 0 0
x axis xp 0 1 0 0
z 0 0 1 0
0 0 1/d 0
View
z
yp So pp= Mpe p
along
x axis p(x,0,z) =[ x y z z/d]t
Perspective Projection (contd)
• The projection plane is normal to z axis at z=0
• Center of Projection is on z= - d
x
d z xp /d = x/ (z+d)
yp / d = y/ (z+d)
p(x,y,z) Or xp = d x /(z+d)
xp
=x/{(z/d)+1}
View
along z & yp = y /{(z/d)+1}
y axis
z So, M’per=
yp 1 0 0 0
p(x,y,z) 0 1 0 0
View
along y 0 0 0 0
x axis 0 0 1/d 1
Perspective Transformation
L 22 ME15101 Computer Aided Design
11/10/2022
A D Bhatt
Perspective Transformation
Perspective transformation 3D to 3D Mapping
1 0 0 0
𝑀𝑝𝑡 = 0 1 0 1
0 0 1 0
𝑝 𝑞 𝑟 1
Similar results can also be achieved for a point at infinity along Y axis and Z axis
respectively.
What will happen to a point at z=
• Concept of vanishing point:
Single point perspective transformation
1 0 0 0
• 0 1 0 0
0 0 1 0
0 0 𝑟 1
Perspective Transformation
1 0 0 0 𝑥
So
𝑦
p*= 00 1 0 0 𝑥
𝑥∗=
0 1 0 𝑧 1+𝑝𝑥+𝑞𝑦+𝑟𝑧
𝑦
𝑦∗ =
𝑝 𝑞 𝑟 1 1 1+𝑝𝑥+𝑞𝑦+𝑟𝑧
𝑦
𝑥 𝑧∗ =
1+𝑝𝑥+𝑞𝑦+𝑟𝑧
𝑦
= 𝑧
𝑝𝑥 + 𝑞𝑦 + 𝑟𝑧 + 1
The horizon appears as a line.
2. Straight lines in space appear as straight lines in the projection.
3. Sets of parallel lines meet at a vanishing point.
(How many vanishing points possible?)
4. Lines parallel to the projection plane appear parallel and and
therefore have no vanishing points.
Two point
- Architectural Designs
Conclusion
• For viewing any 3D object on two D plane
(i.e. computer screen, black board, etc.)
projections are required.
• Planar and non planar projections.
• Planar projections:
• Orthographic
• Axonometric
• Perspective
Surface Design
• Introduction
L 23, 24, 25 ME15101 Computer Aided Design
W={w3 w2 w 1} t
Boundary Elements of a surface
• Boundary Curves
•p(u,0)= a30 u3+ a20 u2+ a10 u+ a00
•p(u,1)= (a33 + a32 + a31 + a30 ) u3+
(a23 + a22 + a21 + a20)u2
+(a13 + a12 + a11 + a10 ) u+ (a03 + a02 + a01 + a00 )
•p(0,w)= a03 w3+ a02 w2+ a01 w+ a00
•p(1,w)= (a33 + a23 + a13 + a03 ) w3+ (a32 + a22 + a12+ a02)w2
+(a31 + a21 + a11 + a01 ) w+ (a30 + a20 + a10 + a00 )
•Corner points
p(0,0), p(1,0), p(0,1), p(1,1),
Geometric Form
• Boundary curves can readily be represented in geometric form.
pu0= F(u)[p00 p10 pu00 pu10]t p11
p01
pu1= F(u)[p01 p11 pu01 u
p 11]t
p00
Sine all the aijs are known all the sixteen geometric coefficients can be
computed.
OR if the geometric coefficients are known, algebraic coefficients can be
found.
Geometric Interpretation of Twist Vectors
pw11
p01 pu11
pu01
p11
p1i
p10
0 1
w
pw10
pu00
p10uw pu
1i
pu11
p00 pu10
p10
pu10
w
Geometric representation (contd.)
• p0w=F(w)[p00 p01 pw00 pw01]t pw11
p01 pu11
pu01 p
p11
• pu0w=F(w)[pu00 pu01 puw00 puw01]t
i1
pij
• pi0 = F1(ui)p00+ F2(ui)p10 pw10
+ F3(ui)pu00+ F4(ui)pu10 pu00
pi0
• pi1 = F1(ui)p01+ F2(ui)p11 p00
+ F3(ui)pu01+ F4(ui)pu11 p10
pu10
• pwi0 = F1(ui)pw00+ F2(ui)pw10
+ F3(ui)puw00+ F4(ui)puw10
• pwi1 = F1(ui)pw01+ F2(ui)pw11
+ F3(ui)puw01+ F4(ui)puw11
Geometric representation (contd.)
• Since all geometric coefficients are available,
pij = F1(wi)[F1(ui)p00+ F2(ui)p10+ F3(ui)pu00+ F4(ui)pu10]
+F2(wj)[F1(ui)p01+ F2(ui)p11+ F3(ui)pu01+ F4(ui)pu11]
+F3(wj)[F1(ui)pw00+F2(ui)pw10+ F3(ui)puw00+F4(ui)puw10] +F4(wj)
[F1(ui)pw01+F2(ui)pw11+F3(ui)puw01+F4(ui)puw11]
Comparing: A= M B Mt
And B= M-1 A Mt -1
L 26 ME15101 Computer Aided Design
Surface Design
8/11/22
A D Bhatt
Geometric representation (contd.)
• Since all geometric coefficients are available,
pij = F1(wi)[F1(ui)p00+ F2(ui)p10+ F3(ui)pu00+ F4(ui)pu10]
+F2(wj)[F1(ui)p01+ F2(ui)p11+ F3(ui)pu01+ F4(ui)pu11]
+F3(wj)[F1(ui)pw00+F2(ui)pw10+ F3(ui)puw00+F4(ui)puw10] +F4(wj)
[F1(ui)pw01+F2(ui)pw11+F3(ui)puw01+F4(ui)puw11]
Comparing: A= M B Mt
And B= M-1 A Mt -1
• Twist vectors are define the interior shape of the
curve.
• Twist vectors do not play any role in boundary
(corner points, boundary edges).
• If all twist vectors are zero, then the patch is called
Ferguson-patch or F-patch.
• Only first order (C1) continuity is possible across
the boundary of F-patches.
Degenerate surfaces (contd.)
• If B matrix is as follows:
p00 0 0 0
p10 0 0 0
p10-p00 0 0 0
p10-p00 0 0 0
Degenerate surfaces (Contd.)
• If B matrix is as follows:
p01
p00, p10
Degenerate surfaces (contd.)
• If B matrix is as follows:
p00 p01 pw00 pw01
p00 p01 pw10 pw11
pu00 pu01 puw00 puw01
pu10 pu11 puw10 puw11
p00, p10
p01 , p11
Degenerate surfaces (contd.)
• If B matrix is as follows: (Diagonal points same)
p00 p10 pw00 pw01
p10 p11 pw10 pw11
pu00 pu01 puw00 puw01
pu10 pu11 puw10 puw11
p01 , p10
p11
p00
Degenerate surfaces (contd.)
• If B matrix is as follows: (Diagonal points same)
p00 p10 pw00 pw01
p10 p00 pw10 pw11
pu00 pu01 puw00 puw01
pu10 pu11 puw10 puw11
p01 p10
p00 p11
EOF
Surface Normal
• Considered an important property associated with a surface.
• Optical properties de[end on the surface normal.
• Machining direction (surface machining) is done in the surface normal
direction.
Sixteen Point form
• Steps
• Arrange the points systematically.
• Give each arranged point parametric value (for both parameters:
monotonically increasing,
• Now, similar to 4 point form, we are ready to get the geometric coefficient
matrix of the bicubic surface.
Sixteen Point form
L 28 ME15101 Computer Aided Design
Surface Design
A D Bhatt
Sixteen Point form
• Steps
• Arrange the points systematically.
• Give each arranged point parametric value (for both parameters:
monotonically increasing,
• Now, similar to 4 point form, we are ready to get the geometric coefficient
matrix of the bicubic surface.
STUDY TRUNCATION, SUBDIVISIO, and Extension from Mortenson: similar to curves
Composite Surfaces
p01 p11 q01
q11
p10
q00
p00
q10
Continuity
• For C1 continuity p01
p11 q01
p21 p31
w=0
p11 p41
Bezier Patch
p(u,w) = im+1=1 jn+1=1 pij Bi,m(u) Bj,n(w) , u, w ε [0,1]
• pij are the vertices of a characteristic polyhedron. (m+1)x(n+1)
rectangular array of points.
• Bim and Bin are Bernstein Polynomials.
For a bicubic Bezier patch,
p(u,w) =[(1-u)3 3u(1-u)2 3u2(1-u) u3] P (1-wi)3
3 wi(1- wi)2
Where P= p11 p12 p13 p14 3 wi 2(1- wi)
p21 p22 p23 p24 wi 3
p31 p32 p33 p34
p41 p42 p43 p44
Bezier Patch (Contd.)
• Only four control points lie on the patch.
p11, p21, p14 and p44
• A parametric curve on the bi-cubic patch along the path w=wi,
p1, p2 , p3 , p4 , are the control points of the curve.
• ‘P’ are the Matrix of control points Pij] p p
2 3
p1 p4
(1-wi)3
p1 = P
3 wi(1- wi)2
p2
3 wi 2(1- wi)
p3
wi 3
p4
The point p1 lies on the patch boundary p(0,wi)
The point p4 lies on the patch boundary p(1,wi)
Points p2 and p3 do not lie on the patch.
Bezier Patch (Contd.)
• Equation of a point along the the curve p(u,)
• p(u,wi)= [(1-u)3 3u(1-u)2 3u2(1-u) u3] p1
p2
p3
p4
If different values of u are put, the points on the surface along all the p(u,
wi) curve can be found.
Bezier Patch (Contd.)
• The P matrix may not be square.
p13
p23 w=1
p33 p43
u=0 p22
p32 p42
p53
p12
p52
p21 p31
u=1
w=0
p11 p41 p51
Bezier Patch (non-square control points)
A D Bhatt
Continuity across Bicubic Bezier Surfaces
Continuity across Bicubic Bezier Surfaces
B-Spline Surfaces
• Similar to Bezier surfaces, B-Spline Surfaces are defined
as:
p(u,w)=σ𝑚 σ 𝑛
𝑖=0 𝑗=0 𝒑𝑖𝑗 𝑁𝑖𝐾 (𝑢)𝑁𝑗𝐿 (w)
• Where 𝒑𝑖𝑗 are control points of the characteristic
polyhedron.
• 𝑁𝑖𝐾 (𝑢) 𝑎𝑛𝑑 𝑁𝑗𝐿 (w) are the basis functions along u and
w.
• K and L are the order of the B-Spline surface (degree
along u is K-1 and degree along w is L-1)
• The surface will always remain within the convex hull of
the defining polyhedron.
Variations
• Similar to B-Spline curves a designer may use different types of knot
vectors:
• Uniform / non-uniform knot vectors may be used to create various surfaces.
• Open or closed surfaces can be created.
• These surfaces are locally editable (local control is possible)
Rational surfaces
• Similar to parametric rational curves, parametric rational surfaces
provide the designer a wider spectrum of surfaces to design using
rational polynomials.
• These surfaces include some regular surfaces like spherical or
elliptical surfaces, that were not possible with non-rational
polynomial expressions.
Rational Bezier surfaces
σ𝑚 σ𝑛
𝑖=0 𝑗=0 ℎ𝑖𝑗 𝒑𝑖𝑗 𝐵𝑖𝑚 (𝑢)𝐵𝑗𝑛 (𝑤)
𝒑 𝑢, 𝑤 = σ𝑚 σ𝑛
𝑖=0 𝑗=0 ℎ𝑖𝑗 𝐵𝑖𝑚 (𝑢)𝐵𝑗𝑛 (𝑤)
p11
(u)
p01 a1(w)
p10
a0(w)
b0(u)
p00
Coon’s Patch
• Ruled surfaces can be obtained by combining any
two airs of opposite curves.
p1(u,w)=(1-w) b0(u)+wb1(u)
p2(u,w)=(1-u) a0(w)+ua1(w)
• A linear Coon’s Patch is a sum of the above two
surfaces and a correction surface p3(u,w) is
subtracted so that the boundary conditions are
met.
p(u,w)= p1(u,w)+ p2(u,w)- p3(u,w)
p11 p11
p01 b1(u) a1(w) p01
b1(u)
p10
a0(w)
p10
b0(u)
b0(u)
p00 p00
p11
p1(u,w)
a1(w)
p01 p01 p11
a0(w) p10
p10
p2(u,w)
p00 p3(u,v)
p00
Linear Coon’s Patch (Contd.)
• The boundary conditions are
p(u,0) =b0(u)=p1(u,0)+p2(u,0)-p3(u,0)
= b0(u) )+(1-u)a0(0)+ua1(0)- p3(u,0)
= b0(u) )+(1-u)p00+up10- p3(u,0)
So p3(u,0)=(1-u) p00 + up10
• p(u,1) =b1(u)=p1(u,1)+p2(u,1)-p3(u,1)
= b1(u)+(1-u) a0(1)+ua1(1)- p3(u,1)
Which gives
p3(u,1) = (1-u) a0(1)+ua1(1)
=(1-u) p01+up11
So p3(u,w) is a linear blend of two curves, p3(u,0) and p3(u,1) .
Coon’s Patch (Contd.)
• So p3(u,w) =(1-w) p3(u,0) + w p3(u,1)
=(1-w)[(1-u)p00+up10]
+w[(1-u)p01+up11]
=(1-w)(1-u) p00+u(1-w) p10
+(1-u)wp01+ uw p11
A D Bhatt
Solid Modelling
• So far we have learnt about modelling curves and surfaces.
• We have seen that curves and surfaces when represented parametric
way, help us to create, manipulate, locally edit, globally edit a cut a
surface.
• As I was telling you, all our representations are 3Dimensional in
cartesian space, whether it is a curve or a surface.
How to design a solid?
• Let us explore the same strategy that we have applied to design
parametric curves and surfaces.
• And we would call it
• PARAMETRIC SOLID
Parametric Solid
Simplified example of a cuboid.
Some of our works using Hyper-patch
Acknoledgements:
Padmashri Prof. S. G. Dhande, Ex Scientific Advisor, Prime Minister of India,
EX Professsor and Director IIT Kanpur.
Dr. Ravi Warkhedkar , COEP (Pune)
Dr. Udai Pise , COEP (Pune)
Dr. Siddharth Sharma, NIT Hamirpur
Dr. Ujjawal Gupta (NUS, Singapore)
Dr. Stuti Awasthi, Bhuwneswar.
Dr. Vishal Wagholekar (Water Tech, Singapore).
Archak Goel, R&D, PARC, Paulo Alto, (CA, USA).
Kritika Joshi (Candiadte PhD)
L 32 ME15101 Computer Aided Design
Solid Modeling
A D Bhatt
Solid Modelling
• So far we have learnt about modelling curves and surfaces.
• We have seen that curves and surfaces when represented parametric
way, help us to create, manipulate, locally edit, globally edit a cut a
surface.
• As I was telling you, all our representations are 3Dimensional in
cartesian space, whether it is a curve or a surface.
How to design a solid?
• Let us explore the same strategy that we have applied to design
parametric curves and surfaces.
• And we would call it
• PARAMETRIC SOLID
Parametric Solid
Simplified example of a cuboid.
Fundamentals of Solid
Modeling
A D Bhatt
Solid Modeling
• Solid Geometric Model is
• Unambiguous
• Informationally complete
representation of the shape of the object.
• Solid Modeling is an important aspect of Geometric Modeling that is
used to create and communicate shape information.
Representations
• Hyper-patch as discussed yesterday, are too complex to
represent ‘normal, solid objects.
• Today, we will discuss the representations are based on the
notion that a physical object divides the 3- dimensional
Euclidean Space into to regions:
• Interior
• Exterior.
• Interior and exterior is separated by the object boundary.
• Boundary may be a single closed surface or a set of open
surfaces connected ‘properly’.
Closure is when an operation (such as "adding")
on members of a set (such as "real numbers")
always makes a member of the same set.
Formal Properties of representation scheme
Domain:
The domain of a representation scheme characterizes the descriptive power of the
scheme: the domain is the set of entities representable in the scheme.
Domain:
The domain of a representation scheme characterizes the descriptive power of the
scheme: the domain is the set of entities representable in the scheme.
Validity:
The range of the representation scheme is a set of representations which are valid.
Representational validity is of obvious importance in ensuring the integrity of
databases, in that databases should not contain symbol structures which correspond
to nonsense objects. 4 Invoking a geometric algorithm on an invalid representation
may produce a system crash, obviously suspect results, or, in the worst case, results
which appear to be credible but are in fact meaningless.
Completeness or unambiguousness
Informationally complete (for the application/applications)
The importance of completeness is best understood in the context of applications,
where one must
• Uniqueness
L 33 ME15101 Computer Aided Design
Solid Modeling
A D Bhatt
• Uniqueness
Fundamentals of Solid Modelling
• Set theory:
Set Theory
• Primitives: Simple Shapes
• To create complex shapes, set-theory may be used.
• Set
• Well defined collection of objects called elements.
• Universal Set: All elements of all the sets under consideration: W
• Null Set: Ø
• Boolean Operations: , , c, -
Set Theory (Continued)
• Euclidian Space E is a set of points defining a Euclidian Space. E1, E2,
E3
• Open Set
• Ex: {x| a<x<b} is an open set because it does not contain its limit points.
• Closed Set:
• Ex: {x| a=<x=<b} is a close set because because it contains is limit points.
Set Theory (Continued)
• Closure of an Open Set
• Closure of an open set is the union of the set with the set of all its limit points.
=
bX iX
X
X = bX iX
Set Theory (Continued)
Degenerate Cases
a a
A
A B
b B b
A B (A B)
A-B
Dimensionality is reduced
Boundary is missing
Set Theory (Continued)
• Normal Set-theoretic operations are not always
closed.
Dangling Edge
B
A
A B
• May result in objects not of the same set.
• Dangling Edges / Dangling surfaces / Boundary Missing
Set Theory (Continued)
• Any closed set A can be written as
A = bA iA
( a closed object set is made of its boundary
and interior)
Uiversal Set W can be defined as
W= iS bS cS =E3 for all three
dimensional points
Set Theory (Continued)
• Geometric Closure
A set S is geometrically closed by its boundaries.
S=kS
Where ks=iS bS
Set Theory (Continued)
• Regularized Boolean Operations
S
• A regular set is geometrically
closed.
• This is required in Geometric iS
Modeling to ensure the validity of
objects they represent and thus
eliminates nonsense objects. k(iS)
a a i(A B)
A
Ø
b B b
A B B)
(A
A * B= ki(A B)= Ø
Regularized intersection *
Set Theory (Continued)
A B
-
A B
A B
-)
i(A B
ki(A B -)