SlideShare une entreprise Scribd logo
1  sur  16
Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea Magistrale in Informatica Principles of Computer Graphics- Projects slides - Student: Umberto Di Staso 142685 Professor: Raffaele de Amicis 2009/2010
Context Study of the principles of Computer Graphics: basic knowledge, basic tools to develop computer graphics applications, mathematics in Computer Graphics Context and Objectives Objectives Create a set of softwares that includes the concepts that we have learned during the lessons.
Summary ,[object Object]
	Intermediate Project
Paint
Panzer
Collision detection
Inclined Plane
Demo
	Final Project
GUI
Demo,[object Object]
Intermediate Project Intermediate project consists in providing a set of functionalities (a java library) used to generate simple JOGL applications in which we use them.
Intermediate Project Functionalities are divided in six categories: Vectors: this category contains all the operations about vectors, like the sum between two of them, normalization, dot product, cross product and distance.  Matrices: this category contains all the operations about matrices, like product between two matrices, determinant up 4x4 matrix, check and calculation of the inverse given a matrix. 2D Geometry: this category contains all the operations about simple 2D geometry, like lines, squares, rectangles, triangles, polygons and circles. 3D Polygon Generation: it is the same as the category before, but in three dimensional space. Curves: this category contains all the curves we have seen during the course, like Bezier, Hermite, Hermitesplines and B-Splines. Physics: this category contains some operations about physics.
Intermediate Project I have created three different applications (based on a single java library) in which I have used all the functionalities that I have implemented. Paint: the first application contains all about 2D geometry, 3D polygon generation and curves. Obviously to do this, I have used also vectors and matrices. Panzer: the second application contains some functionalities about physics. Inclined plane: the last application contains the physics functionalities that I have never used in the previous applications.
Paint As we can see, users can draw figures belonging to three macro categories: 2D figures: Draw a simple line given 2 points. Draw a square given center and edge length. Draw an equilateral triangle given center and edge length. Draw a circle given 3 non-aligned points. Draw a polygon given center and number of edges, center and radius. Ability to center the figures. 3D polygon: Draw a cube given center and edge length. Draw regular pyramid given edge length. Draw cone given radius and height. Draw sphere given radius and center. Curves: Draw Hermite given p0, p1 and the 2 vectors. Draw Bezier given 4 control points. Draw Hermitespline given a set of points and 2 vectors. Draw BSpline given a set of points and the degree.

Contenu connexe

Tendances

Introduction with graphics
Introduction with graphicsIntroduction with graphics
Introduction with graphicsmsouravmishra
 
A concept of graphics
A concept of graphicsA concept of graphics
A concept of graphicsmsouravmishra
 
Surveillance System (Minimum Vertex Cover Problem)
Surveillance System (Minimum Vertex Cover Problem) Surveillance System (Minimum Vertex Cover Problem)
Surveillance System (Minimum Vertex Cover Problem) Saksham Saxena
 
Task 2 animation
Task 2 animationTask 2 animation
Task 2 animationacffc17
 
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D TriangulationBuild Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D TriangulationDouglas Lanman
 
GRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D GraphicsGRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D GraphicsMichael Heron
 
Particle tracking
Particle trackingParticle tracking
Particle trackingbagustris
 
Build Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionBuild Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionDouglas Lanman
 
ANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentationANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentationAnish Patel
 
Drawing For Illustration And Annotation In 3D
Drawing For Illustration And Annotation In 3DDrawing For Illustration And Annotation In 3D
Drawing For Illustration And Annotation In 3DDavid Bourguignon
 
CenterForDomainSpecificComputing-Poster
CenterForDomainSpecificComputing-PosterCenterForDomainSpecificComputing-Poster
CenterForDomainSpecificComputing-PosterYunming Zhang
 
Computer graphics file
Computer graphics fileComputer graphics file
Computer graphics fileaman1001
 
How do self driving cars detects lane lines so easily
How do self driving cars detects lane lines so easilyHow do self driving cars detects lane lines so easily
How do self driving cars detects lane lines so easilyANOLYTICS
 
Auto cad introduction sas institute
Auto cad introduction sas instituteAuto cad introduction sas institute
Auto cad introduction sas instituteShusmita Chauhan
 

Tendances (20)

poster
posterposter
poster
 
Introduction with graphics
Introduction with graphicsIntroduction with graphics
Introduction with graphics
 
A concept of graphics
A concept of graphicsA concept of graphics
A concept of graphics
 
