SlideShare a Scribd company logo
1Challenge the future
Boundary Representations 1:
Fundamentals of NURBS surface representations
Ir. Pirouz Nourian
PhD candidate & Instructor, chair of Design Informatics, since 2010
MSc in Architecture 2009
BSc in Control Engineering 2005
MSc Geomatics, GEO1004, Directed by Dr. Sisi Zlatanova
2Challenge the future
[Geometric, Topologic] Spatial Data Models Representations
• Computer Graphics (mainly concerned with visualization)
• Computational Geometry (algorithmic geometry)
• AEC {CAD, CAM, BIM} (architectural engineering and construction)
• CAD=: Computer Aided Design
• CAM=: Computer Aided Manufacturing
• BIM=: Building Information Modeling
• GIS: how can we represent geometric objects in large scale properly and
consistently?
Different terminologies and jargons! Some common grounds
3Challenge the future
Categories of 3D Geometry Representations
• Volume Representation:
1. Tetrahedral Meshes
2. Voxel Models
• Boundary Representation:
[AKA Surface Representation]
1. Polygon Mesh Models (Simple Brep)
2. [complex] B-rep* Models (NURBS patches)
Interior included or only the closure ? A note on our terminology
* B-rep here refers to a specific class of boundary representations composed of advanced faces (as implemented in Rhino):
• ISO 10303-514 Advanced boundary representation, a solid defining a volume with possible voids that is composed by
advanced faces
• ISO 10303-511 Topologically bounded surface, definition of an advanced face, that is a bounded surface where the surface is
of type elementary (plane, cylindrical, conical, spherical or toroidal), or a swept surface, or b spline surface. The boundaries
are defined by lines, conics, polylines, surface curves, or b spline curves
4Challenge the future
Boundary Representation
Representing high dimensional objects with lower dimensional primitives
1. Polygon Mesh ≡ Simple B-rep=composed of straight/flat elements
We will discuss them later in depth
1. NURBS patches ≡[complex] B-rep*=composed of curved elements
5Challenge the future
Why NURBS?
• Known and used in AEC {CAD, BIM}
• In GIS ?
advantages and disadvantages for GIS?
Bilbao Guggenheim Museum
Bus stop near Sebastiaansbrug Delft
6Challenge the future
NURBS Representation
Non Uniform Rational Basis Splines (NURBS) are used
for modeling free-form geometries accurately
Image courtesy of http://www.boatdesign.netImage courtesy of Wikimedia
• An elegant mathematical description of a physical drafting aid as a (set of)
parametric equation(s).
7Challenge the future
Splines in Computer Graphics
All types of curves can be modeled as splines
•
8Challenge the future
NURBS Representation
Non Uniform Rational Basis Splines (NURBS) are used
for modeling free-form geometries accurately
• offer one common mathematical form for both, standard analytical shapes (e.g. conics) and
free form shapes;
• provide the flexibility to design a large variety of shapes;
• can be evaluated reasonably fast by numerically stable and accurate algorithms;
• are invariant under affine as well as perspective transformations;
• are generalizations of non-rational B-splines and non-rational and rational Bezier curves and
surfaces.
From:
http://web.cs.wpi.edu/~matt/courses/cs563/talks/nurbs.html
9Challenge the future
Parametric Curves in General
How do numeric weights correspond to physical
weights?
𝑃 𝑡 =
𝑥(𝑡)
𝑦(𝑡)
𝑧(𝑡)
Example 1: 𝑌 = 𝑋 + 1
Example 1: 𝑋2 + 𝑌2 = 1
→ 𝑃 𝑡 =
𝑡
𝑡 + 1
0
→ 𝑃 𝑡 =
𝐶𝑜𝑠(𝑡)
𝑆𝑖𝑛(𝑡)
0
𝐶𝑜𝑠2(𝑡) + 𝑆𝑖𝑛2(𝑡) = 1
10Challenge the future
NURBS equations
All from a summary by Markus Altmann:
http://web.cs.wpi.edu/~matt/courses/cs563/talks/nurbs.html
𝐶 𝑢 =
𝑊𝑖.𝑛
𝑖=0 𝑃𝑖. 𝑁𝑖,𝑘(𝑢)
𝑊𝑖.𝑛
𝑖=0 𝑁𝑖,𝑘(𝑢)
𝑡ℎ𝑒 𝑐𝑢𝑟𝑣𝑒 𝑒𝑣𝑎𝑙𝑢𝑎𝑡𝑒𝑑 𝑎𝑡 𝑝𝑎𝑟𝑎𝑚𝑒𝑡𝑒𝑟 𝑢
where
𝑊𝑖 : weights
𝑃𝑖 : control points (vector)
𝑁𝑖,𝑘 : normalized B-spline basis functions of degree k
These B-splines are defined recursively as:
𝑁𝑖,𝑘 𝑢 =
𝑢 − 𝑡𝑖
𝑡𝑖+𝑘 − 𝑡𝑖
× 𝑁𝑖,𝑘−1 𝑢 +
𝑡𝑖+𝑘+1 − 𝑢
𝑡𝑖+𝑘+1 − 𝑡𝑖+1
× 𝑁𝑖+1,𝑘−1 𝑢
and
𝑁𝑖,0 𝑢 =
1, 𝑖𝑓 𝑡𝑖 ≤ 𝑢 < 𝑡𝑖+1
0, 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
Where 𝑡𝑖 are the knots forming a knot vector
𝑈 = {𝑡0, 𝑡1, … , 𝑡 𝑚}
Note: 𝑘 enumerates 0 to degree, 𝑚 = 𝑛 + 𝑘 + 1
11Challenge the future
NURBS interpolation
All contenet from Raja Issa
[Essential Mathematics for Computational Design]
12Challenge the future
A weighted NURBS curve
How do numeric weights correspond to physical
weights?
13Challenge the future
• 1D: Curves (t parameter)
• 2D: Surfaces (u & v parameters)
• 3D: B-Reps (each face is a surface)
NURBS Objects
Non Uniform Rational Basis Splines are used for
accurately modeling free-form geometries
14Challenge the future
Parametric Space
Images courtesy of David Rutten, from Rhinoscript 101
15Challenge the future
Parametric Locations:
1D Objects (Curves): u parameter (AKA as t parameter)
• Point at that address (𝐶(𝑢))
• Tangent vector
• Derivatives (𝐶′(𝑢), 𝐶′′(𝑢))
• Curvature
2D Objects (Surfaces): u,v parameters
• Point at that address (𝑆(𝑢, 𝑣))
• Normal vector (𝑁(𝑢, 𝑣))
• Curvature
16Challenge the future
1D Curvature: Vector or Scalar?
•
17Challenge the future
Continuity
• G0 (Position continuous)
• G1 (Tangent continuous)
• G2 ( Curvature Continuous)
Images courtesy of Raja Issa, Essential Mathematics for Computational Design
18Challenge the future
(1D Curvature Analysis)
• Discretization
Segments
• Measurement
at the middle of each
segment
• Attribution
to each segment
19Challenge the future
Surface Curvature
•
Images courtesy of Raja Issa, Essential Mathematics for Computational Design
20Challenge the future
Surface Continuity: Zebra Analysis
• Open question: How can we measure curvature on meshes?
Images courtesy of Raja Issa, Essential Mathematics for Computational Design
21Challenge the future
(2D Curvature Analysis: NURBS surface)
• Discretization
Sub-surfaces
• Measurement
At UV points
• Attribution
To sub-surfaces
22Challenge the future
Questions?p.nourian@tudelft.nl
We will now see a NURBS data model…

