Transformation - PowerPoint PPT Presentation

1 / 50
About This Presentation
Title:

Transformation

Description:

Title: PowerPoint Author: KimSungHo Last modified by: KimSungHo Document presentation format: (4:3) Other titles – PowerPoint PPT presentation

Number of Views:75
Avg rating:3.0/5.0
Slides: 51
Provided by: KimS223
Category:

less

Transcript and Presenter's Notes

Title: Transformation


1
Transformation
Kim, Sung-Ho School of Computer, Information and
Communication Engineering Sangji Univ.
2
????? ????
  • ????
  • ??? ??? ???? ??? ????.
  • ????? ???? ??? ????.
  • ??, ??, ???? ?? ????? ????? ????.
  • ?? ???, ?? ???, ?? ???? ???? ????.
  • ??? ??? ?? ???? ??? ????.
  • ???? ??? ???? ??? ????? ????.

3
???- 3?? ???? pp.237
  • ??? ??(Boundary Surface Representation)
  • ??(Mesh), ?? ??(Surface Mesh), ??? ??(Polygon
    Mesh), ?? ???(Surface Polygon), ???(Polygon)
  • ??? ??(Rectangular Mesh) ?? ?? ??.
  • ??? ??(Triangular Mesh) ?? ??. 2?? ??? ??

?? 6-2 120, 300, 1000 ?? ??? ??
?? 6-5 ??? ??
4
??? ???? ??? ???
  • Wireframe, Solid Rendering
  • ??? ??? ??? ??? ??
  • ??? Solid Rendering?? ?? ??

?? 6-6 ?? I ?? 6-7
?? II ?? 6-8 ?? III
5
??? ??-pp.241
  • V Q P
  • Q V P
  • ??? ??? ??? ? ??? ??? ??.
  • ??? ??(??, ??, Affine Space)
  • ?? ??? ???? ?????? ????? ??
  • ??? ??
  • ??? ??? ??(??)
  • ???? ??? ??(???)
  • ?? ??? ??(??)

?? 6-11 ?? II
6
??? ?? (??)
  • ????
  • V P (1/2)(Q - P) 
  • V P t (Q - P)   (1 - t)P (t)Q  (0 t 1)
  • ??? ???? ??? ?(Affine Sum)
  • ?? ?? ?? 1? ?? ??
  • ?? ??? ? ?? ?? ?? ?? 1? ?? ???? ???.

?? 6-12 ?? ??
7
???-pp.243
  • ????
  • ?? p ?? p
  • ?? v 4 V1 2 V2 V3
  • ????, ??????? ????   
  • ???
  • ??? ????? ???? ???
  • Ex. 3?? ??? (r, V1, V2, V3)
  • ?? ??? ???? ???? ???? ???? ?        
  • ? p r 4V1 2V2 V3 ??? ??

?? 6-16 ????
?? 6-17 ??? ??
8
????(Homogeneous Coordinate System)-pp.245
  • ??? ?? ??? ??
  • v 4 V1 2 V2 V3
  • P r 4V1 2V2 V3  
  • ??? ?? ??? ?? ???? ??
  • v 4 V1 2 V2 V3  0 r (4, 2, 1, 0) ??
  • P 4V1 2V2 V3 1 r   (4, 2, 1, 1) ?
  • 3?? ? (1, 2, 1)
  • 4?? ????? ??
  • ???? (1, 2, 1, 1) (2, 4, 2, 2) (3, 6, 3, 3)
  • ???? (x, y, z, w) gt 3?? ?? (x/w, y/w, z/w)

?? 6-18 ????
9
????- ????(Geometric Transformation)-pp.247
  • ?? ?? ?? ??? ??? ??
  • ??? ???
  • ??, ??, ???? ?

10
2?? ??(Translation)-pp.248
  • x' 1?x 0?y Tx?1
  • y' 0?x 1?y Ty?1