Surveillance System (Minimum Vertex Cover Problem)
Surveillance System (Minimum Vertex Cover Problem) Surveillance System (Minimum Vertex Cover Problem)
Surveillance System (Minimum Vertex Cover Problem)
 
Task 2 animation
Task 2 animationTask 2 animation
Task 2 animation
 
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D TriangulationBuild Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
 
GRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D GraphicsGRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D Graphics
 
Java fx 3d
Java fx 3dJava fx 3d
Java fx 3d
 
sduGroupEvent
sduGroupEventsduGroupEvent
sduGroupEvent
 
What is computer graphics
What is computer graphicsWhat is computer graphics
What is computer graphics
 
Particle tracking
Particle trackingParticle tracking
Particle tracking
 
Build Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionBuild Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: Conclusion
 
ANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentationANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentation
 
Drawing For Illustration And Annotation In 3D
Drawing For Illustration And Annotation In 3DDrawing For Illustration And Annotation In 3D
Drawing For Illustration And Annotation In 3D
 
CenterForDomainSpecificComputing-Poster
CenterForDomainSpecificComputing-PosterCenterForDomainSpecificComputing-Poster
CenterForDomainSpecificComputing-Poster
 
Computer graphics
Computer graphicsComputer graphics
Computer graphics
 
Computer graphics file
Computer graphics fileComputer graphics file
Computer graphics file
 
How do self driving cars detects lane lines so easily
How do self driving cars detects lane lines so easilyHow do self driving cars detects lane lines so easily
How do self driving cars detects lane lines so easily
 
Datt2500 week 02
Datt2500 week 02Datt2500 week 02
Datt2500 week 02
 
Auto cad introduction sas institute
Auto cad introduction sas instituteAuto cad introduction sas institute
Auto cad introduction sas institute
 

Similaire à A graphic library and an application for simple curve manipolation

Simple Pendulum Experiment and Automatic Survey Grading using Computer Vision
Simple Pendulum Experiment and Automatic Survey Grading using Computer VisionSimple Pendulum Experiment and Automatic Survey Grading using Computer Vision
Simple Pendulum Experiment and Automatic Survey Grading using Computer VisionAnish Patel
 
Engineering + Programming portfolio
Engineering + Programming portfolioEngineering + Programming portfolio
Engineering + Programming portfolioJosephDonnelly14
 
Copy of Copy of Untitled presentation (1).pdf
Copy of Copy of Untitled presentation (1).pdfCopy of Copy of Untitled presentation (1).pdf
Copy of Copy of Untitled presentation (1).pdfjosephdonnelly2024
 
ee8220_project_W2013_v5
ee8220_project_W2013_v5ee8220_project_W2013_v5
ee8220_project_W2013_v5Farhad Gholami
 
Aoyagi Lab Colloquium - 2015-05-11
Aoyagi Lab Colloquium - 2015-05-11Aoyagi Lab Colloquium - 2015-05-11
Aoyagi Lab Colloquium - 2015-05-11Michele Bianchi
 
Extraction of Buildings from Satellite Images
Extraction of Buildings from Satellite ImagesExtraction of Buildings from Satellite Images
Extraction of Buildings from Satellite ImagesAkanksha Prasad
 
3D Reconstruction from Multiple uncalibrated 2D Images of an Object
3D Reconstruction from Multiple uncalibrated 2D Images of an Object3D Reconstruction from Multiple uncalibrated 2D Images of an Object
3D Reconstruction from Multiple uncalibrated 2D Images of an ObjectAnkur Tyagi
 
Class[4][19th jun] [three js-camera&light]
Class[4][19th jun] [three js-camera&light]Class[4][19th jun] [three js-camera&light]
Class[4][19th jun] [three js-camera&light]Saajid Akram
 
Volodymyr Getmanskyi "Deep learning for satellite imagery colorization and di...
Volodymyr Getmanskyi "Deep learning for satellite imagery colorization and di...Volodymyr Getmanskyi "Deep learning for satellite imagery colorization and di...
Volodymyr Getmanskyi "Deep learning for satellite imagery colorization and di...DataConf
 
Ai big dataconference_volodymyr getmanskyi colorization distance measuring
Ai big dataconference_volodymyr getmanskyi colorization distance measuringAi big dataconference_volodymyr getmanskyi colorization distance measuring
Ai big dataconference_volodymyr getmanskyi colorization distance measuringOlga Zinkevych
 
