Computer Graphics Modellering engels

509 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
509
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Computer Graphics Modellering engels

  1. 1. 8. Mathematic Modelling of Objects<br />8.3. Modelling of Point clouds<br />
  2. 2. 8.3. Mathematic Modelling of Objects<br />8.3.1. Definition<br />Point clouds are sets of discrete values clustered in a certain area.<br />In Computer Graphics: unordered set of points in a catesian coordinate system<br /><ul><li>uncertain contextual relationship
  3. 3. No composition of points (no planes)
  4. 4. No predefined order</li></ul>Conclusion<br />
  5. 5. 8.3. Mathematic Modelling of Objects<br />8.3.2. Properties<br />Objects don‘t have facettes<br /> Textures can‘t be used<br />Objects don‘t have face normals<br /><ul><li>Lighting computation not possible
  6. 6. Color of each point must be defined</li></ul>Each point is rendered (no face culling because of absence of faces)<br />Tight-packed points construct point clusters<br /><ul><li>Construction of solid objects possible</li></li></ul><li>8.3. Mathematic Modelling of Objects<br />8.3.3. Application Domain<br />Constuction of solid objects:<br />medical computer graphics (Computer Assisted Surgery [CAS])<br />automotive industry<br />Point cloud visualization:<br />voxel graphics (Voxel = Volume Pixel)<br />particle systems <br />
  7. 7. 8.3. Modellierung von Punktewolken<br />8.3.4. Programmierung<br />[…]<br />#define M 4 //Größe des Objekts<br />#define ABSTAND 0.1 //Abstand der Einzelpunkte<br />//Zeichne Punkte<br />glBegin(GL_POINT);<br />{<br />intx,y,z;<br />for(int i=0; i<100; i++)<br />{<br /> // pro Durchgang: erhöhe den Tiefenwert; Baue Objekt erst Spalten-<br /> // dann Zeilenweise auf.<br />z=i%M; x=((int)(i/M))%(M*M); y=(int)(i/(M*M));<br /> // Setze Farbwert<br /> glColor4f(0.0f, 0.12f, 0.75f, 0.8f);<br /> // Setze Position<br /> glVertex3f(ABSTAND*x, ABSTAND*y, ABSTAND*z);<br /> }<br />}<br />glEnd();<br />[…]<br /> Vorteil: Bewegung in das Objekt möglich<br />
  8. 8. 8.3. Mathematic Modelling of Objects<br />8.3.5. professional generationofpointcloudobjects<br />manualgenerationofpointclouds time intensive / not applicable<br /><ul><li>Technical pointrecording:</li></ul>3D camerarecords<br />Laser scansof solid objects<br />MRI (MagneticResonance Imaging)<br />X-raying<br />
  9. 9. 8.3. Mathematic Modelling of Objects<br />8.3.6. Conversion point cloud – polygonial net (Meshing)<br />First approach for conversion: Triangulation (triangle construction)  Graham-Algorithmus<br />2-dimensional: detect point with lowest y-value<br />Afterwards: connection of the other points depending on the angle to seed point, beginning with the lowest<br />interconnect environment points according to angle order<br />
  10. 10. 8.3. Mathematic Modelling of Objects<br />8.3.6. Conversion point cloud – polygonial net (Meshing)<br />Last step: delete concave corner points<br />
  11. 11. 8.3. Mathematic Modelling of Objects<br />8.3.6. Conversion point cloud – polygonial net (Meshing)<br />Second approach: construction of polygon according to human thinking  Two-Peasant – Graphs<br />Detection of points with x-maximum and x-minimum<br />seperation of cloud in upper and lower half<br />order halfs<br />interconnection of sequential points of upper half from min(x) to max(x)<br />Interconnection of sequential points of lower half from max(x) to min(x)<br />
  12. 12. 8.3. Modellierung von Punktewolken<br />8.3.6. Umwandlung Punktewolke - Dreiecksnetz<br />Übergang 2D-3D: Mustererkennung<br />Anwendbar bei Wissen über geometrische Zusammensetzung der Szene (Beispiel: Billard-Tisch)<br />Vergleich einzelner Punktehaufen mit mathematischer Objektbeschreibung<br />Objekt modellieren wenn genügende Anzahl (Schwellwert) an Punkte auf Objektbeschreibung zutrifft<br />Billard: Kugel definiert durch Mittelpunkt und Radius<br />x−x02+y−y02+ z−z02= r2<br /> <br />
  13. 13. 8.3. Modellierung von Punktewolken<br />8.3.6. Umwandlung Punktewolke - Dreiecksnetz<br />Suche von Minimum- und Maximum-Punkt für x-, y- und z-Werte<br />Verbindung der Punkte; Halbierung der Strecken;<br />Mittelwerte der Beträge halben Strecken  mgl. Radius<br />P0= xPxMin+xPxMax−xPxMin2zPyMin+yPyMax−yPyMin2zPzMin+zPzMax−zPzMin2<br />Test nach genannter Formel, ob Oberflächenpunkte zu Kugel zugehörig<br /> <br />
  14. 14. 8.3. Mathematic Modelling of Objects<br />8.3.6. Conversion point cloud – polygonial net (Meshing)<br />Last presentedpossiblity: 3D-facettes byMarching Cubes<br />weightingofcornerpoints<br />Constructionofweightedvoxels<br />Check per voxel: cornersexceedingcertainthreshold; indexcontatenationofincludingcorners<br />check Look-Up Table forpolygonconfiguration<br />compositionofvoxel-cuberesultstooneobjects<br />facettenormalscanbesaved inLook-Up Table too<br />
  15. 15. 8.3. Modellierung von Punktewolken<br />8.3.6. Umwandlung Punktewolke - Dreiecksnetz<br />1 Voxel; Bsp.-Wert: 105 = 1|4|6|7<br />20+23+25+26=105<br /> <br />105<br />
  16. 16. 8.4. Constructive Solid Geometry (CSG)<br /><ul><li>cover: constructed (composed) objects
  17. 17. construction: compostion of multiple objects
  18. 18. Application: </li></ul>virtual objects for construction of real objects<br /><ul><li>solid: filled; closed
  19. 19. objects with matter
  20. 20. combination of geometric primitives
  21. 21. basic blocks</li></li></ul><li>8.4. Constructive Solid Geometry (CSG)<br />8.4.1. Definition<br />CSG is a technique for creation of solid objects. complex structures can be build via boolean combination of geometric primitives.<br />CSG models are convex objects,<br />build out of co-planar facettes.<br /><ul><li>ball
  22. 22. cube
  23. 23. cylinder
  24. 24. cone
  25. 25. torus
  26. 26. facette</li></li></ul><li>8.4. Constructive Solid Geometry (CSG)<br />8.4.2. Properties<br />CSG models:<br />filledandclosed<br />facettenormals existent<br /><ul><li>illuminationcomputationpossible</li></ul>convex: allcornerfacettesco-planar: all corners<br />arefacing in opponentof a facetteare in one<br />directionsplane<br />
  27. 27. 8.4. Constructive Solid Geometry (CSG)<br />8.4.3. Application Domain<br />similarapplicationdomainsaspolygonialobjects<br />Computer Aided Design (CAD) forRapid Prototypingand Manufacturing; Product- andJewellery design<br />Spacecraft Simulation; ComponentPrototyping<br />Mechanical Engineering: Modellingofnew Engine Components<br />major CAD systems: Autodesk SolidWorks, Catia, ProEngineer<br />
  28. 28. 8.4. Constructive Solid Geometry (CSG)<br />8.4.3. Application Domain<br />
  29. 29. 8.4. Constructive Solid Geometry (CSG)<br />8.4.4. boolean object combination<br />Union:<br />united set of objects<br />objects are into each other<br />Difference:<br />all points of a basic object, <br /> which are not included in the<br /> combined object<br />Intersection:<br />Points, included in all combined objects<br />
  30. 30. 8.4. Constructive Solid Geometry (CSG)<br />8.4.4. boolean object combination<br />objectmodelling via treestructure<br />Example… <br />⊆<br /> <br />∩<br />U<br />Ball<br />Cube<br />Ball<br />Ball<br />…<br />
  31. 31. 8.4. Constructive Solid Geometry (CSG)<br />8.4.5. Programming<br />forgeneration, storageandroughvisualization: <br /><ul><li>CSG Editor</li></ul>Programming via OpenGL-basedAPI OpenCSG<br />

×