?? 6-19 2?? ??
(6.12 )
11
3?? ??-pp.249
?? 6-19 2?? ??
(6.13 )
( 6.14 )
12
2?? ??(Rotation)-pp.250
?? 6-21 2?? ??
(6.15 ) (6.16 )
(6.17 ) (6.18 )
13
3?? ??-pp.251
  • ??? ??? ???? ??
  • ? ?? ??? ???

?? 6-24 ??? ??
?? 6-22 3?? ??
(6.19) (6.20 )
14
????(Scaling)-pp.252
  • ?? ????(Uniform Scaling) vs. ?? ????(Non-Uniform
    Scaling)

?? 6-25 ?? ????
?? 6-26 ?? ????
(6.25) (6.26 )
http//www.xmission.com/nate/tutors.html
15
??(Shearing)-pp.253
  • ? x-y ????? ??

?? 6-27 ??
(6.27) (6.28) (6.29 ) (6.30 )
16
????(Composite Transformation)-pp.253
  • ????(S1) ?, ?? ??? ??(R1)? ?,
  • ?? ????(S2)
  •  P' S2?R1?S1?P
  • ????? ??? ??
  • P' C?P ???? C? ??? ??. ?? ??? ??

17
???? (??)
  • ?? ?? ??(Origin Rotation) versus ??? ?? ??(Pivot
    Point Rotation)
  • ??? ?? ??
  • ??? ??? ??? ????? ??? ????.
  • ??? ?? ???? ? ??? ????.
  • ??? ??? ???? ??? ??? ?? ???? ????.

?? 6-28 ?? ??? ??
?? 6-29 ?? ??? ??
(6.31)
18
?? ? ??? ?? ? ??-pp.255
  • ????? ???? ??.
  • R?T? T?R? ????? ?? ?? ??
  • ?? ????
  • C T?R?S

?? 6-30 ?? ? ??? ?? ? ?? ??
?? 6-31 ????/?? ? ??
19
??(Reflection)-pp.256
?? 6-32 ????
(6.34)
20
yx ??? ??-pp.257
  • ????

?? 6-33 y x ? ??? ?? ??
21
??? ????- ?? ???-pp.263
  • ???
  • ??? ?? ?? ??? ??
  • ??? (??)??
  • ??? ??
  • ????(Object Space) ???? ???
  • ??? ?? ? ???
  • ???? ??
  • ???? ?? ??
  • ?? ???(MCS, Modeling Coordinate System) ?? ??
    ???(LCS, Local Coordinate System)

?? 6-40 ??? ????
?? 6-41 ?? ???
22
?? ???, ?? ???-pp.264
  • ??
  • ?? ??? ?? ?? ?? ???? ??
  • ????? ??? ? ?? ?? ???
  • ?? ???(WCS, World Coordinate System)
  • ?? ??? ??
  • ??
  • ???? ??? ?? ??? ????
  • ?? ???(VCS, View Coordinatge System)

?? 6-42 ?? ???
23
????? ??-pp.265
  • Ex. ????
  • ????? WCSMCS
  • ??? ??
  • ???? T? WCS ???? ?? ??? (3, 2, 0)?? ???? ??.
  • ??? ??
  • ??? ??? WCS? MCS? ???
  • ?? ??? MCS ??? ?? ??? ??
  • ???? ???? ??.

(6.42)
?? 6-43 ?? ???? ??
24
????? ?? (??)
  • ??
  • ??? ?? MCS? ??.
  • MCS ??? ?? ??? ??
  • ???? ?? T? (a)? WCS? 45(b)? MCS? ?????? ??. ?? ??
    MCS ???? ??? ???
  • ???? x??? 2?
  • MCS x? ??? ?? ??? ??.
  • MCS ??? ?? ??? ??(Ex. (2, 2, 0))

?? 6-45 ?? ???? ?? ???? ??
25
?? ?????-pp.267
  • ????
  • ??? ???? ????(??, ??, )
  • ????? ???
  • ?? ??? ?? ??? ??? ????
  • ???? ?? ???
  • ??? ??? ?? ??
  • ???? ???
  • ????? ???? ??? ????
  • ??? ????? ???? ??? ?? ??? ??
  • ??? ?? ?? ???? ??? ?? ????