detailed experience
detailed experiencedetailed experience
detailed experienceBryan Yan
 
Finite_Element_Analysis_with_MATLAB_GUI
Finite_Element_Analysis_with_MATLAB_GUIFinite_Element_Analysis_with_MATLAB_GUI
Finite_Element_Analysis_with_MATLAB_GUIColby White
 
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...IRJET Journal
 
Design and development of DrawBot using image processing
Design and development of DrawBot using image processing Design and development of DrawBot using image processing
Design and development of DrawBot using image processing IJECEIAES
 
YARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) ProjectYARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) Projectgraphitech
 

Similaire à A graphic library and an application for simple curve manipolation (20)

Simple Pendulum Experiment and Automatic Survey Grading using Computer Vision
Simple Pendulum Experiment and Automatic Survey Grading using Computer VisionSimple Pendulum Experiment and Automatic Survey Grading using Computer Vision
Simple Pendulum Experiment and Automatic Survey Grading using Computer Vision
 
Engineering + Programming portfolio
Engineering + Programming portfolioEngineering + Programming portfolio
Engineering + Programming portfolio
 
Copy of Copy of Untitled presentation (1).pdf
Copy of Copy of Untitled presentation (1).pdfCopy of Copy of Untitled presentation (1).pdf
Copy of Copy of Untitled presentation (1).pdf
 
ee8220_project_W2013_v5
ee8220_project_W2013_v5ee8220_project_W2013_v5
ee8220_project_W2013_v5
 
Aoyagi Lab Colloquium - 2015-05-11
Aoyagi Lab Colloquium - 2015-05-11Aoyagi Lab Colloquium - 2015-05-11
Aoyagi Lab Colloquium - 2015-05-11
 
Extraction of Buildings from Satellite Images
Extraction of Buildings from Satellite ImagesExtraction of Buildings from Satellite Images
Extraction of Buildings from Satellite Images
 
3D Reconstruction from Multiple uncalibrated 2D Images of an Object
3D Reconstruction from Multiple uncalibrated 2D Images of an Object3D Reconstruction from Multiple uncalibrated 2D Images of an Object
3D Reconstruction from Multiple uncalibrated 2D Images of an Object
 
Class[4][19th jun] [three js-camera&light]
Class[4][19th jun] [three js-camera&light]Class[4][19th jun] [three js-camera&light]
Class[4][19th jun] [three js-camera&light]
 
Log polar coordinates
Log polar coordinatesLog polar coordinates
Log polar coordinates
 
Volodymyr Getmanskyi "Deep learning for satellite imagery colorization and di...
Volodymyr Getmanskyi "Deep learning for satellite imagery colorization and di...Volodymyr Getmanskyi "Deep learning for satellite imagery colorization and di...
Volodymyr Getmanskyi "Deep learning for satellite imagery colorization and di...
 
Ai big dataconference_volodymyr getmanskyi colorization distance measuring
Ai big dataconference_volodymyr getmanskyi colorization distance measuringAi big dataconference_volodymyr getmanskyi colorization distance measuring
Ai big dataconference_volodymyr getmanskyi colorization distance measuring
 
detailed experience
detailed experiencedetailed experience
detailed experience
 
Finite_Element_Analysis_with_MATLAB_GUI
Finite_Element_Analysis_with_MATLAB_GUIFinite_Element_Analysis_with_MATLAB_GUI
Finite_Element_Analysis_with_MATLAB_GUI
 
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
 
Design and development of DrawBot using image processing
Design and development of DrawBot using image processing Design and development of DrawBot using image processing
Design and development of DrawBot using image processing
 
[LinkedIn]_Thesis Sum in English_New
[LinkedIn]_Thesis Sum in English_New[LinkedIn]_Thesis Sum in English_New
[LinkedIn]_Thesis Sum in English_New
 
427lects
427lects427lects
427lects
 
YARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) ProjectYARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) Project
 
Report_Internship_TRC Aachen
Report_Internship_TRC AachenReport_Internship_TRC Aachen
Report_Internship_TRC Aachen
 
Chapter10.pptx
Chapter10.pptxChapter10.pptx
Chapter10.pptx
 

Plus de graphitech

A graphic library and an application for simple curve manipolation
A graphic library and an application for simple curve manipolationA graphic library and an application for simple curve manipolation
A graphic library and an application for simple curve manipolationgraphitech
 
Rescue Mission
Rescue MissionRescue Mission
Rescue Missiongraphitech
 
