SlideShare a Scribd company logo
GRAPHICAL REPRESENTATION
Michael Heron
INTRODUCTION
 In the last lecture we talked about the processes we
go through to build a 3D object.
 We focused primarily on the polymesh.
 In this lecture we are going to look at alternate
representations.
 Bezier curves
 Bezier Patches
 NURBS surfaces
 Constructive Solid Geometry
BEZIER CURVES
 A Bezier Curve (or Bezier spline) is a curve defined
through the use of four vertices.
 A start and end vertice
 Two supplementary vertices that define the curve.
 Known as the control points.
P1
P2
P3
P4
BEZIER CURVES
 By manipulating the control points, we can change
the nature of the curve.
 Governed by a mathematical formula.
P1
P2
P3
P4
BEZIER CURVES
 Bezier curves are used for:
 Modelling smooth curves
 In a way that cannot be done with a polymesh
 Curves appear smooth at all scales
 Font representation
 Vector/Outline fonts
 Animation
 Used to define smooth, realistic paths for movement.
BEZIER PATCHES
 Related to the idea of a Bezier curve is a Bezier
patch.
 Curves are 2D, patches are 3D
 Bezier patches are shaped nets, the appearance of
which are determined by control points.
 Control points act like gravity spots on underlying
shape.
 The define the topology of the shape through mathematical
modelling of attraction
BEZIER PATCHES
http://mathforum.org/sketchpad/mis
html
BEZIER PATCHES
 Bezier patches offer several advantages
 Integrity of representation
 Continuity across boundaries
 Awareness of neighbours
 Fluid representation
 Exact representation
 Can measure volumes and surfaces
 Economical
 A single patch can represent many polygonal equivalents.
BEZIER PATCHES
 However, they also have drawbacks.
 Simple patch has 16 control points.
 Rendering with a Bezier patch is expensive.
 Around 10 times slower than equivalent polymesh
 But this does not take into account the difference in time
requirements to model a polymesh correctly.
 Large number of perspectives required to render
properly.
NURBS
 Non-Uniform Rational B-Splines
 Yikes!
 Extension of the idea of a Bezier curve
 Defined by control points.
 Each control point has a weight
 Defines how much that control point influences the
curve.
 NURBS have knots
 Vectors that describe how the resulting curve is
influenced by the control points.
 NURBS have an order
 How closely the curve follows the lines between control
points.
CONSTRUCTIVE SOLID GEOMETRY
 Complex shapes modeled by using simple shapes.
 To these shapes we add or subtract other simple
shapes.
 Combination of shapes using boolean operators
and set theory allows for new and interesting
complex topographies.
 Unions, Intersections, etc
CSG EXAMPLES
Images here show boolean operations – union, intersection, and
difference.
http://www.student.cs.uwaterloo.ca/~cs488/Contrib/f02/a5/djbigham/
INTERSECTIONS
 When two primitives intersect, the new object is the
volume shared by both shapes
DIFFERENCE
 Difference is all the bits that don’t intersect.
UNION
 A union is both shapes together.
 A merge, in other words.
 The new object can be treated as a single new
shape
 And be transformed as a holistic unit.
VOXEL REPRESENTATION
 Sometimes need to represent 3D space as voxels.
 3D Pixels
 3D space broken up into three dimensional arrays
of voxels.
 Each voxel labeled according to its object
occupancy.
VOXEL REPRESENTATION
 Voxel arrays are:
 Costly in terms of memory
 Entire object space must be separated down into cubic
elements
 Labelled according to object occupancy
 Space subdivision
 Frequently used in:
 Game representations of terrain
 Medical imagery
 Ray tracing
SPACE SUBDIVISION
 Process of space subdivision common to 2D and
3D graphics.
 Easier to understand in 3D.
 Start with a 1x1 square representing entire image.
 Then recursively subdivide squares.
 Stop when each pixel inside a subdivided square