More Related Content

PPT
Nurbs (1)
PPTX
Solid modeling
PPT
Surface models
PDF
Cad ala brep, csg and sweep representation gtu
PPTX
Part 4-Types and mathematical representations of Curves .pptx
PPTX
Bezier Curve
PDF
Surfaces
PPTX
SURFACE MODELLING .pptx
Nurbs (1)
Solid modeling
Surface models
Cad ala brep, csg and sweep representation gtu
Part 4-Types and mathematical representations of Curves .pptx
Bezier Curve
Surfaces
SURFACE MODELLING .pptx

What's hot (20)

PDF
B spline surfeces
PDF
Eg unit ii projection of points
PPTX
Solid modeling-Sweep Representation and B-representation
PPTX
Cad lecture-3
PPTX
CAD / CAM NURBS
PPTX
Solidworks
PPT
leliso hobicho
PPT
Wireframe models
PPT
Projection of solids
PDF
Polygon Mesh Representation
PDF
ME6501 Unit 2 geometric modeling
PDF
Practice problemsforengineeringdrawingi 14-18
PPTX
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
PPTX
Visual realism -HIDDEN REMOVAL METHODS
PDF
57892883 geometric-modeling
PPTX
Introduction to Fusion 360
PPTX
Unit 3-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
PDF
Engineering graphics introduction converted
B spline surfeces
Eg unit ii projection of points
Solid modeling-Sweep Representation and B-representation
Cad lecture-3
CAD / CAM NURBS
Solidworks
leliso hobicho
Wireframe models
Projection of solids
Polygon Mesh Representation
ME6501 Unit 2 geometric modeling
Practice problemsforengineeringdrawingi 14-18
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
Visual realism -HIDDEN REMOVAL METHODS
57892883 geometric-modeling
Introduction to Fusion 360
Unit 3-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
Engineering graphics introduction converted
Ad

