Upcoming SlideShare
×

Like this presentation? Why not share!

# Computer Graphics Modellering engels

## on Feb 04, 2011

• 423 views

### Views

Total Views
423
Views on SlideShare
421
Embed Views
2

Likes
0
3
0

### Report content

• Comment goes here.
Are you sure you want to

## Computer Graphics Modellering engelsPresentation Transcript

• 8. Mathematic Modelling of Objects
8.3. Modelling of Point clouds
• 8.3. Mathematic Modelling of Objects
8.3.1. Definition
Point clouds are sets of discrete values clustered in a certain area.
In Computer Graphics: unordered set of points in a catesian coordinate system
• uncertain contextual relationship
• No composition of points (no planes)
• No predefined order
Conclusion
• 8.3. Mathematic Modelling of Objects
8.3.2. Properties
Objects don‘t have facettes
 Textures can‘t be used
Objects don‘t have face normals
• Lighting computation not possible
• Color of each point must be defined
Each point is rendered (no face culling because of absence of faces)
Tight-packed points construct point clusters
• Construction of solid objects possible
• 8.3. Mathematic Modelling of Objects
8.3.3. Application Domain
Constuction of solid objects:
medical computer graphics (Computer Assisted Surgery [CAS])
automotive industry
Point cloud visualization:
voxel graphics (Voxel = Volume Pixel)
particle systems
• 8.3. Modellierung von Punktewolken
8.3.4. Programmierung
[…]
#define M 4 //Größe des Objekts
#define ABSTAND 0.1 //Abstand der Einzelpunkte
//Zeichne Punkte
glBegin(GL_POINT);
{
intx,y,z;
for(int i=0; i<100; i++)
{
// pro Durchgang: erhöhe den Tiefenwert; Baue Objekt erst Spalten-
// dann Zeilenweise auf.
z=i%M; x=((int)(i/M))%(M*M); y=(int)(i/(M*M));
// Setze Farbwert
glColor4f(0.0f, 0.12f, 0.75f, 0.8f);
// Setze Position
glVertex3f(ABSTAND*x, ABSTAND*y, ABSTAND*z);
}
}
glEnd();
[…]
 Vorteil: Bewegung in das Objekt möglich
• 8.3. Mathematic Modelling of Objects
8.3.5. professional generationofpointcloudobjects
manualgenerationofpointclouds time intensive / not applicable
• Technical pointrecording:
3D camerarecords
Laser scansof solid objects
MRI (MagneticResonance Imaging)
X-raying
• 8.3. Mathematic Modelling of Objects
8.3.6. Conversion point cloud – polygonial net (Meshing)
First approach for conversion: Triangulation (triangle construction)  Graham-Algorithmus
2-dimensional: detect point with lowest y-value
Afterwards: connection of the other points depending on the angle to seed point, beginning with the lowest
interconnect environment points according to angle order
• 8.3. Mathematic Modelling of Objects
8.3.6. Conversion point cloud – polygonial net (Meshing)
Last step: delete concave corner points
• 8.3. Mathematic Modelling of Objects
8.3.6. Conversion point cloud – polygonial net (Meshing)
Second approach: construction of polygon according to human thinking  Two-Peasant – Graphs
Detection of points with x-maximum and x-minimum
seperation of cloud in upper and lower half
order halfs
interconnection of sequential points of upper half from min(x) to max(x)
Interconnection of sequential points of lower half from max(x) to min(x)
• 8.3. Modellierung von Punktewolken
8.3.6. Umwandlung Punktewolke - Dreiecksnetz
Übergang 2D-3D: Mustererkennung
Anwendbar bei Wissen über geometrische Zusammensetzung der Szene (Beispiel: Billard-Tisch)
Vergleich einzelner Punktehaufen mit mathematischer Objektbeschreibung
Objekt modellieren wenn genügende Anzahl (Schwellwert) an Punkte auf Objektbeschreibung zutrifft
Billard: Kugel definiert durch Mittelpunkt und Radius
x−x02+y−y02+ z−z02= r2

• 8.3. Modellierung von Punktewolken
8.3.6. Umwandlung Punktewolke - Dreiecksnetz
Suche von Minimum- und Maximum-Punkt für x-, y- und z-Werte
Verbindung der Punkte; Halbierung der Strecken;
Mittelwerte der Beträge halben Strecken  mgl. Radius
P0= xPxMin+xPxMax−xPxMin2zPyMin+yPyMax−yPyMin2zPzMin+zPzMax−zPzMin2
Test nach genannter Formel, ob Oberflächenpunkte zu Kugel zugehörig

• 8.3. Mathematic Modelling of Objects
8.3.6. Conversion point cloud – polygonial net (Meshing)
Last presentedpossiblity: 3D-facettes byMarching Cubes
weightingofcornerpoints
Constructionofweightedvoxels
Check per voxel: cornersexceedingcertainthreshold; indexcontatenationofincludingcorners
check Look-Up Table forpolygonconfiguration
compositionofvoxel-cuberesultstooneobjects
facettenormalscanbesaved inLook-Up Table too
• 8.3. Modellierung von Punktewolken
8.3.6. Umwandlung Punktewolke - Dreiecksnetz
1 Voxel; Bsp.-Wert: 105 = 1|4|6|7
20+23+25+26=105

105
• 8.4. Constructive Solid Geometry (CSG)
• cover: constructed (composed) objects
• construction: compostion of multiple objects
• Application:
virtual objects for construction of real objects
• solid: filled; closed
• objects with matter
• combination of geometric primitives
• basic blocks
• 8.4. Constructive Solid Geometry (CSG)
8.4.1. Definition
CSG is a technique for creation of solid objects. complex structures can be build via boolean combination of geometric primitives.
CSG models are convex objects,
build out of co-planar facettes.
• ball
• cube
• cylinder
• cone
• torus
• facette
• 8.4. Constructive Solid Geometry (CSG)
8.4.2. Properties
CSG models:
filledandclosed
facettenormals existent
• illuminationcomputationpossible
convex: allcornerfacettesco-planar: all corners
arefacing in opponentof a facetteare in one
directionsplane
• 8.4. Constructive Solid Geometry (CSG)
8.4.3. Application Domain
similarapplicationdomainsaspolygonialobjects
Computer Aided Design (CAD) forRapid Prototypingand Manufacturing; Product- andJewellery design
Spacecraft Simulation; ComponentPrototyping
Mechanical Engineering: Modellingofnew Engine Components
major CAD systems: Autodesk SolidWorks, Catia, ProEngineer
• 8.4. Constructive Solid Geometry (CSG)
8.4.3. Application Domain
• 8.4. Constructive Solid Geometry (CSG)
8.4.4. boolean object combination
Union:
united set of objects
objects are into each other
Difference:
all points of a basic object,
which are not included in the
combined object
Intersection:
Points, included in all combined objects
• 8.4. Constructive Solid Geometry (CSG)
8.4.4. boolean object combination
objectmodelling via treestructure
Example… 

U
Ball
Cube
Ball
Ball

• 8.4. Constructive Solid Geometry (CSG)
8.4.5. Programming
forgeneration, storageandroughvisualization:
• CSG Editor
Programming via OpenGL-basedAPI OpenCSG