has a single colour.
SPACE SUBDIVISION
SPACE SUBDIVISION
VOLUME SUBDIVISON
 Works the same way in 3D as in 2D
 We start with cubes
 Recursive subdivide cubes
 From our cube, subdivide into eight smaller cubes.
 Can represent space/volume subdivision as a tree
data structure.
 Easy to navigate and store
 Offers greater efficiency of representation.
 Advancement over simple voxel array.
SUMMARY
 Various ways to represent 3D graphics beyond
polymeshes.
 Bezier Curves
 Bezier Patches
 NURBS
 CSG
 Space Subdivision
 Each technique has its real life applications.
 The nature of the intended destination will dictate the
appropriate tool.

More Related Content

What's hot

Unit 3 visual realism
Unit 3 visual realismUnit 3 visual realism
Unit 3 visual realism
Javith Saleem
 
visual realism in geometric modeling
visual realism in geometric modelingvisual realism in geometric modeling
visual realism in geometric modeling
sabiha khathun
 
Shading for Computer Topics in Burapha University
Shading for Computer Topics in Burapha UniversityShading for Computer Topics in Burapha University
Shading for Computer Topics in Burapha University
Mao Sararith
 
object 3d(1)
object 3d(1)object 3d(1)
object 3d(1)
HiteshJain007
 
mathpsy2012 poster_Shweta_3(1)
mathpsy2012 poster_Shweta_3(1)mathpsy2012 poster_Shweta_3(1)
mathpsy2012 poster_Shweta_3(1)Shweta Gupte
 
1017 notes on maps and mapping
1017 notes on maps and mapping1017 notes on maps and mapping
1017 notes on maps and mappingJulian Swindell
 
Perspective photography
Perspective photographyPerspective photography
Perspective photography
Le Général Pro
 
Z buffer
Z bufferZ buffer
Z buffer
AmitBiswas99
 
Lect8 viewing in3d&transformation
Lect8 viewing in3d&transformationLect8 viewing in3d&transformation
Lect8 viewing in3d&transformation
BCET
 
How to draw with perspective in ps
How to draw with perspective in psHow to draw with perspective in ps
How to draw with perspective in psAnh Đức Nguyễn
 
OpenGL ES for iOS (3D Graphics)
OpenGL ES for iOS (3D Graphics)OpenGL ES for iOS (3D Graphics)
OpenGL ES for iOS (3D Graphics)inquinity
 
3-Point Perspective
3-Point Perspective 3-Point Perspective
3-Point Perspective sfast08
 
COMPUTER GRAPHICS-"Projection"
COMPUTER GRAPHICS-"Projection"COMPUTER GRAPHICS-"Projection"
COMPUTER GRAPHICS-"Projection"
Ankit Surti
 
Drawing perspective
Drawing perspectiveDrawing perspective
Drawing perspective
Self Development Courses Online
 
3 d projections
3 d projections3 d projections
3 d projectionsMohd Arif
 
Precision enhancement of 3 d surfaces from compressed multiview depth maps
Precision enhancement of 3 d surfaces from compressed multiview depth mapsPrecision enhancement of 3 d surfaces from compressed multiview depth maps
Precision enhancement of 3 d surfaces from compressed multiview depth maps
I3E Technologies
 

What's hot (19)

3 d
3 d3 d
3 d
 
Unit 3 visual realism
Unit 3 visual realismUnit 3 visual realism
Unit 3 visual realism
 
visual realism in geometric modeling
visual realism in geometric modelingvisual realism in geometric modeling
visual realism in geometric modeling
 
Shading for Computer Topics in Burapha University
Shading for Computer Topics in Burapha UniversityShading for Computer Topics in Burapha University
Shading for Computer Topics in Burapha University
 
object 3d(1)
object 3d(1)object 3d(1)
object 3d(1)
 
mathpsy2012 poster_Shweta_3(1)
mathpsy2012 poster_Shweta_3(1)mathpsy2012 poster_Shweta_3(1)
mathpsy2012 poster_Shweta_3(1)
 
1017 notes on maps and mapping
1017 notes on maps and mapping1017 notes on maps and mapping
1017 notes on maps and mapping
 