Rescue Mission
Rescue MissionRescue Mission
Rescue Missiongraphitech
 
Mashup - Sustainability
Mashup - SustainabilityMashup - Sustainability
Mashup - Sustainabilitygraphitech
 
Mashup - Sustainability
Mashup - SustainabilityMashup - Sustainability
Mashup - Sustainabilitygraphitech
 
Multiple Screens
Multiple ScreensMultiple Screens
Multiple Screensgraphitech
 
Multiple Screens
Multiple ScreensMultiple Screens
Multiple Screensgraphitech
 
Graph Matching
Graph MatchingGraph Matching
Graph Matchinggraphitech
 
Shape Analysis
Shape AnalysisShape Analysis
Shape Analysisgraphitech
 
Human Interaction Library
Human Interaction LibraryHuman Interaction Library
Human Interaction Librarygraphitech
 
Human Interaction Library
Human Interaction LibraryHuman Interaction Library
Human Interaction Librarygraphitech
 
WebCams Mapping on Nasa World Wind
WebCams Mapping on Nasa World WindWebCams Mapping on Nasa World Wind
WebCams Mapping on Nasa World Windgraphitech
 
Street Builder
Street BuilderStreet Builder
Street Buildergraphitech
 
Street Builder
Street BuilderStreet Builder
Street Buildergraphitech
 
Live Video in World Wind
Live Video in World WindLive Video in World Wind
Live Video in World Windgraphitech
 
Live Video in World Wind
Live Video in World WindLive Video in World Wind
Live Video in World Windgraphitech
 
Terrain Modification
Terrain ModificationTerrain Modification
Terrain Modificationgraphitech
 
Terrain Modification
Terrain ModificationTerrain Modification
Terrain Modificationgraphitech
 
YARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) ProjectYARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) Projectgraphitech
 
Implementation of Hybrid Terrain Representation in Nasa WorldWind: Regular Gr...
Implementation of Hybrid Terrain Representation in Nasa WorldWind: Regular Gr...Implementation of Hybrid Terrain Representation in Nasa WorldWind: Regular Gr...
Implementation of Hybrid Terrain Representation in Nasa WorldWind: Regular Gr...graphitech
 

Plus de graphitech (20)

A graphic library and an application for simple curve manipolation
A graphic library and an application for simple curve manipolationA graphic library and an application for simple curve manipolation
A graphic library and an application for simple curve manipolation
 
Rescue Mission
Rescue MissionRescue Mission
Rescue Mission
 
Rescue Mission
Rescue MissionRescue Mission
Rescue Mission
 
Mashup - Sustainability
Mashup - SustainabilityMashup - Sustainability
Mashup - Sustainability
 
Mashup - Sustainability
Mashup - SustainabilityMashup - Sustainability
Mashup - Sustainability
 
Multiple Screens
Multiple ScreensMultiple Screens
Multiple Screens
 
Multiple Screens
Multiple ScreensMultiple Screens
Multiple Screens
 
Graph Matching
Graph MatchingGraph Matching
Graph Matching
 
Shape Analysis
Shape AnalysisShape Analysis
Shape Analysis
 
Human Interaction Library
Human Interaction LibraryHuman Interaction Library
Human Interaction Library
 
Human Interaction Library
Human Interaction LibraryHuman Interaction Library
Human Interaction Library
 
WebCams Mapping on Nasa World Wind
WebCams Mapping on Nasa World WindWebCams Mapping on Nasa World Wind
WebCams Mapping on Nasa World Wind
 
Street Builder
Street BuilderStreet Builder
Street Builder
 
Street Builder
Street BuilderStreet Builder
Street Builder
 
Live Video in World Wind
Live Video in World WindLive Video in World Wind
Live Video in World Wind
 
Live Video in World Wind
Live Video in World WindLive Video in World Wind
Live Video in World Wind
 
Terrain Modification
Terrain ModificationTerrain Modification
Terrain Modification
 
Terrain Modification
Terrain ModificationTerrain Modification
Terrain Modification
 
YARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) ProjectYARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) Project
 
Implementation of Hybrid Terrain Representation in Nasa WorldWind: Regular Gr...
Implementation of Hybrid Terrain Representation in Nasa WorldWind: Regular Gr...Implementation of Hybrid Terrain Representation in Nasa WorldWind: Regular Gr...
Implementation of Hybrid Terrain Representation in Nasa WorldWind: Regular Gr...
 

Dernier

The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...anjaliyadav012327
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 