?? 6-46 ?? ?????
26
??? ????-pp.269
  • ???? ??
  • ??????? ??? ??
  • void glMatrixMode(GLenum mode)
  • GL_MODELVIEW, GL_PROJECTION, GL_TEXTURE
  • ? ????(CTM Current Transformation Matrix)
  • ????. ?? ?? ??
  • ?? ??? ??? ???

?? 6-47 ?? ?? ???
27
??? ???? (??)
  • ???
  • void glLoadIdentity( )
  • ????? ???
  • ??? ??
  • ?? ??? ?? ??? ?? ???
  • ????? ??
  • void glTranslatef(GLfloat dx, GLfloat dy, GLfloat
    dz)
  • void glScalef(GLfloat sx, GLfloat sy, GLfloat
    sz)
  • void glRotatef(GLfloat angle, GLfloat x, GLfloat
    y, GLfloat z)
  • ????(PostMultiplication)
  • ?? ???? ???? ?? ?? ???? ??
  • CTM CTM M
  • Ex. glTranslatef(1, 2, 0)

(6.43) (6.44)
(6.47)
28
????-pp.272
  • Ex.
  • glMatrixMode(GL_MODELVIEW)
  • glLoadIdentity( )                                
                      
  • glScalef(sx, sy, sz)                             
                        
  • glRotatef(theta, vx, vy, vz)                     
                    
  • glBegin(GL_POINTS)
  • glVertex3f(px, py, pz)                      
                       
  • glEnd( )
  • ???? ?? ??? ?? ?? ?????

? 6-1 ???? ??
29
?? ??? ?? ???-pp.274
  • ??
  • glMatrixMode(GL_MODELVIEW)
  • glLoadIdentity( )          
  • glRotatef(45, 0.0, 0.0, 1.0)  ?? ??? ??
  • glTranslatef(10.0, 0.0, 0.0)
  • glVertex3f(Px, Py, Pz) 
  • ???? ??? ????
  • P' TP
  • P'' RP' RTP

?? 6-48 ?? ??? ?? ???
30
??? ??? ?? ???-pp.274
  • ??
  • glMatrixMode(GL_MODELVIEW)
  • glLoadIdentity( )          
  • glRotatef(45, 0.0, 0.0, 1.0)   ??? ??? ?? ??
  • glTranslatef(10.0, 0.0, 0.0)
  • glVertex3f(Px, Py, Pz)  
  • ?? ???? ??
  • ??? ?? ???? ???? ??
  • CTM IR
  • CTM CTMT IRT
  • P'' CTMP IRTP   

?? 6-49 ?? ??? ??? ?? ???
31
???? ??-pp.276
?? 6-50 ???? ??
?? 6-51 ???? ??
32
?? ??(Matrix Stack)-pp.278
?? 6-57 ??? ???
? 6-2 ??? ??? ????
???? (d)? ????? ??? ??? -gt ??
33
?? ?? (??)
  • Push, Pop

?? 6-58 ??? ??, ?
34
?? ?? (??)
?? 6-59 ??? ??? ????? ?? ??
35
?? ?? (??)
  • ??? ??
  • glPushMatrix( )                                  
                   
  • glTranslatef( )
  • glRotatef( )
  • glScalef( )
  • ...
  • Draw_TransformedObject( )
  • glPopMatrix( )                                   
                 
  •                                                   
            

?? 6-60 ???? ???? ??
36
???? ???-pp.283
  • void drawArm( )
  •   glMatrixMode(GL_MODELVIEW)
  •   glLoadIdentity( )                          ??
    ??? ?? ???
  •   Draw_Body( )                         
    ?? ???
  •   glPushMatrix( )                          ??
    ??? ??
  •       GoToShoulderCoordinates( )           ?? ??
    ?? ???
  •       Draw_UpperArm( )                  ? ? ???
  •       glPushMatrix( )                      ?? ??
    ?? ??? ??
  •           GoToElbowCoordinates( )        ??? ??
    ?? ???
  •           Draw_LowerArm( )               ??? ???
  •           glPushMatrix( )                   ???
    ?? ?? ??? ??