Perspective photography
Perspective photographyPerspective photography
Perspective photography
 
Z buffer
Z bufferZ buffer
Z buffer
 
Lect8 viewing in3d&transformation
Lect8 viewing in3d&transformationLect8 viewing in3d&transformation
Lect8 viewing in3d&transformation
 
How to draw with perspective in ps
How to draw with perspective in psHow to draw with perspective in ps
How to draw with perspective in ps
 
OpenGL ES for iOS (3D Graphics)
OpenGL ES for iOS (3D Graphics)OpenGL ES for iOS (3D Graphics)
OpenGL ES for iOS (3D Graphics)
 
3-Point Perspective
3-Point Perspective 3-Point Perspective
3-Point Perspective
 
Perespective
PerespectivePerespective
Perespective
 
COMPUTER GRAPHICS-"Projection"
COMPUTER GRAPHICS-"Projection"COMPUTER GRAPHICS-"Projection"
COMPUTER GRAPHICS-"Projection"
 
Drawing perspective
Drawing perspectiveDrawing perspective
Drawing perspective
 
3 d projections
3 d projections3 d projections
3 d projections
 
Precision enhancement of 3 d surfaces from compressed multiview depth maps
Precision enhancement of 3 d surfaces from compressed multiview depth mapsPrecision enhancement of 3 d surfaces from compressed multiview depth maps
Precision enhancement of 3 d surfaces from compressed multiview depth maps
 
Twopoint
TwopointTwopoint
Twopoint
 

Similar to GRPHICS03 - Graphical Representation

Curves and surfaces
Curves and surfacesCurves and surfaces
Curves and surfaces
Mohammed Mahmoud
 
Geomentric Modelling
Geomentric Modelling Geomentric Modelling
Geomentric Modelling
Muthukumar V
 
ResearchPaper
ResearchPaperResearchPaper
ResearchPaperIan Bloom
 
Week 3 Polygonal Modelling
Week 3   Polygonal ModellingWeek 3   Polygonal Modelling
Week 3 Polygonal Modelling
ScottRoberts37
 
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND    MANUFACTURINGUnit 2-ME8691 & COMPUTER AIDED DESIGN AND    MANUFACTURING
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
Mohanumar S
 
Fundamentals of Multimedia - Vector Graphics.pdf
Fundamentals of Multimedia - Vector Graphics.pdfFundamentals of Multimedia - Vector Graphics.pdf
Fundamentals of Multimedia - Vector Graphics.pdf
FatihahIrra
 
Using this example code in Xcode, please help with this project wher.pdf
Using this example code in Xcode, please help with this project wher.pdfUsing this example code in Xcode, please help with this project wher.pdf
Using this example code in Xcode, please help with this project wher.pdf
amirthagiftsmadurai
 
CAD / CAM NURBS
CAD / CAM NURBSCAD / CAM NURBS
CAD / CAM NURBS
Sharath Kumar
 
06 Vector Visualization
06 Vector Visualization06 Vector Visualization
06 Vector Visualization
Valerii Klymchuk
 
GRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D GraphicsGRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D Graphics
Michael Heron
 
CAD
CADCAD
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
ravis205084
 
Geometric modeling
Geometric modelingGeometric modeling
Geometric modeling
SenthilnathanV4
 
Implicit Interpolation Analytical Curves
Implicit Interpolation Analytical CurvesImplicit Interpolation Analytical Curves
Implicit Interpolation Analytical Curves
Sharath Kumar
 
Art of Thread Design
Art of Thread DesignArt of Thread Design
Art of Thread DesignRic Barline
 
AUTOCAD
AUTOCADAUTOCAD
Class 8 presentation
Class 8 presentationClass 8 presentation
Class 8 presentationlaura_gerold
 
Surface design and visible surfaces
Surface design and visible surfacesSurface design and visible surfaces
Surface design and visible surfaces
Arti Parab Academics
 
AutoCadd
AutoCaddAutoCadd
AutoCadd
pranXiamae
 
