SlideShare ist ein Scribd-Unternehmen logo
1 von 22
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.

Weitere ähnliche Inhalte

Was ist angesagt?

Unit 3 visual realism
Unit 3 visual realismUnit 3 visual realism
Unit 3 visual realismJavith Saleem
 
visual realism in geometric modeling
visual realism in geometric modelingvisual realism in geometric modeling
visual realism in geometric modelingsabiha 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 UniversityMao Sararith
 
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
 
Lect8 viewing in3d&transformation
Lect8 viewing in3d&transformationLect8 viewing in3d&transformation
Lect8 viewing in3d&transformationBCET
 
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
 
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 mapsI3E Technologies
 

Was ist angesagt? (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
 

Ähnlich wie GRPHICS03 - Graphical Representation

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 ModellingScottRoberts37
 
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 MANUFACTURINGMohanumar S
 
Fundamentals of Multimedia - Vector Graphics.pdf
Fundamentals of Multimedia - Vector Graphics.pdfFundamentals of Multimedia - Vector Graphics.pdf
Fundamentals of Multimedia - Vector Graphics.pdfFatihahIrra
 
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.pdfamirthagiftsmadurai
 
GRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D GraphicsGRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D GraphicsMichael Heron
 
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
 
Line weight
Line weightLine weight
Line weightalathe
 
Implicit Interpolation Analytical Curves
Implicit Interpolation Analytical CurvesImplicit Interpolation Analytical Curves
Implicit Interpolation Analytical CurvesSharath Kumar
 
Art of Thread Design
Art of Thread DesignArt of Thread Design
Art of Thread DesignRic Barline
 
Class 8 presentation
Class 8 presentationClass 8 presentation
Class 8 presentationlaura_gerold
 

Ähnlich wie 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 )
 
Line weight
Line weightLine weight
Line weight
 
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
 

Mehr von Michael Heron

Meeple centred design - Board Game Accessibility
Meeple centred design - Board Game AccessibilityMeeple centred design - Board Game Accessibility
Meeple centred design - Board Game AccessibilityMichael Heron
 
Musings on misconduct
Musings on misconductMusings on misconduct
Musings on misconductMichael Heron
 
Accessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS FrameworkAccessibility Support with the ACCESS Framework
Accessibility Support with the ACCESS FrameworkMichael 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 SupportMichael Heron
 
Authorship and Autership
Authorship and AutershipAuthorship and Autership
Authorship and AutershipMichael Heron
 
Text parser based interaction
Text parser based interactionText parser based interaction
Text parser based interactionMichael Heron
 
GRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and RadiosityGRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and RadiosityMichael Heron
 
GRPHICS07 - Textures
GRPHICS07 - TexturesGRPHICS07 - Textures
GRPHICS07 - TexturesMichael 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 GraphicsMichael Heron
 
GRPHICS09 - Art Appreciation
GRPHICS09 - Art AppreciationGRPHICS09 - Art Appreciation
GRPHICS09 - Art AppreciationMichael Heron
 
2CPP14 - Abstraction
2CPP14 - Abstraction2CPP14 - Abstraction
2CPP14 - AbstractionMichael Heron
 
2CPP13 - Operator Overloading
2CPP13 - Operator Overloading2CPP13 - Operator Overloading
2CPP13 - Operator OverloadingMichael Heron
 

Mehr von 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
 

Kürzlich hochgeladen

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 

Kürzlich hochgeladen (20)

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 

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.