Dernier (20)

The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 

A graphic library and an application for simple curve manipolation

  • 1. Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea Magistrale in Informatica Principles of Computer Graphics- Projects slides - Student: Umberto Di Staso 142685 Professor: Raffaele de Amicis 2009/2010
  • 2. Context Study of the principles of Computer Graphics: basic knowledge, basic tools to develop computer graphics applications, mathematics in Computer Graphics Context and Objectives Objectives Create a set of softwares that includes the concepts that we have learned during the lessons.
  • 3.
  • 11. GUI
  • 12.
  • 13. Intermediate Project Intermediate project consists in providing a set of functionalities (a java library) used to generate simple JOGL applications in which we use them.
  • 14. Intermediate Project Functionalities are divided in six categories: Vectors: this category contains all the operations about vectors, like the sum between two of them, normalization, dot product, cross product and distance. Matrices: this category contains all the operations about matrices, like product between two matrices, determinant up 4x4 matrix, check and calculation of the inverse given a matrix. 2D Geometry: this category contains all the operations about simple 2D geometry, like lines, squares, rectangles, triangles, polygons and circles. 3D Polygon Generation: it is the same as the category before, but in three dimensional space. Curves: this category contains all the curves we have seen during the course, like Bezier, Hermite, Hermitesplines and B-Splines. Physics: this category contains some operations about physics.
  • 15. Intermediate Project I have created three different applications (based on a single java library) in which I have used all the functionalities that I have implemented. Paint: the first application contains all about 2D geometry, 3D polygon generation and curves. Obviously to do this, I have used also vectors and matrices. Panzer: the second application contains some functionalities about physics. Inclined plane: the last application contains the physics functionalities that I have never used in the previous applications.
  • 16. Paint As we can see, users can draw figures belonging to three macro categories: 2D figures: Draw a simple line given 2 points. Draw a square given center and edge length. Draw an equilateral triangle given center and edge length. Draw a circle given 3 non-aligned points. Draw a polygon given center and number of edges, center and radius. Ability to center the figures. 3D polygon: Draw a cube given center and edge length. Draw regular pyramid given edge length. Draw cone given radius and height. Draw sphere given radius and center. Curves: Draw Hermite given p0, p1 and the 2 vectors. Draw Bezier given 4 control points. Draw Hermitespline given a set of points and 2 vectors. Draw BSpline given a set of points and the degree.
  • 17. Panzer Key points: Panzer: little tank designed using a tree structure: each element that composes the panzer is drawn around the root point. In this way, I can move the tank simply by using a translation of the root point. Bullet: little polygon with 8-16 edges. Trajectory: trajectory of the bullet. This particular kind of parabola is calculated using the formula of parabolic motion of projectiles. World: set of segments that composes the impact surface. Informations: words that explain the angle of the gun, initial speed of the bullet, range of the shoot and finally, the max height of the bullet.
  • 18. Collision Detection The core of this application is, obviously, the algorithm that tells us when a bullet impacts on a surface. To understand properly how this algorithm works, is surely useful to look at the image on the right. As we can see, the bullet is basically a little polygon with 8-16 edges. The number of edges influences the precision of our collision detection. The algorithm works in this way: For each radius (in red) of the bullet it checks if one of these intersects a component of the impact surface (in green).
  • 19. Inclined Plane The application consists in a simple inclined surface with a corpus on it. Using the “Spacebar” we release the object and we can see how the physics phenomenon called “uniform acceleration” (it depends on the gravitational acceleration and the angle of the inclined plane) brings changes on the motion of the corpus.
  • 21. Final Project The project consists in a software that uses the library developed in the Intermediate project to construct complex functionalities. The asked functionality requisites are: Load a picture in background. Generate different curves using points setted by the mouse. HermiteSpline, Bezier Spline, BSpline, Lagrange. In this way we can isolate the perimeter of the previous loaded picture. Move single points using the mouse drag property. Select multi points and move them together. Curves must be connected to each other. Save the composition of curves in a file. Load the composition of curves saved before. Load a point file ad interpolate the points using the available curves. In this way we can observe the differences generated when the same points are interpolated by different kind of curves Change in real time the kind of curve that interpolates a set of points.
  • 22. Final Project - GUI As we can see in the image on the right, the software gives us a large set of choices used for different kinds of operations: Picture canvas Clear button Delete last point Move points Change curve Curve select Load image Load a blank image Restore default image: Load point file Load a curve Save curve Hide points over the screen