Notes04.pdf
Notes04.pdfNotes04.pdf
Notes04.pdf
MukeshKumar605825
 

Similar to GRPHICS03 - Graphical Representation (20)

Curves and surfaces
Curves and surfacesCurves and surfaces
Curves and surfaces
 
Geomentric Modelling
Geomentric Modelling Geomentric Modelling
Geomentric Modelling
 
ResearchPaper
ResearchPaperResearchPaper
ResearchPaper
 
Week 3 Polygonal Modelling
Week 3   Polygonal ModellingWeek 3   Polygonal Modelling
Week 3 Polygonal Modelling
 
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND    MANUFACTURINGUnit 2-ME8691 & COMPUTER AIDED DESIGN AND    MANUFACTURING
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
 
Fundamentals of Multimedia - Vector Graphics.pdf
Fundamentals of Multimedia - Vector Graphics.pdfFundamentals of Multimedia - Vector Graphics.pdf
Fundamentals of Multimedia - Vector Graphics.pdf
 
Using this example code in Xcode, please help with this project wher.pdf
Using this example code in Xcode, please help with this project wher.pdfUsing this example code in Xcode, please help with this project wher.pdf
Using this example code in Xcode, please help with this project wher.pdf
 
CAD / CAM NURBS
CAD / CAM NURBSCAD / CAM NURBS
CAD / CAM NURBS
 
06 Vector Visualization
06 Vector Visualization06 Vector Visualization
06 Vector Visualization
 
GRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D GraphicsGRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D Graphics
 
CAD
CADCAD
CAD
 
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
 
Geometric modeling
Geometric modelingGeometric modeling
Geometric modeling
 
Implicit Interpolation Analytical Curves
Implicit Interpolation Analytical CurvesImplicit Interpolation Analytical Curves
Implicit Interpolation Analytical Curves
 
Art of Thread Design
Art of Thread DesignArt of Thread Design
Art of Thread Design
 
AUTOCAD
AUTOCADAUTOCAD
AUTOCAD
 
Class 8 presentation
Class 8 presentationClass 8 presentation
Class 8 presentation
 
Surface design and visible surfaces
Surface design and visible surfacesSurface design and visible surfaces
Surface design and visible surfaces
 
AutoCadd
AutoCaddAutoCadd
AutoCadd
 
Notes04.pdf
Notes04.pdfNotes04.pdf
Notes04.pdf
 

More from Michael Heron

Meeple centred design - Board Game Accessibility
Meeple centred design - Board Game AccessibilityMeeple centred design - Board Game Accessibility
Meeple centred design - Board Game Accessibility
Michael Heron
 
Musings on misconduct
Musings on misconductMusings on misconduct
Musings on misconduct
Michael Heron
 
Accessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS FrameworkAccessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS Framework
Michael Heron
 
ACCESS: A Technical Framework for Adaptive Accessibility Support
ACCESS:  A Technical Framework for Adaptive Accessibility SupportACCESS:  A Technical Framework for Adaptive Accessibility Support
ACCESS: A Technical Framework for Adaptive Accessibility Support
Michael Heron
 
Authorship and Autership
Authorship and AutershipAuthorship and Autership
Authorship and Autership
Michael Heron
 
Text parser based interaction
Text parser based interactionText parser based interaction
Text parser based interaction
Michael Heron
 
SAD04 - Inheritance
SAD04 - InheritanceSAD04 - Inheritance
SAD04 - Inheritance
Michael Heron
 
GRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and RadiosityGRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and Radiosity
Michael Heron
 
GRPHICS07 - Textures
GRPHICS07 - TexturesGRPHICS07 - Textures
GRPHICS07 - Textures
Michael Heron
 
GRPHICS06 - Shading
GRPHICS06 - ShadingGRPHICS06 - Shading
GRPHICS06 - Shading
Michael Heron
 
GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)
Michael Heron
 
GRPHICS04 - Rendering (1)
GRPHICS04 - Rendering (1)GRPHICS04 - Rendering (1)
GRPHICS04 - Rendering (1)
Michael Heron
 
GRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D GraphicsGRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D Graphics
Michael Heron
 
GRPHICS09 - Art Appreciation
GRPHICS09 - Art AppreciationGRPHICS09 - Art Appreciation
GRPHICS09 - Art Appreciation
Michael Heron
 
2CPP18 - Modifiers
2CPP18 - Modifiers2CPP18 - Modifiers
2CPP18 - Modifiers
Michael Heron
 
2CPP17 - File IO
2CPP17 - File IO2CPP17 - File IO
2CPP17 - File IO
Michael Heron
 
2CPP16 - STL
2CPP16 - STL2CPP16 - STL
2CPP16 - STL
Michael Heron
 
2CPP15 - Templates
2CPP15 - Templates2CPP15 - Templates
2CPP15 - Templates
Michael Heron
 
2CPP14 - Abstraction
2CPP14 - Abstraction2CPP14 - Abstraction
2CPP14 - Abstraction
Michael Heron
 
2CPP13 - Operator Overloading
2CPP13 - Operator Overloading2CPP13 - Operator Overloading
2CPP13 - Operator Overloading
Michael Heron
 

More from Michael Heron (20)

Meeple centred design - Board Game Accessibility
Meeple centred design - Board Game AccessibilityMeeple centred design - Board Game Accessibility
Meeple centred design - Board Game Accessibility
 
Musings on misconduct
Musings on misconductMusings on misconduct
Musings on misconduct
 
Accessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS FrameworkAccessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS Framework
 
ACCESS: A Technical Framework for Adaptive Accessibility Support
ACCESS:  A Technical Framework for Adaptive Accessibility SupportACCESS:  A Technical Framework for Adaptive Accessibility Support
ACCESS: A Technical Framework for Adaptive Accessibility Support
 
Authorship and Autership
Authorship and AutershipAuthorship and Autership
Authorship and Autership
 
Text parser based interaction
Text parser based interactionText parser based interaction
Text parser based interaction
 
SAD04 - Inheritance
SAD04 - InheritanceSAD04 - Inheritance
SAD04 - Inheritance
 
GRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and RadiosityGRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and Radiosity
 
GRPHICS07 - Textures
GRPHICS07 - TexturesGRPHICS07 - Textures
GRPHICS07 - Textures
 
GRPHICS06 - Shading
GRPHICS06 - ShadingGRPHICS06 - Shading
GRPHICS06 - Shading
 
GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)
 
GRPHICS04 - Rendering (1)
GRPHICS04 - Rendering (1)GRPHICS04 - Rendering (1)
GRPHICS04 - Rendering (1)
 
GRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D GraphicsGRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D Graphics
 
GRPHICS09 - Art Appreciation
GRPHICS09 - Art AppreciationGRPHICS09 - Art Appreciation
GRPHICS09 - Art Appreciation
 
2CPP18 - Modifiers
2CPP18 - Modifiers2CPP18 - Modifiers
2CPP18 - Modifiers
 
2CPP17 - File IO
2CPP17 - File IO2CPP17 - File IO
2CPP17 - File IO
 
2CPP16 - STL
2CPP16 - STL2CPP16 - STL
2CPP16 - STL
 
2CPP15 - Templates
2CPP15 - Templates2CPP15 - Templates
2CPP15 - Templates
 
2CPP14 - Abstraction
2CPP14 - Abstraction2CPP14 - Abstraction
2CPP14 - Abstraction
 
2CPP13 - Operator Overloading
2CPP13 - Operator Overloading2CPP13 - Operator Overloading
2CPP13 - Operator Overloading
 

Recently uploaded

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 

Recently uploaded (20)

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 