?? 6-61 ?? ?? 6-62 ??
6-63 II ?? 6-64 III
37
???? ??? (??)
  • ???? ?? ??
  • ? ??? ??? ??? Push
  • ?? ??? ??? ??? Pop

?? 6-66 ???
?? 6-67 ???? ??
38
???? ??? (??)
  • ??? ??? ?? ?? ???? ??
  • http//upload.wikimedia.org/wikipedia/commons/7/78
    /3D_Male_Skeleton_Anatomy.png

Pelvis
39
???? ??? (??)-pp.287-290
  • ???(Solar System)
  • http//www.gamedev.net/reference/programming/featu
    res/oglch3excerpt/page9.asp

Revolution (Day/Year)
Rotation (Time/Day)
Sun
Parent
Earth
Son
(0,0,0)
Parent
0.2
Translation (0.7, 0.0, 0.0)
Revolution (Time/Day)
Moon
Son
?? 6-69 ??, ??, ? ???
40
???? ??? (??)-pp.287-290
  • ???(Solar System) ??
  • ??, ??, ??, ??, ??, ??, ???, ??? ???
  • ?? ???? ??(Size), ??(Color) ? ?? ??(Angle)? ???
  • ??(Sun)???? ?? ?????? ? ??? ??? ??
  • ?? ???? ??(Sun)? ???? Z? ???? ??
  • ??? ?? ?? ?? ? ??(Play), ??? ?? ?? ? ??(Stop)
  • ???? ???? ??? ??? ??? ?? ? ??/??
  • ? ??? ?? ??? ?? ??? ??? ??
  • ?? ??? ?? ??
  • Using the Quadrics ?? http//www.gisdeveloper.co
    .kr/431

41
???? ??? (??)
  • Robot Arm Robot.c ??
  • http//www.opengl.org/resources/code/samples/redbo
    ok/
  • http//www.gamedev.net/reference/programming/featu
    res/oglch3excerpt/page9.asp
  • Scale Parent? ?? ???? ??
  • Robot Arm with Fingers
  • glPushMatrix()
  • glTranslatef (-1.0, 0.0, 0.0) // Pivot ?? ?
    ?? ??
  • glRotatef ((GLfloat) shoulder, 0.0, 0.0, 1.0)
    // ??? ???? ??
  • glTranslatef (1.0, 0.0, 0.0) // Pivot?? ???
    ??? ???? ??
  • glPushMatrix() // ??? ???? ?? ?? ? ??/??
  • glScalef (2.0, 0.4, 1.0)
  • glutWireCube (1.0)
  • glPopMatrix()
  • glTranslatef (1.0, 0.0, 0.0) // Pivot ?? ? ??
    ??
  • glRotatef ((GLfloat) elbow, 0.0, 0.0, 1.0) //
    ??? ???? ??
  • glTranslatef (1.0, 0.0, 0.0) // Pivot?? ???
    ??? ???? ??
  • glPushMatrix() // ??? ???? ?? ?? ? ??/??

42
???? ??? (??)
  • Robot Arm Robot.c ?? (??)
  • XYZ ? ???? ??
  • glColor3f(1.0, 0.0, 0.0)
  • glBegin(GL_LINES)
  • glVertex3f(-2.0, 0.0, 0.0)
  • glVertex3f(2.0, 0.0, 0.0) // X? ??
  • glEnd()
  • glColor3f(0.0, 1.0, 0.0)
  • glBegin(GL_LINES)
  • glVertex3f(0.0, -2.0, 0.0)
  • glVertex3f(0.0, 2.0, 0.0) // Y? ??
  • glEnd()
  • glColor3f(0.0, 0.0, 1.0)
  • glBegin(GL_LINES)
  • glVertex3f(0.0, 0.0, -2.0)
  • glVertex3f(0.0, 0.0, 2.0) // Z? ??
  • glEnd()

43
??? ?? ??- ?? ??-pp.291
  • ?? ???