Viewers also liked (20)

PDF
Preliminaries of Analytic Geometry and Linear Algebra 3D modelling
PDF
Intro computational design_mega2016_1_with_recommendedplugins
PDF
Point Cloud Segmentation for 3D Reconstruction
PDF
Tudelft stramien 16_9_on_optimization
PDF
Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...
PPTX
Computer Graphics
PPTX
3D Graphics : Computer Graphics Fundamentals
PDF
Curves and surfaces
DOC
Dissertation_Full
PPTX
Iccv2009 recognition and learning object categories p1 c03 - 3d object models
PPT
1422798749.2779lecture 5
PPT
07object3d
PDF
CG OpenGL 3D object representations-course 8
PPT
object 3d(1)
DOCX
Bbc coordinates
PDF
5 geometric-modeling-ppt-university-of-victoria
PPT
BEST 3D COMPUTER GRAPHICS TOOLS
PPTX
Bazier curve Algorithom for Computer Gramphics prsentation
PPT
PDF
OpenGL 4.4 Reference Card
Preliminaries of Analytic Geometry and Linear Algebra 3D modelling
Intro computational design_mega2016_1_with_recommendedplugins
Point Cloud Segmentation for 3D Reconstruction
Tudelft stramien 16_9_on_optimization
Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...
Computer Graphics
3D Graphics : Computer Graphics Fundamentals
Curves and surfaces
Dissertation_Full
Iccv2009 recognition and learning object categories p1 c03 - 3d object models
1422798749.2779lecture 5
07object3d
CG OpenGL 3D object representations-course 8
object 3d(1)
Bbc coordinates
5 geometric-modeling-ppt-university-of-victoria
BEST 3D COMPUTER GRAPHICS TOOLS
Bazier curve Algorithom for Computer Gramphics prsentation
OpenGL 4.4 Reference Card
Ad

Similar to On NURBS Geometry Representation in 3D modelling (20)

PPTX
Datt 2500 week 12
PDF
CAD Topology and Geometry Basics
PPTX
PPTX
CAD - UNIT 2 (Geometric Modelling)
PPTX
IPE-409 CADCAM Geometric Modelling May 2018 (1).pptx
PDF
57892883 geometric-modeling
PDF
Geometric model & curve
PDF
5_Geometric_Modeling.pdf
PPT
geometric-modelingEast Coast of Kamchatka, 8.7M · 30 Jul 2025 08:52:50, Publi...
PPTX
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
PPTX
Mesh final pzn_geo1004_2015_f3_2017
PPTX
Geomentric Modelling
PDF
187186134 5-geometric-modeling
PDF
187186134 5-geometric-modeling
PDF
5 geometric modeling
PDF
Ar1 twf030 lecture2.1: Geometry and Topology in Computational Design
PDF
lecture-6---wireframe-modeling.pdf_types of it
PPT
4635377.ppt
PDF
04 - Geometric Modelling para el diseño ...
PPSX
CPAD UNIT 2.ppsx
Datt 2500 week 12
CAD Topology and Geometry Basics
CAD - UNIT 2 (Geometric Modelling)
IPE-409 CADCAM Geometric Modelling May 2018 (1).pptx
57892883 geometric-modeling
Geometric model & curve
5_Geometric_Modeling.pdf
geometric-modelingEast Coast of Kamchatka, 8.7M · 30 Jul 2025 08:52:50, Publi...
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
Mesh final pzn_geo1004_2015_f3_2017
Geomentric Modelling
187186134 5-geometric-modeling
187186134 5-geometric-modeling
5 geometric modeling
Ar1 twf030 lecture2.1: Geometry and Topology in Computational Design
lecture-6---wireframe-modeling.pdf_types of it
4635377.ppt
04 - Geometric Modelling para el diseño ...
CPAD UNIT 2.ppsx

More from Pirouz Nourian (6)