GRPHICS03 - Graphical Representation

  • 2. INTRODUCTION  In the last lecture we talked about the processes we go through to build a 3D object.  We focused primarily on the polymesh.  In this lecture we are going to look at alternate representations.  Bezier curves  Bezier Patches  NURBS surfaces  Constructive Solid Geometry
  • 3. BEZIER CURVES  A Bezier Curve (or Bezier spline) is a curve defined through the use of four vertices.  A start and end vertice  Two supplementary vertices that define the curve.  Known as the control points. P1 P2 P3 P4
  • 4. BEZIER CURVES  By manipulating the control points, we can change the nature of the curve.  Governed by a mathematical formula. P1 P2 P3 P4
  • 5. BEZIER CURVES  Bezier curves are used for:  Modelling smooth curves  In a way that cannot be done with a polymesh  Curves appear smooth at all scales  Font representation  Vector/Outline fonts  Animation  Used to define smooth, realistic paths for movement.
  • 6. BEZIER PATCHES  Related to the idea of a Bezier curve is a Bezier patch.  Curves are 2D, patches are 3D  Bezier patches are shaped nets, the appearance of which are determined by control points.  Control points act like gravity spots on underlying shape.  The define the topology of the shape through mathematical modelling of attraction
  • 8. BEZIER PATCHES  Bezier patches offer several advantages  Integrity of representation  Continuity across boundaries  Awareness of neighbours  Fluid representation  Exact representation  Can measure volumes and surfaces  Economical  A single patch can represent many polygonal equivalents.
  • 9. BEZIER PATCHES  However, they also have drawbacks.  Simple patch has 16 control points.  Rendering with a Bezier patch is expensive.  Around 10 times slower than equivalent polymesh  But this does not take into account the difference in time requirements to model a polymesh correctly.  Large number of perspectives required to render properly.
  • 10. NURBS  Non-Uniform Rational B-Splines  Yikes!  Extension of the idea of a Bezier curve  Defined by control points.  Each control point has a weight  Defines how much that control point influences the curve.  NURBS have knots  Vectors that describe how the resulting curve is influenced by the control points.  NURBS have an order  How closely the curve follows the lines between control points.
  • 11. CONSTRUCTIVE SOLID GEOMETRY  Complex shapes modeled by using simple shapes.  To these shapes we add or subtract other simple shapes.  Combination of shapes using boolean operators and set theory allows for new and interesting complex topographies.  Unions, Intersections, etc
  • 12. CSG EXAMPLES Images here show boolean operations – union, intersection, and difference. http://www.student.cs.uwaterloo.ca/~cs488/Contrib/f02/a5/djbigham/
  • 13. INTERSECTIONS  When two primitives intersect, the new object is the volume shared by both shapes
  • 14. DIFFERENCE  Difference is all the bits that don’t intersect.
  • 15. UNION  A union is both shapes together.  A merge, in other words.  The new object can be treated as a single new shape  And be transformed as a holistic unit.
  • 16. VOXEL REPRESENTATION  Sometimes need to represent 3D space as voxels.  3D Pixels  3D space broken up into three dimensional arrays of voxels.  Each voxel labeled according to its object occupancy.
  • 17. VOXEL REPRESENTATION  Voxel arrays are:  Costly in terms of memory  Entire object space must be separated down into cubic elements  Labelled according to object occupancy  Space subdivision  Frequently used in:  Game representations of terrain  Medical imagery  Ray tracing
  • 18. SPACE SUBDIVISION  Process of space subdivision common to 2D and 3D graphics.  Easier to understand in 3D.  Start with a 1x1 square representing entire image.  Then recursively subdivide squares.  Stop when each pixel inside a subdivided square has a single colour.
  • 21. VOLUME SUBDIVISON  Works the same way in 3D as in 2D  We start with cubes  Recursive subdivide cubes  From our cube, subdivide into eight smaller cubes.  Can represent space/volume subdivision as a tree data structure.  Easy to navigate and store  Offers greater efficiency of representation.  Advancement over simple voxel array.
  • 22. SUMMARY  Various ways to represent 3D graphics beyond polymeshes.  Bezier Curves  Bezier Patches  NURBS  CSG  Space Subdivision  Each technique has its real life applications.  The nature of the intended destination will dictate the appropriate tool.