?? 6-72 ?? ?????
44
?? ???-pp.292
  • ??? ?? ?? ??? ??
  • ?? ??? ??? ?? ??? ?? ???? z?
  • z?? ???? ? ?? ? ???(Projection Plane, View
    Plane)
  • ??? ??? ? ???(View Window) ??? ??
  • ?? ??? y? ? ???? y?? ??.
  • y-z ??? ??? ???? x?

?? 6-73 ??? ?? ???
45
??? ?? ???-pp.296
  • void gluLookAt(
  • GLdouble eyex, GLdouble eyey, GLdouble eyez,
  • // ???? ??
  • GLdouble atx, GLdouble aty, GLdouble atz,
  • // ???? ???? ??? ??
  • GLdouble upx, GLdouble upy, GLdouble upz)
  • // ???? ???(Orientation)

?? 6-80 ??? ?? ???
http//www.xmission.com/nate/tutors.html
46
?? ??, ?? ??, ?? ??-pp.297
  • PWCS MPMCS 
  • PVCS VPWCS VMPMCS  
  • ???? ??? ??
  • glMatrixMode(GL_MODELVIEW)
  • glLoadIdentity( )                                
               I      
  • gluLookAt(0.2 0.0, 0.0,  0.0, 0.0, -100.0,  1.0,
    1.0, .0)     V      
  • glRotatef (45, 0.0, 1.0, 0.0)                    
                  M      
  • glutWireCube(1.0)                                
              PMCS

?? 6-81 ???? ????
47
?? ?? ?? ? ??-pp.298-299
  • ?? ?? ??? ??? ?? ?? ??? ?? ??
  • ?? gluLookAt ??? ?? Keyboard Callback ??? ??
  • Camera? ??? ???? Object(Teapot)? Zoom In/Out ???
    ???? ??
  • Object(Teapot)? ??, Camera? ???? Focus? ??? ??,
    Camera? ?/?/?/? ? ???? ??
  • Camera? ??, Object(Teapot)? ??? ??, Camera? ????
    Focus? ??? ?/?/?/? ? ???? ??
  • Object(Teapot)? ?? ? Camera? ??, Camera? ????
    Focus? ?? ??, Camera? Up Vector(Shutter? ??)?
    ????? ??? ? ?? ??

48
?? ??? ?? ?????-pp.300
  • Orbit(??) ??? ???? ???? ????? ?
  • Polar Coordinate System(? ???)
  • ??? ???(Radius), ???(Azimuth Angle),
    ???(Elevation Angle) ?? ??? ???? ??? ???? ?
  • Void PolarView(GLfloat radius, GLfloat elevation,
    GLfloat azimuth, GLfloat twist)
  • glTranslatef(0.0, 0.0, -radius)
  • glRotatef(-twist, 0.0, 0.0, 1.0)
  • glRotatef(-elevation, 1.0, 0.0, 0.0)
  • glRoatef(-azimuth, 0.0, 0.0, 1.0)
  •  

?? 6-85 ???? ???
?? 6-86 ???? ??
49
?? ?????-pp.293
?? 6-78 Roll, Pitch, Yaw
Roll z ? ?? ?? Pitch x ? ?? ?? Yaw y ?
?? ??
  • ?? ??? ??? ??? ?? x, y, z??? ?? ?? ???? ??
  • ???? ?? ??? ?? ??? ??? ??? ?? ???? ???? ??

50
?? ?????(??)-pp.302
  • ?? ????? ??
  • Void PilotView(GLfloat roll , GLfloat pitch,
    GLfloat yaw)
  • glRotatef(roll, 0.0, 0.0, 1.0)
  • glRotatef(pitch, 0.0, 1.0, 1.0)
  • glRotatef(yaw, 1.0, 0.0, 0.0)
  • glTranslatef(-x, -y, -z)
  •  

?? 6-88 Tilt, Pan, Roll, Dolly
?? 6-89/90 ???, ?? I
?? 6-91/92 Dolly, ?? II
Write a Comment
User Comments (0)
About PowerShow.com