PDF
Geo1004 lecture 1_topology&amp;topological_datamodels_final
PDF
Ar1 twf030 lecture3.1: Design Optimization
PDF
Ar1 twf030 lecture2.2
PDF
Ar1 twf030 lecture1.1
PDF
Ar1 twf030 lecture1.2
PDF
Syntactic space syntax4generativedesign
Geo1004 lecture 1_topology&amp;topological_datamodels_final
Ar1 twf030 lecture3.1: Design Optimization
Ar1 twf030 lecture2.2
Ar1 twf030 lecture1.1
Ar1 twf030 lecture1.2
Syntactic space syntax4generativedesign

Recently uploaded (20)

PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPT
Project quality management in manufacturing
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PPTX
web development for engineering and engineering
PPTX
Welding lecture in detail for understanding
PPTX
UNIT 4 Total Quality Management .pptx
PPTX
Sustainable Sites - Green Building Construction
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PPT
Mechanical Engineering MATERIALS Selection
PDF
composite construction of structures.pdf
PDF
Well-logging-methods_new................
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
DOCX
573137875-Attendance-Management-System-original
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
Project quality management in manufacturing
Automation-in-Manufacturing-Chapter-Introduction.pdf
web development for engineering and engineering
Welding lecture in detail for understanding
UNIT 4 Total Quality Management .pptx
Sustainable Sites - Green Building Construction
Operating System & Kernel Study Guide-1 - converted.pdf
Mechanical Engineering MATERIALS Selection
composite construction of structures.pdf
Well-logging-methods_new................
Embodied AI: Ushering in the Next Era of Intelligent Systems
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
OOP with Java - Java Introduction (Basics)
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
573137875-Attendance-Management-System-original
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx

On NURBS Geometry Representation in 3D modelling

  • 1. 1Challenge the future Boundary Representations 1: Fundamentals of NURBS surface representations Ir. Pirouz Nourian PhD candidate & Instructor, chair of Design Informatics, since 2010 MSc in Architecture 2009 BSc in Control Engineering 2005 MSc Geomatics, GEO1004, Directed by Dr. Sisi Zlatanova
  • 2. 2Challenge the future [Geometric, Topologic] Spatial Data Models Representations • Computer Graphics (mainly concerned with visualization) • Computational Geometry (algorithmic geometry) • AEC {CAD, CAM, BIM} (architectural engineering and construction) • CAD=: Computer Aided Design • CAM=: Computer Aided Manufacturing • BIM=: Building Information Modeling • GIS: how can we represent geometric objects in large scale properly and consistently? Different terminologies and jargons! Some common grounds
  • 3. 3Challenge the future Categories of 3D Geometry Representations • Volume Representation: 1. Tetrahedral Meshes 2. Voxel Models • Boundary Representation: [AKA Surface Representation] 1. Polygon Mesh Models (Simple Brep) 2. [complex] B-rep* Models (NURBS patches) Interior included or only the closure ? A note on our terminology * B-rep here refers to a specific class of boundary representations composed of advanced faces (as implemented in Rhino): • ISO 10303-514 Advanced boundary representation, a solid defining a volume with possible voids that is composed by advanced faces • ISO 10303-511 Topologically bounded surface, definition of an advanced face, that is a bounded surface where the surface is of type elementary (plane, cylindrical, conical, spherical or toroidal), or a swept surface, or b spline surface. The boundaries are defined by lines, conics, polylines, surface curves, or b spline curves
  • 4. 4Challenge the future Boundary Representation Representing high dimensional objects with lower dimensional primitives 1. Polygon Mesh ≡ Simple B-rep=composed of straight/flat elements We will discuss them later in depth 1. NURBS patches ≡[complex] B-rep*=composed of curved elements
  • 5. 5Challenge the future Why NURBS? • Known and used in AEC {CAD, BIM} • In GIS ? advantages and disadvantages for GIS? Bilbao Guggenheim Museum Bus stop near Sebastiaansbrug Delft
  • 6. 6Challenge the future NURBS Representation Non Uniform Rational Basis Splines (NURBS) are used for modeling free-form geometries accurately Image courtesy of http://www.boatdesign.netImage courtesy of Wikimedia • An elegant mathematical description of a physical drafting aid as a (set of) parametric equation(s).
  • 7. 7Challenge the future Splines in Computer Graphics All types of curves can be modeled as splines •
  • 8. 8Challenge the future NURBS Representation Non Uniform Rational Basis Splines (NURBS) are used for modeling free-form geometries accurately • offer one common mathematical form for both, standard analytical shapes (e.g. conics) and free form shapes; • provide the flexibility to design a large variety of shapes; • can be evaluated reasonably fast by numerically stable and accurate algorithms; • are invariant under affine as well as perspective transformations; • are generalizations of non-rational B-splines and non-rational and rational Bezier curves and surfaces. From: http://web.cs.wpi.edu/~matt/courses/cs563/talks/nurbs.html
  • 9. 9Challenge the future Parametric Curves in General How do numeric weights correspond to physical weights? 𝑃 𝑡 = 𝑥(𝑡) 𝑦(𝑡) 𝑧(𝑡) Example 1: 𝑌 = 𝑋 + 1 Example 1: 𝑋2 + 𝑌2 = 1 → 𝑃 𝑡 = 𝑡 𝑡 + 1 0 → 𝑃 𝑡 = 𝐶𝑜𝑠(𝑡) 𝑆𝑖𝑛(𝑡) 0 𝐶𝑜𝑠2(𝑡) + 𝑆𝑖𝑛2(𝑡) = 1
  • 10. 10Challenge the future NURBS equations All from a summary by Markus Altmann: http://web.cs.wpi.edu/~matt/courses/cs563/talks/nurbs.html 𝐶 𝑢 = 𝑊𝑖.𝑛 𝑖=0 𝑃𝑖. 𝑁𝑖,𝑘(𝑢) 𝑊𝑖.𝑛 𝑖=0 𝑁𝑖,𝑘(𝑢) 𝑡ℎ𝑒 𝑐𝑢𝑟𝑣𝑒 𝑒𝑣𝑎𝑙𝑢𝑎𝑡𝑒𝑑 𝑎𝑡 𝑝𝑎𝑟𝑎𝑚𝑒𝑡𝑒𝑟 𝑢 where 𝑊𝑖 : weights 𝑃𝑖 : control points (vector) 𝑁𝑖,𝑘 : normalized B-spline basis functions of degree k These B-splines are defined recursively as: 𝑁𝑖,𝑘 𝑢 = 𝑢 − 𝑡𝑖 𝑡𝑖+𝑘 − 𝑡𝑖 × 𝑁𝑖,𝑘−1 𝑢 + 𝑡𝑖+𝑘+1 − 𝑢 𝑡𝑖+𝑘+1 − 𝑡𝑖+1 × 𝑁𝑖+1,𝑘−1 𝑢 and 𝑁𝑖,0 𝑢 = 1, 𝑖𝑓 𝑡𝑖 ≤ 𝑢 < 𝑡𝑖+1 0, 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 Where 𝑡𝑖 are the knots forming a knot vector 𝑈 = {𝑡0, 𝑡1, … , 𝑡 𝑚} Note: 𝑘 enumerates 0 to degree, 𝑚 = 𝑛 + 𝑘 + 1
  • 11. 11Challenge the future NURBS interpolation All contenet from Raja Issa [Essential Mathematics for Computational Design]
  • 12. 12Challenge the future A weighted NURBS curve How do numeric weights correspond to physical weights?
  • 13. 13Challenge the future • 1D: Curves (t parameter) • 2D: Surfaces (u & v parameters) • 3D: B-Reps (each face is a surface) NURBS Objects Non Uniform Rational Basis Splines are used for accurately modeling free-form geometries
  • 14. 14Challenge the future Parametric Space Images courtesy of David Rutten, from Rhinoscript 101
  • 15. 15Challenge the future Parametric Locations: 1D Objects (Curves): u parameter (AKA as t parameter) • Point at that address (𝐶(𝑢)) • Tangent vector • Derivatives (𝐶′(𝑢), 𝐶′′(𝑢)) • Curvature 2D Objects (Surfaces): u,v parameters • Point at that address (𝑆(𝑢, 𝑣)) • Normal vector (𝑁(𝑢, 𝑣)) • Curvature
  • 16. 16Challenge the future 1D Curvature: Vector or Scalar? •
  • 17. 17Challenge the future Continuity • G0 (Position continuous) • G1 (Tangent continuous) • G2 ( Curvature Continuous) Images courtesy of Raja Issa, Essential Mathematics for Computational Design
  • 18. 18Challenge the future (1D Curvature Analysis) • Discretization Segments • Measurement at the middle of each segment • Attribution to each segment
  • 19. 19Challenge the future Surface Curvature • Images courtesy of Raja Issa, Essential Mathematics for Computational Design
  • 20. 20Challenge the future Surface Continuity: Zebra Analysis • Open question: How can we measure curvature on meshes? Images courtesy of Raja Issa, Essential Mathematics for Computational Design
  • 21. 21Challenge the future (2D Curvature Analysis: NURBS surface) • Discretization Sub-surfaces • Measurement At UV points • Attribution To sub-surfaces
  • 22. 22Challenge the future Questions?p.nourian@tudelft.nl We will now see a NURBS data model…