SlideShare a Scribd company logo
1 of 41
Download to read offline
3D object
                     representations
                            Chen Jing-Fung (2006/12/5)
                             Assistant Research Fellow,
                                Digital Media Center,
                          National Taiwan Normal University



                                       Video Processing Lab
                                             臺灣師範大學數位媒體中心視訊處理研究室

Ch8: Computer Graphics with OpenGL 3th, Hearn Baker
Ch6: Interactive Computer Graphics 3th, Addison Wesley
3D objects
• Regular Polyhedrons

  – Solid

  – Mesh surface




                    Video Processing Lab   2
                        臺灣師範大學數位媒體中心視訊處理研究室
Graphics scenes
• Contain many different kinds of objects
  and material surfaces
  – Trees, flowers, clouds, rocks, water, bricks …
• Polygon and quadric surfaces provide
  precise descriptions for simple Euclidean
  objects
  – Polyhedrons & ellipsoids
  – Quadric surfaces (Ex: spline surfaces…)
     • Mathematical method modify those objects



                             Video Processing Lab    3
                                臺灣師範大學數位媒體中心視訊處理研究室
Useful design
   • The constructive solid-geometry
     techniques are useful design
       – Aircraft wings, gear and other
         engineering structures
The F-15 Eagle has a large relatively
                                           Air France 747-200(Boeing)
lightly loaded wing (large and low..)




                  wing loading                   landing gear
                                        Video Processing Lab            4
                                           臺灣師範大學數位媒體中心視訊處理研究室
Polyhedrons
• The most commonly used boundary to show
  3D graphics object
  – A set of surface polygons to enclose the object
    interior
• Simply & speed up the surface rendering
  and display of object
  – Graphics systems store all object descriptions
     • Standard graphics objects




                              Video Processing Lab    5
                                   臺灣師範大學數位媒體中心視訊處理研究室
OpenGL polyhedron
        functions
• Polygon Fill-Area functions
  – OpenGL primitive constants
    • GL_POLYGON, GL_TRIANGLES,
      GL_TRIANGLE_STRIP,
      GL_TRIANGLE_FAN, GL_QUADS and
      GL_QUAD_STRIP
       – All faces compose by a group of parallelograms,
         all faces compose by triangular surfaces or other
         polygon from..



                             Video Processing Lab            6
                                臺灣師範大學數位媒體中心視訊處理研究室
GLUT regular Polyhedron
     functions (1)
• Five regular polyhedrons are pre-defined
  by routines in GLUT library
  – These polyhedrons are also called Platonic
    solids
     • All the faces are same regular polygons
        – All edges are equal, All edge angles are equal and All
          face angles are equal
  – Polyhedron are named according to numberface
     • Ex: regular tetrahedron (4 faces), regular
       hexahedron ( or cube, 6 faces) ….




                                 Video Processing Lab              7
                                     臺灣師範大學數位媒體中心視訊處理研究室
GLUT regular Polyhedron
     functions (2)
 – Each regular polyhedron is described in
   modeling coordinates
    • Each object’s center at world-coordinaate origin
 – Wire-frame object functions
    • glutWire*()
       – Tetrahedron, Octahedron, Dodecahedron and
         Icosahedron
 – Fill areas polyhedron functions
    • glutSolid*()
       – Tetrahedron, Octahedron, Dodecahedron and
         Icosahedron
                                    edgeLength must be pre-defined
         glutWireCube (edgeLength)
         glutSolidCube (edgeLength)


                              Video Processing Lab            8
                                 臺灣師範大學數位媒體中心視訊處理研究室
Design notices
• Display function
  – Set viewing transformation
    • gluLookAt()
• Reshape function
  – glMatrixMode(GL_PROJECTION)
    • 3D projection
       – glFrustum() or glOrtho() ….

              demo


                             Video Processing Lab   9
                                臺灣師範大學數位媒體中心視訊處理研究室
Regular 3D object’s mesh
• What is 3D object’s mesh?
  – Like the object’s skin


• How to construct it?
  – Curved surfaces coordinate
  – What polygon can be used?



                        Video Processing Lab   10
                             臺灣師範大學數位媒體中心視訊處理研究室
Curved surfaces
• General coordinates                    z

  – Cartesian coordinate
                                                 y

• Quadric surfaces                   x

  – Spherical surface
  – Ellipsoid’s surface
  – Torus’s surface


                          Video Processing Lab       11
                             臺灣師範大學數位媒體中心視訊處理研究室
Spherical Surface
• In cartesian coordinates, a spherical
                                z
  surface                          (x,y,z)

  – radius r, any point (x,y,z)                       φ
                                                          y
     • x2+y2+z2=r2                               θ
                                             x
  – Describe the spherical surface
     • x  r cos cos  / 2     / 2
       y  r cos sin     
       z  r sin


                               Video Processing Lab           12
                                  臺灣師範大學數位媒體中心視訊處理研究室
Think!!
• We change the angle φ of the point’s axis
  – the angle range will be                   z
    re-computed                                   φ   (x,y,z)

       x  r cos cos 0                                    y
       y  r cos sin 0    2             θ
                                          x
       z  r sin
  – Want to re-range two angles in 0~1
     • substituting    u,   2 v

                   Why?


                            Video Processing Lab                    13
                               臺灣師範大學數位媒體中心視訊處理研究室
Draw a sphere wire
• Plot longitude and latitude to
  approximates the spherical surface
  as a quadrilateral mesh
  – Divide to three parts
     • Top, floor
        – The primary element is triangle
         Top & floor means covered the surface
     • Side
        – Construct it with rectangles
        – A surface




                                 Video Processing Lab   14
                                    臺灣師範大學數位媒體中心視訊處理研究室
Top (+z) & floor (-z)

               glBegin(GL_TRIANGLE_FAN);
                        glVertex3d(x,y,z);
                        c=3.14159/180.0; //interval Δφ, φ=80.0*c
x  r cos cos         z=sin(c*80.0); // z=+..top, z=-.. floor  Δθ
                        for(thet=-180.0; thet<=180.0;thet+=20.0){
y  r cos sin
                                x=cos(c*80.0)*cos(c*thet);
z  r sin                      y=cos(c*80.0)*sin(c*thet);
                                glVertex3d(x,y,z);
                        }
               glEnd();




                                        Video Processing Lab          15
                                           臺灣師範大學數位媒體中心視訊處理研究室
Side
            for(phi=-80.0; phi<=80.0; phi+=20.0){
                     glBegin(GL_QUAD_STRIP);               Δθ
                     for(thet=-180.0; thet<=180.0;thet+=20.0) {
                              x=cos(c*phi)*cos(c*thet);
                              y=cos(c*phi)*sin(c*thet);
   x2+y2+z2=r2
                              z=sin(c*phi);
x  r cos cos               glVertex3d(x,y,z);
                              x=cos(c*(phi+20.0))*cos(c*thet);
y  r cos sin
                              y=cos(c*(phi+20.0))*sin(c*thet);
z  r sin                    z=sin(c*(phi+20.0));
                              glVertex3d(x,y,z);
                     }
                     glEnd();
            }
                          p5           glBegin(GL_QUAD_STRIP);
              p1     p4            p8 glVertex3d(p1)….
                                      glVertex3d(p8)
                                     glEnd();

             p2      p3 p6
                              p7
                                       Video Processing Lab       16
                                          臺灣師範大學數位媒體中心視訊處理研究室
Advantage of this design
• Put each design component to list
  function in initial function
  – Ex: top, floor or side
• In display function call our design to
  let them move
• Next page will show how to design


                         Video Processing Lab   17
                             臺灣師範大學數位媒體中心視訊處理研究室
Display architecture

                                   Display-processor architecture
Simple graphics architecture
                               server
                                              Display
server                                       processor
                                Host
 Host                                          (DPU)



                                            Display file
  Immediate mode                            (display list)
  Ex : progressive
                                           Retained mode
                                            Ex : interlace


                                  Video Processing Lab              18
                                        臺灣師範大學數位媒體中心視訊處理研究室
Definition & execution of
       display lists
• Display lists have much in common
  with ordinary files.
  – Define (create)
    • What contents of display list
  – Manipulate (place information in)
    • What functions of display lists
       – Such as: flexible enough….




                            Video Processing Lab   19
                               臺灣師範大學數位媒體中心視訊處理研究室
OpenGL display lists
  • Display lists in OpenGL are defined
    similarly to geometric primitive
                                         Display function:
Object’s name in the list
                                         *Each time that we wish to draw:
  glNewList(BOX, flag);                  (Ex: do transformation or set up time
                                         control…)
    glBegin(GL_POLYGON)
             GL_COMPILE: send list       glCallList(BOX);
     …       to server, not to display   Matrix and attribute stacks:
    glEnd(); GL_COMPILE_AND_EXE glPushAttrib(GL_ALL_ATTRIB_BITS);
              CUTE: immediate display glPushMatrix();
  glEndList();
                                         Display list function:
                                         glPopAttrib();
                                         glPopMatrix();
                                         Video Processing Lab               20
                                            臺灣師範大學數位媒體中心視訊處理研究室
OpenGL GLUT Quadric-
Surface sphere functions
• GLUT sphere functions
  – Approximate the spherical surface as a
    quadrilateral mesh
  – glutWireSphere (r,nLongitudes, nLatitudes);
    glutSolidSphere (…)
     • r (sphere radius): double or float point
     • nLongitudes & nLatitudes: the integer number about
       longitude lines & latitude lines
  – The sphere is defined in modeling coordinates,
    centered at the originworld-coordinate with its polar
    axis along the z-axis



                              Video Processing Lab          21
                                 臺灣師範大學數位媒體中心視訊處理研究室
height
   GLUT Cone functions
                                                                     rBase


• GLUT cone is obtained with
  – glutWireCone(rBase,height,nLongitudes,nLatitudes);
    glutSolidCone(…);
     • rbase & height: float or double
     • nLongitudes & nLatitudes: integer Ex: 5, 6
        – Each latitude line is parallel with theirseves
     • the quadrilateral mesh approximation




                                 Video Processing Lab               22
                                    臺灣師範大學數位媒體中心視訊處理研究室
Ellipsoid’s surface
• Describe it an extension of a
  spherical surface            z
  – Three radii                                     rz

  – In Cartesian coordinates                   rx               y
                      2                                    ry
        x y z
             2               2

              1
                                             x
         rx   ry   rz 

  – Representation by two angle (φ&θ)
       x  rx cos  cos   / 2     / 2
       y  ry cos  sin     
       z  rz sin        This mesh is similar the spherical mesh
                                 Video Processing Lab               23
                                    臺灣師範大學數位媒體中心視訊處理研究室
Torus’s surface (1)                                                         raxial



 • What is Torus?
   – a doughnut-shaped object or called ring
   – Describe the surface
     • rotating a circle or an ellipse about a co-
       planar axis line
          z axis

                              (0,y,z)
                        r φ                                    0                     y axis
                                                                       (x,y,z)
           0                            y axis                     θ
               raxial
                                                                   x axis
          Side view
                                                             Top view
                                                 Video Processing Lab                     24
                                                    臺灣師範大學數位媒體中心視訊處理研究室
Torus’s surface (2)                                        raxial



• In Cartesian equation
           ( x 2  y 2  raxial )2  z2  r 2

• Using a circular cross section
      x  (raxial  r cos  )cos           
      y  (raxial  r cos  )sin           
      z  r sin




                                     Video Processing Lab            25
                                         臺灣師範大學數位媒體中心視訊處理研究室
• If generate a torus by rotating an
  ellipse & round circle about the z axis
  – In Cartesian equation
                                 2
            x2  y 2  r          z 2
                        axial
                                    1
                 ry               rz 
                                

  – The torus with an elliptical cross section
          x  (raxial  ry cos  )cos           
          y  (raxial  ry cos  )sin           
          z  rz sin 
                                     Video Processing Lab   26
                                        臺灣師範大學數位媒體中心視訊處理研究室
GLUT torus                                                rout

                                                                   rin

   functions
• Wire-frame or surface-shaded displays of a
  torus with a circular cross section
  – glutWireTorus(rCrossSection, rAxial,
    nConcentrics,nRadialSlices);
    glutSolidTorus(…);
     • rcrossSection (=inner Radius)& rAxial (=outer Radius)
         – float or double
     • nConcentrics(sides) & nRadialSlices(rings)
         – Integer
         – sides is parallel together(nCon..: the number of sides),
           nRadial..: the number of rings


                                     Video Processing Lab                27
                                        臺灣師範大學數位媒體中心視訊處理研究室
GLU Quadric-Surface
       functions
• Quadric surface can used GLU functions to
  design
  – Assign a name to the quadric
  – Activate the GLU quadric render
  – Designate values for surface parameters
• Set other parameter values to control the
  appearance of a GLU quadric surface.



                          Video Processing Lab   28
                             臺灣師範大學數位媒體中心視訊處理研究室
Some GLU functions
• Sphere:
  – gluSphere(name,r,nLongitudes,nLatitudes);
• Cylinder:
  – gluCylinder(name,rBase,rTop,height,
    nLongitudes,nLatitudes);
• A section of ring:
  – gluPartialDisk(name, rin,rout,nRadii,nRings, Anglestart,
    Anglesweep);



                               Video Processing Lab        29
                                  臺灣師範大學數位媒體中心視訊處理研究室
How to use?
• Example: to draw the sphere
    GLUquadricObj *sphere1;
    sphere1 = gluNewQuadric ();
    gluQuadricDrawStyle(sphere1, display mode);
    gluSphere(sphere1,…);
    gluQuadricOrientation(sphere1, normalvectordirection);//signal face surface
    gluQuadricNormal(sphere1, generationMode);//total object
    pluDeleteQuadric (sphere1);//delete the object
      • Display mode:
           – GLU_LINE, GLU_POINT, GLU_FULL
      • Normal vector direction
           – GLU_OUTSIDE or GLU_INSIDE (inside: back-face,
             outside:fact-face)
      • General mode
           – default=GLU_NONE, flat surface=GLU_FLAT(object of
             constant color)



                                        Video Processing Lab                  30
                                            臺灣師範大學數位媒體中心視訊處理研究室
Approximation of a sphere
  by recursive subdivision

• Recursive subdivision is a powerful
  technique for generating
  approximations to curves and
  surfaces to any desired level of
  accuracy
  – Start from four equilateral triangles (a
    tetrahedron)
    • Four vertices (points) in unit sphere:
     (0,0,1),(0,2 2 / 3, 1/ 3),( 6 / 3,  2 / 3, 1/ 3),( 6 / 3,  2 / 3, 1/ 3)


                                         Video Processing Lab                        31
                                             臺灣師範大學數位媒體中心視訊處理研究室
Triangle -> tetrahedron

void triangle( point a, point b, point             void tetrahedron() {
c)// display one triangle using a line                      triangle(v[0],v[1],v[2]);
loop for wire frame                                         triangle(v[3],v[2],v[1]);
{                                                           triangle(v[0],v[3],v[1]);
glBegin(GL_LINE_LOOP);                                      triangle(v[0],v[2],v[3]);
                                                   }
      glVertex3fv(a);
      glVertex3fv(b);                    v0
      glVertex3fv(c);
    glEnd();
}

                           v1                 v2      v3


                                                   Video Processing Lab                 32
                                                       臺灣師範大學數位媒體中心視訊處理研究室
void normal(point p){                       void tetrahedron( int m){
/* normalize a vector */                    /* Apply triangle subdivision to faces of
   double sqrt();                           tetrahedron */
   float d =0.0;                               divide_triangle(v[0], v[1], v[2], m);
   int i;                                      divide_triangle(v[3], v[2], v[1], m);
   for(i=0; i<3; i++) d+=p[i]*p[i];            divide_triangle(v[0], v[3], v[1], m);
   d=sqrt(d);                                  divide_triangle(v[0], v[2], v[3], m);}
   if(d>0.0) for(i=0; i<3; i++) p[i]/=d;}
                            void divide_triangle(point a, point b, point c, int m){
               p
 Vnor                       /* triangle subdivision using vertex numbers
           det(p)            righthand rule applied to create outward pointing faces */
                                point v1, v2, v3;
              v0                int j;
                                if(m>0) {
                                    for(j=0; j<3; j++) v1[j]=a[j]+b[j];
                                    normal(v1);
                                    for(j=0; j<3; j++) v2[j]=a[j]+c[j];
                        v3          normal(v2);
 v1              v2
                                    for(j=0; j<3; j++) v3[j]=b[j]+c[j];
                                     normal(v3);
                                    divide_triangle(a, v1, v2, m-1);
                                    divide_triangle(c, v2, v3, m-1);
                                    divide_triangle(b, v3, v1, m-1);
                                    divide_triangle(v1, v3, v2, m-1); }
                                else(triangle(a,b,c)); /* draw triangle at end of recursion */}
                                                   Video Processing Lab                    33
                                                       臺灣師範大學數位媒體中心視訊處理研究室
Approximate object
• Recursive subdivision
  – We could design a object’s surface
    numbers.
  – Recursive from coarse to fine
• Mesh object related its surface
  – Direction: Longitude and latitude



                       Video Processing Lab   34
                          臺灣師範大學數位媒體中心視訊處理研究室
How to plot 3D object
• Take apart of object to several polygon
  facets
  – First, list the vertices to show one surface
     • primitive:
         – GL_POLYGON, GL_QUADS or GL_TRIANGLES…
         – Function: glVertex3* (pointcoordinate)
             » Key point: triangle: 3 points or triangle+quadrangle
  – Second, list its surface direction
     • Find function about the approximate point
         – Ex: approximate sphere glNormal3* (normcoordinate)
     • Surface function construct from those vertices


                                  Video Processing Lab                35
                                     臺灣師範大學數位媒體中心視訊處理研究室
Homework 1
       • Draw two object’s mesh (wire & solid)
name             Implicit function (F=0)                                   Parametric form                            v range u range
Hyperboloid                                                                (sec(v )cos(u ),sec(v )sin(u ), (  / 2, / 2)
                                    x2+y2-z2-1                                                             (  , )
                                                                           tan(v ))
Elliptic cone                         x2+y2-z2                              (v cos(u ),v sin(u ),v )                  any real nums,( , )

Hyperbolic                                                                                                             v  0,( , )
                                    -x2+y2-z                               (v tan(u ),v sec(u ),v 2 )
superellipsoid   x   2 / s2
                               y         
                                    2 / s2 s2 / s1
                                                        z   2 / s1
                                                                      1
                                                                           (coss1 (v )coss2 (u ),coss1 (v )sins2 (u ), (  / 2, / 2),(  , )
                                                                           sins1 (v ))                                s1, s2 : 0.5 ~ 3.0(# 6)
superhyperbol                                 s2 / s1                      (sec s (v )sec s (u ),sec s (v )tans (u ), v : (  / 2, / 2)
                  x 2 / s2  y 2 / s2                  z2 / s1  1
                                                                                 1        2          1         2



oid                                                                      tans1 (v ))                               u : sheet#1 or sheet#2

                                                                                                                   sheet #1: ( / 2, / 2)
                                                                                                                   sheet # 2 : ( / 2,3 / 2)
                                      Superellipse demo

                                                                                Video Processing Lab                                      36
                                                                                         臺灣師範大學數位媒體中心視訊處理研究室
Homework 2
• Practice “Recursive subdivision”
  – Draw a magic box
    • Hint: Some things jump out the cube or this
      box’s sub-part can be rotated




                         Video Processing Lab       37
                            臺灣師範大學數位媒體中心視訊處理研究室
Appendix
name             Implicit function (F=0)   Parametric form                   v, u range
Ellipsoid                                  (cos(v )cos(u ),cos(v )sin(u ),   v : (  / 2, / 2)
                        x2+y2+z2-1         sin(v ))                          u : (  , )

Hyperboloid of                                                               v : (  / 2, / 2)
                        x2+y2-z2-1         (sec(v )cos(u ),sec(v )sin(u ),
one sheet                                  tan(v ))                          u : (  , )
Hyperboloid of                             (sec(v )cos(u ),sec(v )tan(u ),   v : ( / 2, / 2)
                        x2-y2-z2-1                                                            
two sheet                                  tan(v ))                          sheet# 1: u : (   , )
                                                                                              2 2
                                                                                              3
                                                                             sheet# 2 : u : ( , )
                                                                                             2 2




            Ellipsoid         Hyperboloid of one sheet      Hyperboloid of two sheet
                                               Video Processing Lab                                38
Ch9: Computer Graphics, Hill                          臺灣師範大學數位媒體中心視訊處理研究室
name               Implicit function (F=0)      Parametric form               v, u range
Elliptic cone                                                                  v : any real
                          x2+y2-z2               (v cos(u ),v sin(u ),v )
                                                                               u : (  , )
Elliptic                  x2+y2-z                (v cos(u ),v sin(u ),v 2 )
                                                                                  v0
paraboloid                                                                        u : (  , )
Hyperboloid                                                                       v0
                          -x2+y2-z               (v tan(u ),v sec(u ),v )2
paraboloid                                                                        u : (  , )




                                     Elliptic paraboloid
                Elliptic cone                                       Hyperboloid paraboloid
                                                 Video Processing Lab                             39
                                                    臺灣師範大學數位媒體中心視訊處理研究室
s1, s2 : 0.5 ~ 2.5(# 5)

superellipsoid
                     x   2 / s2
                                   y         
                                        2 / s2 s2 / s1
                                                         z   2 / s1
                                                                       1
                                                                            (coss1 (v )coss2 (u ),coss1 (v )sins2 (u ),
                                                                            sins1 (v ))
                                                                                                                          v : (  / 2, / 2)
                                                                                                                          u : (  , )
Superhyperbo                       s2 / s1             (sec s1 (v )coss2 (u ),sec s1 (v )sins2 (u ),                      v : (  / 2, / 2)
loid of one  x 2 / s2
                       y 2 / s2
                                          z 2 / s1
                                                     1 s
                                                     tan 1 (v ))                                                        u : (  , )
sheet




                                                         superellipsoid




                                    Superhyperboloid of one sheet
                                                             Video Processing Lab                                                      40
                                                                                          臺灣師範大學數位媒體中心視訊處理研究室
s1, s2 : 0.5 ~ 2.5(# 5)                                 u : sheet # 2 : ( / 2,3 / 2)
                                                                                          u : sheet #1: ( / 2, / 2)

superhyperbo                         s2 / s1              (sec s (v )sec s (u ),sec s (v )tans (u ), v : (  / 2, / 2)
                                                                  1             2     1           2



loid
              x 2 / s2  y 2 / s2           z2 / s1  1 s
                                                        tan (v ))
                                                              1                                      u : sheet#1 or sheet#2

                                        s2 / 2                   ((d  coss1 (v ))coss2 (u ),
                     ( x
                     2/s
                      
                             2
                                 y
                                2/s   2
                                          
                                                 d)2/s1
                                                                                                               v : (  , )
 Supertorus                                                       (d  coss1 (v ))sins2 (u ),
                                                                                                               u : (  , )
                      z 2 / s1  1                                   sins1 (v ))




                                              superhyperboloid




                                                 Supertorus
                                                                      Video Processing Lab                                 41
                                                                           臺灣師範大學數位媒體中心視訊處理研究室

More Related Content

What's hot

Learning Moving Cast Shadows for Foreground Detection (VS 2008)
Learning Moving Cast Shadows for Foreground Detection (VS 2008)Learning Moving Cast Shadows for Foreground Detection (VS 2008)
Learning Moving Cast Shadows for Foreground Detection (VS 2008)Jia-Bin Huang
 
C O M P U T E R G R A P H I C S J N T U M O D E L P A P E R{Www
C O M P U T E R  G R A P H I C S  J N T U  M O D E L  P A P E R{WwwC O M P U T E R  G R A P H I C S  J N T U  M O D E L  P A P E R{Www
C O M P U T E R G R A P H I C S J N T U M O D E L P A P E R{Wwwguest3f9c6b
 
Lecture01 intro ece
Lecture01 intro eceLecture01 intro ece
Lecture01 intro eceKesava Shiva
 
改进的固定点图像复原算法_英文_阎雪飞
改进的固定点图像复原算法_英文_阎雪飞改进的固定点图像复原算法_英文_阎雪飞
改进的固定点图像复原算法_英文_阎雪飞alen yan
 
Tennis video shot classification based on support vector
Tennis video shot classification based on support vectorTennis video shot classification based on support vector
Tennis video shot classification based on support vectores712
 
Camera calibration from a single image based on coupled line cameras and rect...
Camera calibration from a single image based on coupled line cameras and rect...Camera calibration from a single image based on coupled line cameras and rect...
Camera calibration from a single image based on coupled line cameras and rect...Joo-Haeng Lee
 
image segmentation
image segmentationimage segmentation
image segmentationarpanmankar
 
Computer Graphics Practical
Computer Graphics PracticalComputer Graphics Practical
Computer Graphics PracticalNeha Sharma
 
Rear View Virtual Image Displays
Rear View Virtual Image DisplaysRear View Virtual Image Displays
Rear View Virtual Image DisplaysGa S
 
Class[5][9th jul] [three js-meshes_geometries_and_primitives]
Class[5][9th jul] [three js-meshes_geometries_and_primitives]Class[5][9th jul] [three js-meshes_geometries_and_primitives]
Class[5][9th jul] [three js-meshes_geometries_and_primitives]Saajid Akram
 
Mesh final pzn_geo1004_2015_f3_2017
Mesh final pzn_geo1004_2015_f3_2017Mesh final pzn_geo1004_2015_f3_2017
Mesh final pzn_geo1004_2015_f3_2017Pirouz Nourian
 
[Review] BoxInst: High-Performance Instance Segmentation with Box Annotations...
[Review] BoxInst: High-Performance Instance Segmentation with Box Annotations...[Review] BoxInst: High-Performance Instance Segmentation with Box Annotations...
[Review] BoxInst: High-Performance Instance Segmentation with Box Annotations...Dongmin Choi
 
Lecture on graphics
Lecture on graphicsLecture on graphics
Lecture on graphicsRafi_Dar
 
Trident International Graphics Workshop 2014 4/5
Trident International Graphics Workshop 2014 4/5Trident International Graphics Workshop 2014 4/5
Trident International Graphics Workshop 2014 4/5Takao Wada
 
Computer Graphics Concepts
Computer Graphics ConceptsComputer Graphics Concepts
Computer Graphics ConceptsSHAKOOR AB
 

What's hot (19)

Learning Moving Cast Shadows for Foreground Detection (VS 2008)
Learning Moving Cast Shadows for Foreground Detection (VS 2008)Learning Moving Cast Shadows for Foreground Detection (VS 2008)
Learning Moving Cast Shadows for Foreground Detection (VS 2008)
 
C O M P U T E R G R A P H I C S J N T U M O D E L P A P E R{Www
C O M P U T E R  G R A P H I C S  J N T U  M O D E L  P A P E R{WwwC O M P U T E R  G R A P H I C S  J N T U  M O D E L  P A P E R{Www
C O M P U T E R G R A P H I C S J N T U M O D E L P A P E R{Www
 
Lecture01 intro ece
Lecture01 intro eceLecture01 intro ece
Lecture01 intro ece
 
改进的固定点图像复原算法_英文_阎雪飞
改进的固定点图像复原算法_英文_阎雪飞改进的固定点图像复原算法_英文_阎雪飞
改进的固定点图像复原算法_英文_阎雪飞
 
Tennis video shot classification based on support vector
Tennis video shot classification based on support vectorTennis video shot classification based on support vector
Tennis video shot classification based on support vector
 
Opencv
OpencvOpencv
Opencv
 
Camera calibration from a single image based on coupled line cameras and rect...
Camera calibration from a single image based on coupled line cameras and rect...Camera calibration from a single image based on coupled line cameras and rect...
Camera calibration from a single image based on coupled line cameras and rect...
 
CS 354 Typography
CS 354 TypographyCS 354 Typography
CS 354 Typography
 
image segmentation
image segmentationimage segmentation
image segmentation
 
Computer Graphics Practical
Computer Graphics PracticalComputer Graphics Practical
Computer Graphics Practical
 
Introduction to OpenCV
Introduction to OpenCVIntroduction to OpenCV
Introduction to OpenCV
 
Rear View Virtual Image Displays
Rear View Virtual Image DisplaysRear View Virtual Image Displays
Rear View Virtual Image Displays
 
Class[5][9th jul] [three js-meshes_geometries_and_primitives]
Class[5][9th jul] [three js-meshes_geometries_and_primitives]Class[5][9th jul] [three js-meshes_geometries_and_primitives]
Class[5][9th jul] [three js-meshes_geometries_and_primitives]
 
Mesh final pzn_geo1004_2015_f3_2017
Mesh final pzn_geo1004_2015_f3_2017Mesh final pzn_geo1004_2015_f3_2017
Mesh final pzn_geo1004_2015_f3_2017
 
JavaYDL13
JavaYDL13JavaYDL13
JavaYDL13
 
[Review] BoxInst: High-Performance Instance Segmentation with Box Annotations...
[Review] BoxInst: High-Performance Instance Segmentation with Box Annotations...[Review] BoxInst: High-Performance Instance Segmentation with Box Annotations...
[Review] BoxInst: High-Performance Instance Segmentation with Box Annotations...
 
Lecture on graphics
Lecture on graphicsLecture on graphics
Lecture on graphics
 
Trident International Graphics Workshop 2014 4/5
Trident International Graphics Workshop 2014 4/5Trident International Graphics Workshop 2014 4/5
Trident International Graphics Workshop 2014 4/5
 
Computer Graphics Concepts
Computer Graphics ConceptsComputer Graphics Concepts
Computer Graphics Concepts
 

Viewers also liked

3D Graphics : Computer Graphics Fundamentals
3D Graphics : Computer Graphics Fundamentals3D Graphics : Computer Graphics Fundamentals
3D Graphics : Computer Graphics FundamentalsMuhammed Afsal Villan
 
Multimedia animation basic concepts
Multimedia   animation basic conceptsMultimedia   animation basic concepts
Multimedia animation basic conceptsDemarch Daguinotas
 
Iccv2009 recognition and learning object categories p1 c03 - 3d object models
Iccv2009 recognition and learning object categories   p1 c03 - 3d object modelsIccv2009 recognition and learning object categories   p1 c03 - 3d object models
Iccv2009 recognition and learning object categories p1 c03 - 3d object modelszukun
 
Chapter02 graphics-programming
Chapter02 graphics-programmingChapter02 graphics-programming
Chapter02 graphics-programmingMohammed Romi
 
On NURBS Geometry Representation in 3D modelling
On NURBS Geometry Representation in 3D modellingOn NURBS Geometry Representation in 3D modelling
On NURBS Geometry Representation in 3D modellingPirouz Nourian
 
Computer Graphics
Computer GraphicsComputer Graphics
Computer GraphicsAdri Jovin
 
Lecture filling algorithms
Lecture  filling algorithmsLecture  filling algorithms
Lecture filling algorithmsavelraj
 
3D transformation in computer graphics
3D transformation in computer graphics3D transformation in computer graphics
3D transformation in computer graphicsSHIVANI SONI
 

Viewers also liked (12)

3D Graphics : Computer Graphics Fundamentals
3D Graphics : Computer Graphics Fundamentals3D Graphics : Computer Graphics Fundamentals
3D Graphics : Computer Graphics Fundamentals
 
Multimedia animation basic concepts
Multimedia   animation basic conceptsMultimedia   animation basic concepts
Multimedia animation basic concepts
 
1422798749.2779lecture 5
1422798749.2779lecture 51422798749.2779lecture 5
1422798749.2779lecture 5
 
Iccv2009 recognition and learning object categories p1 c03 - 3d object models
Iccv2009 recognition and learning object categories   p1 c03 - 3d object modelsIccv2009 recognition and learning object categories   p1 c03 - 3d object models
Iccv2009 recognition and learning object categories p1 c03 - 3d object models
 
07object3d
07object3d07object3d
07object3d
 
3 d transformations
3 d transformations3 d transformations
3 d transformations
 
Chapter02 graphics-programming
Chapter02 graphics-programmingChapter02 graphics-programming
Chapter02 graphics-programming
 
On NURBS Geometry Representation in 3D modelling
On NURBS Geometry Representation in 3D modellingOn NURBS Geometry Representation in 3D modelling
On NURBS Geometry Representation in 3D modelling
 
Computer Graphics
Computer GraphicsComputer Graphics
Computer Graphics
 
Lecture filling algorithms
Lecture  filling algorithmsLecture  filling algorithms
Lecture filling algorithms
 
Object representations
Object representationsObject representations
Object representations
 
3D transformation in computer graphics
3D transformation in computer graphics3D transformation in computer graphics
3D transformation in computer graphics
 

Similar to CG OpenGL 3D object representations-course 8

CG OpenGL line & area-course 3
CG OpenGL line & area-course 3CG OpenGL line & area-course 3
CG OpenGL line & area-course 3fungfung Chen
 
CG OpenGL polar curves & input display color-course 4
CG OpenGL polar curves & input display color-course 4CG OpenGL polar curves & input display color-course 4
CG OpenGL polar curves & input display color-course 4fungfung Chen
 
CG OpneGL 2D viewing & simple animation-course 6
CG OpneGL 2D viewing & simple animation-course 6CG OpneGL 2D viewing & simple animation-course 6
CG OpneGL 2D viewing & simple animation-course 6fungfung Chen
 
CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9fungfung Chen
 
CG OpenGL vectors geometric & transformations-course 5
CG OpenGL vectors geometric & transformations-course 5CG OpenGL vectors geometric & transformations-course 5
CG OpenGL vectors geometric & transformations-course 5fungfung Chen
 
CG simple openGL point & line-course 2
CG simple openGL point & line-course 2CG simple openGL point & line-course 2
CG simple openGL point & line-course 2fungfung Chen
 
GPU Accelerated Domain Decomposition
GPU Accelerated Domain DecompositionGPU Accelerated Domain Decomposition
GPU Accelerated Domain DecompositionRichard Southern
 
CG OpenGL Shadows + Light + Texture -course 10
CG OpenGL Shadows + Light + Texture -course 10CG OpenGL Shadows + Light + Texture -course 10
CG OpenGL Shadows + Light + Texture -course 10fungfung Chen
 
Modern OpenGL Usage: Using Vertex Buffer Objects Well
Modern OpenGL Usage: Using Vertex Buffer Objects Well Modern OpenGL Usage: Using Vertex Buffer Objects Well
Modern OpenGL Usage: Using Vertex Buffer Objects Well Mark Kilgard
 
OpenGL L02-Transformations
OpenGL L02-TransformationsOpenGL L02-Transformations
OpenGL L02-TransformationsMohammad Shaker
 
CS 354 Transformation, Clipping, and Culling
CS 354 Transformation, Clipping, and CullingCS 354 Transformation, Clipping, and Culling
CS 354 Transformation, Clipping, and CullingMark Kilgard
 
VRP2013 - Comp Aspects VRP
VRP2013 - Comp Aspects VRPVRP2013 - Comp Aspects VRP
VRP2013 - Comp Aspects VRPVictor Pillac
 
Java3 d 1
Java3 d 1Java3 d 1
Java3 d 1Por Non
 
Trident International Graphics Workshop 2014 2/5
Trident International Graphics Workshop 2014 2/5Trident International Graphics Workshop 2014 2/5
Trident International Graphics Workshop 2014 2/5Takao Wada
 
Weakly supervised semantic segmentation of 3D point cloud
Weakly supervised semantic segmentation of 3D point cloudWeakly supervised semantic segmentation of 3D point cloud
Weakly supervised semantic segmentation of 3D point cloudArithmer Inc.
 
動画像理解のための深層学習アプローチ Deep learning approaches to video understanding
動画像理解のための深層学習アプローチ Deep learning approaches to video understanding動画像理解のための深層学習アプローチ Deep learning approaches to video understanding
動画像理解のための深層学習アプローチ Deep learning approaches to video understandingToru Tamaki
 
CA301_CG_Filled Area Primitives-New.pptx
CA301_CG_Filled Area Primitives-New.pptxCA301_CG_Filled Area Primitives-New.pptx
CA301_CG_Filled Area Primitives-New.pptxKaushikiJha3
 
Class 18: Measuring Cost
Class 18: Measuring CostClass 18: Measuring Cost
Class 18: Measuring CostDavid Evans
 

Similar to CG OpenGL 3D object representations-course 8 (20)

CG OpenGL line & area-course 3
CG OpenGL line & area-course 3CG OpenGL line & area-course 3
CG OpenGL line & area-course 3
 
CG OpenGL polar curves & input display color-course 4
CG OpenGL polar curves & input display color-course 4CG OpenGL polar curves & input display color-course 4
CG OpenGL polar curves & input display color-course 4
 
CG OpneGL 2D viewing & simple animation-course 6
CG OpneGL 2D viewing & simple animation-course 6CG OpneGL 2D viewing & simple animation-course 6
CG OpneGL 2D viewing & simple animation-course 6
 
CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9
 
CG OpenGL vectors geometric & transformations-course 5
CG OpenGL vectors geometric & transformations-course 5CG OpenGL vectors geometric & transformations-course 5
CG OpenGL vectors geometric & transformations-course 5
 
CG simple openGL point & line-course 2
CG simple openGL point & line-course 2CG simple openGL point & line-course 2
CG simple openGL point & line-course 2
 
GPU Accelerated Domain Decomposition
GPU Accelerated Domain DecompositionGPU Accelerated Domain Decomposition
GPU Accelerated Domain Decomposition
 
CG OpenGL Shadows + Light + Texture -course 10
CG OpenGL Shadows + Light + Texture -course 10CG OpenGL Shadows + Light + Texture -course 10
CG OpenGL Shadows + Light + Texture -course 10
 
Modern OpenGL Usage: Using Vertex Buffer Objects Well
Modern OpenGL Usage: Using Vertex Buffer Objects Well Modern OpenGL Usage: Using Vertex Buffer Objects Well
Modern OpenGL Usage: Using Vertex Buffer Objects Well
 
OpenGL L02-Transformations
OpenGL L02-TransformationsOpenGL L02-Transformations
OpenGL L02-Transformations
 
CS 354 Transformation, Clipping, and Culling
CS 354 Transformation, Clipping, and CullingCS 354 Transformation, Clipping, and Culling
CS 354 Transformation, Clipping, and Culling
 
Isvc08
Isvc08Isvc08
Isvc08
 
VRP2013 - Comp Aspects VRP
VRP2013 - Comp Aspects VRPVRP2013 - Comp Aspects VRP
VRP2013 - Comp Aspects VRP
 
Java3 d 1
Java3 d 1Java3 d 1
Java3 d 1
 
Trident International Graphics Workshop 2014 2/5
Trident International Graphics Workshop 2014 2/5Trident International Graphics Workshop 2014 2/5
Trident International Graphics Workshop 2014 2/5
 
Vectorization in ATLAS
Vectorization in ATLASVectorization in ATLAS
Vectorization in ATLAS
 
Weakly supervised semantic segmentation of 3D point cloud
Weakly supervised semantic segmentation of 3D point cloudWeakly supervised semantic segmentation of 3D point cloud
Weakly supervised semantic segmentation of 3D point cloud
 
動画像理解のための深層学習アプローチ Deep learning approaches to video understanding
動画像理解のための深層学習アプローチ Deep learning approaches to video understanding動画像理解のための深層学習アプローチ Deep learning approaches to video understanding
動画像理解のための深層学習アプローチ Deep learning approaches to video understanding
 
CA301_CG_Filled Area Primitives-New.pptx
CA301_CG_Filled Area Primitives-New.pptxCA301_CG_Filled Area Primitives-New.pptx
CA301_CG_Filled Area Primitives-New.pptx
 
Class 18: Measuring Cost
Class 18: Measuring CostClass 18: Measuring Cost
Class 18: Measuring Cost
 

More from fungfung Chen

Smart TV content converged service & social media
Smart TV content converged service & social mediaSmart TV content converged service & social media
Smart TV content converged service & social mediafungfung Chen
 
Tips for fulfilling patent application
Tips for fulfilling patent applicationTips for fulfilling patent application
Tips for fulfilling patent applicationfungfung Chen
 
Defending your Rights
Defending your RightsDefending your Rights
Defending your Rightsfungfung Chen
 
Polishing search skills
Polishing search skillsPolishing search skills
Polishing search skillsfungfung Chen
 
Inquiry Based Approach - Patent Search
Inquiry Based Approach - Patent SearchInquiry Based Approach - Patent Search
Inquiry Based Approach - Patent Searchfungfung Chen
 
Overseas protection & patent search
Overseas protection & patent searchOverseas protection & patent search
Overseas protection & patent searchfungfung Chen
 
Patentability classification search
Patentability classification searchPatentability classification search
Patentability classification searchfungfung Chen
 
Novelty to Nonobviousness
Novelty to NonobviousnessNovelty to Nonobviousness
Novelty to Nonobviousnessfungfung Chen
 
Patentability requirement on novelty
Patentability requirement on noveltyPatentability requirement on novelty
Patentability requirement on noveltyfungfung Chen
 
2012 Smart TV - Evolution & Approaches
2012 Smart TV - Evolution & Approaches2012 Smart TV - Evolution & Approaches
2012 Smart TV - Evolution & Approachesfungfung Chen
 
Patentability Requirements
Patentability RequirementsPatentability Requirements
Patentability Requirementsfungfung Chen
 
Working model to patentability
Working model to patentabilityWorking model to patentability
Working model to patentabilityfungfung Chen
 
Evaluate your invention
Evaluate your inventionEvaluate your invention
Evaluate your inventionfungfung Chen
 
how to invention & practice it
how to invention & practice ithow to invention & practice it
how to invention & practice itfungfung Chen
 
Digital converge - DTV service design
Digital converge - DTV service designDigital converge - DTV service design
Digital converge - DTV service designfungfung Chen
 
Hybrid digital broadcasting methods
Hybrid digital broadcasting methodsHybrid digital broadcasting methods
Hybrid digital broadcasting methodsfungfung Chen
 
Summary the challenges of Social TV
Summary the challenges of  Social TVSummary the challenges of  Social TV
Summary the challenges of Social TVfungfung Chen
 
Agile comparison with requriement approaches
Agile comparison with requriement approachesAgile comparison with requriement approaches
Agile comparison with requriement approachesfungfung Chen
 
Agile estimating user stories
Agile estimating user storiesAgile estimating user stories
Agile estimating user storiesfungfung Chen
 

More from fungfung Chen (20)

Tech biz patent
Tech biz patent Tech biz patent
Tech biz patent
 
Smart TV content converged service & social media
Smart TV content converged service & social mediaSmart TV content converged service & social media
Smart TV content converged service & social media
 
Tips for fulfilling patent application
Tips for fulfilling patent applicationTips for fulfilling patent application
Tips for fulfilling patent application
 
Defending your Rights
Defending your RightsDefending your Rights
Defending your Rights
 
Polishing search skills
Polishing search skillsPolishing search skills
Polishing search skills
 
Inquiry Based Approach - Patent Search
Inquiry Based Approach - Patent SearchInquiry Based Approach - Patent Search
Inquiry Based Approach - Patent Search
 
Overseas protection & patent search
Overseas protection & patent searchOverseas protection & patent search
Overseas protection & patent search
 
Patentability classification search
Patentability classification searchPatentability classification search
Patentability classification search
 
Novelty to Nonobviousness
Novelty to NonobviousnessNovelty to Nonobviousness
Novelty to Nonobviousness
 
Patentability requirement on novelty
Patentability requirement on noveltyPatentability requirement on novelty
Patentability requirement on novelty
 
2012 Smart TV - Evolution & Approaches
2012 Smart TV - Evolution & Approaches2012 Smart TV - Evolution & Approaches
2012 Smart TV - Evolution & Approaches
 
Patentability Requirements
Patentability RequirementsPatentability Requirements
Patentability Requirements
 
Working model to patentability
Working model to patentabilityWorking model to patentability
Working model to patentability
 
Evaluate your invention
Evaluate your inventionEvaluate your invention
Evaluate your invention
 
how to invention & practice it
how to invention & practice ithow to invention & practice it
how to invention & practice it
 
Digital converge - DTV service design
Digital converge - DTV service designDigital converge - DTV service design
Digital converge - DTV service design
 
Hybrid digital broadcasting methods
Hybrid digital broadcasting methodsHybrid digital broadcasting methods
Hybrid digital broadcasting methods
 
Summary the challenges of Social TV
Summary the challenges of  Social TVSummary the challenges of  Social TV
Summary the challenges of Social TV
 
Agile comparison with requriement approaches
Agile comparison with requriement approachesAgile comparison with requriement approaches
Agile comparison with requriement approaches
 
Agile estimating user stories
Agile estimating user storiesAgile estimating user stories
Agile estimating user stories
 

Recently uploaded

VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...Suhani Kapoor
 
VIP Kolkata Call Girl Gariahat 👉 8250192130 Available With Room
VIP Kolkata Call Girl Gariahat 👉 8250192130  Available With RoomVIP Kolkata Call Girl Gariahat 👉 8250192130  Available With Room
VIP Kolkata Call Girl Gariahat 👉 8250192130 Available With Roomdivyansh0kumar0
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation decktbatkhuu1
 
Kindergarten Assessment Questions Via LessonUp
Kindergarten Assessment Questions Via LessonUpKindergarten Assessment Questions Via LessonUp
Kindergarten Assessment Questions Via LessonUpmainac1
 
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceanilsa9823
 
Presentation.pptx about blender what is blender
Presentation.pptx about blender what is blenderPresentation.pptx about blender what is blender
Presentation.pptx about blender what is blenderUbaidurrehman997675
 
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅ Vashi Call Service Available Nea...
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅  Vashi Call Service Available Nea...Kurla Call Girls Pooja Nehwal📞 9892124323 ✅  Vashi Call Service Available Nea...
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅ Vashi Call Service Available Nea...Pooja Nehwal
 
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️soniya singh
 
Chapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdfChapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdfParomita Roy
 
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service BhiwandiVIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service BhiwandiSuhani Kapoor
 
Cheap Rate ➥8448380779 ▻Call Girls In Huda City Centre Gurgaon
Cheap Rate ➥8448380779 ▻Call Girls In Huda City Centre GurgaonCheap Rate ➥8448380779 ▻Call Girls In Huda City Centre Gurgaon
Cheap Rate ➥8448380779 ▻Call Girls In Huda City Centre GurgaonDelhi Call girls
 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentationamedia6
 
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
SCRIP Lua HTTP PROGRACMACION PLC  WECON CASCRIP Lua HTTP PROGRACMACION PLC  WECON CA
SCRIP Lua HTTP PROGRACMACION PLC WECON CANestorGamez6
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Call Girls in Nagpur High Profile
 
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...Suhani Kapoor
 
DragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptxDragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptxmirandajeremy200221
 
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...Call Girls in Nagpur High Profile
 
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...Call Girls in Nagpur High Profile
 

Recently uploaded (20)

B. Smith. (Architectural Portfolio.).pdf
B. Smith. (Architectural Portfolio.).pdfB. Smith. (Architectural Portfolio.).pdf
B. Smith. (Architectural Portfolio.).pdf
 
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
 
VIP Kolkata Call Girl Gariahat 👉 8250192130 Available With Room
VIP Kolkata Call Girl Gariahat 👉 8250192130  Available With RoomVIP Kolkata Call Girl Gariahat 👉 8250192130  Available With Room
VIP Kolkata Call Girl Gariahat 👉 8250192130 Available With Room
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 
Kindergarten Assessment Questions Via LessonUp
Kindergarten Assessment Questions Via LessonUpKindergarten Assessment Questions Via LessonUp
Kindergarten Assessment Questions Via LessonUp
 
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
 
Presentation.pptx about blender what is blender
Presentation.pptx about blender what is blenderPresentation.pptx about blender what is blender
Presentation.pptx about blender what is blender
 
young call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Service
young call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Service
young call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Service
 
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅ Vashi Call Service Available Nea...
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅  Vashi Call Service Available Nea...Kurla Call Girls Pooja Nehwal📞 9892124323 ✅  Vashi Call Service Available Nea...
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅ Vashi Call Service Available Nea...
 
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
 
Chapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdfChapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdf
 
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service BhiwandiVIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
 
Cheap Rate ➥8448380779 ▻Call Girls In Huda City Centre Gurgaon
Cheap Rate ➥8448380779 ▻Call Girls In Huda City Centre GurgaonCheap Rate ➥8448380779 ▻Call Girls In Huda City Centre Gurgaon
Cheap Rate ➥8448380779 ▻Call Girls In Huda City Centre Gurgaon
 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentation
 
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
SCRIP Lua HTTP PROGRACMACION PLC  WECON CASCRIP Lua HTTP PROGRACMACION PLC  WECON CA
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
 
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
 
DragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptxDragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptx
 
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
 
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
 

CG OpenGL 3D object representations-course 8

  • 1. 3D object representations Chen Jing-Fung (2006/12/5) Assistant Research Fellow, Digital Media Center, National Taiwan Normal University Video Processing Lab 臺灣師範大學數位媒體中心視訊處理研究室 Ch8: Computer Graphics with OpenGL 3th, Hearn Baker Ch6: Interactive Computer Graphics 3th, Addison Wesley
  • 2. 3D objects • Regular Polyhedrons – Solid – Mesh surface Video Processing Lab 2 臺灣師範大學數位媒體中心視訊處理研究室
  • 3. Graphics scenes • Contain many different kinds of objects and material surfaces – Trees, flowers, clouds, rocks, water, bricks … • Polygon and quadric surfaces provide precise descriptions for simple Euclidean objects – Polyhedrons & ellipsoids – Quadric surfaces (Ex: spline surfaces…) • Mathematical method modify those objects Video Processing Lab 3 臺灣師範大學數位媒體中心視訊處理研究室
  • 4. Useful design • The constructive solid-geometry techniques are useful design – Aircraft wings, gear and other engineering structures The F-15 Eagle has a large relatively Air France 747-200(Boeing) lightly loaded wing (large and low..) wing loading landing gear Video Processing Lab 4 臺灣師範大學數位媒體中心視訊處理研究室
  • 5. Polyhedrons • The most commonly used boundary to show 3D graphics object – A set of surface polygons to enclose the object interior • Simply & speed up the surface rendering and display of object – Graphics systems store all object descriptions • Standard graphics objects Video Processing Lab 5 臺灣師範大學數位媒體中心視訊處理研究室
  • 6. OpenGL polyhedron functions • Polygon Fill-Area functions – OpenGL primitive constants • GL_POLYGON, GL_TRIANGLES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_QUADS and GL_QUAD_STRIP – All faces compose by a group of parallelograms, all faces compose by triangular surfaces or other polygon from.. Video Processing Lab 6 臺灣師範大學數位媒體中心視訊處理研究室
  • 7. GLUT regular Polyhedron functions (1) • Five regular polyhedrons are pre-defined by routines in GLUT library – These polyhedrons are also called Platonic solids • All the faces are same regular polygons – All edges are equal, All edge angles are equal and All face angles are equal – Polyhedron are named according to numberface • Ex: regular tetrahedron (4 faces), regular hexahedron ( or cube, 6 faces) …. Video Processing Lab 7 臺灣師範大學數位媒體中心視訊處理研究室
  • 8. GLUT regular Polyhedron functions (2) – Each regular polyhedron is described in modeling coordinates • Each object’s center at world-coordinaate origin – Wire-frame object functions • glutWire*() – Tetrahedron, Octahedron, Dodecahedron and Icosahedron – Fill areas polyhedron functions • glutSolid*() – Tetrahedron, Octahedron, Dodecahedron and Icosahedron edgeLength must be pre-defined glutWireCube (edgeLength) glutSolidCube (edgeLength) Video Processing Lab 8 臺灣師範大學數位媒體中心視訊處理研究室
  • 9. Design notices • Display function – Set viewing transformation • gluLookAt() • Reshape function – glMatrixMode(GL_PROJECTION) • 3D projection – glFrustum() or glOrtho() …. demo Video Processing Lab 9 臺灣師範大學數位媒體中心視訊處理研究室
  • 10. Regular 3D object’s mesh • What is 3D object’s mesh? – Like the object’s skin • How to construct it? – Curved surfaces coordinate – What polygon can be used? Video Processing Lab 10 臺灣師範大學數位媒體中心視訊處理研究室
  • 11. Curved surfaces • General coordinates z – Cartesian coordinate y • Quadric surfaces x – Spherical surface – Ellipsoid’s surface – Torus’s surface Video Processing Lab 11 臺灣師範大學數位媒體中心視訊處理研究室
  • 12. Spherical Surface • In cartesian coordinates, a spherical z surface (x,y,z) – radius r, any point (x,y,z) φ y • x2+y2+z2=r2 θ x – Describe the spherical surface • x  r cos cos  / 2     / 2 y  r cos sin      z  r sin Video Processing Lab 12 臺灣師範大學數位媒體中心視訊處理研究室
  • 13. Think!! • We change the angle φ of the point’s axis – the angle range will be z re-computed φ (x,y,z) x  r cos cos 0     y y  r cos sin 0    2 θ x z  r sin – Want to re-range two angles in 0~1 • substituting    u,   2 v Why? Video Processing Lab 13 臺灣師範大學數位媒體中心視訊處理研究室
  • 14. Draw a sphere wire • Plot longitude and latitude to approximates the spherical surface as a quadrilateral mesh – Divide to three parts • Top, floor – The primary element is triangle Top & floor means covered the surface • Side – Construct it with rectangles – A surface Video Processing Lab 14 臺灣師範大學數位媒體中心視訊處理研究室
  • 15. Top (+z) & floor (-z) glBegin(GL_TRIANGLE_FAN); glVertex3d(x,y,z); c=3.14159/180.0; //interval Δφ, φ=80.0*c x  r cos cos z=sin(c*80.0); // z=+..top, z=-.. floor Δθ for(thet=-180.0; thet<=180.0;thet+=20.0){ y  r cos sin x=cos(c*80.0)*cos(c*thet); z  r sin y=cos(c*80.0)*sin(c*thet); glVertex3d(x,y,z); } glEnd(); Video Processing Lab 15 臺灣師範大學數位媒體中心視訊處理研究室
  • 16. Side for(phi=-80.0; phi<=80.0; phi+=20.0){ glBegin(GL_QUAD_STRIP); Δθ for(thet=-180.0; thet<=180.0;thet+=20.0) { x=cos(c*phi)*cos(c*thet); y=cos(c*phi)*sin(c*thet); x2+y2+z2=r2 z=sin(c*phi); x  r cos cos glVertex3d(x,y,z); x=cos(c*(phi+20.0))*cos(c*thet); y  r cos sin y=cos(c*(phi+20.0))*sin(c*thet); z  r sin z=sin(c*(phi+20.0)); glVertex3d(x,y,z); } glEnd(); } p5 glBegin(GL_QUAD_STRIP); p1 p4 p8 glVertex3d(p1)…. glVertex3d(p8) glEnd(); p2 p3 p6 p7 Video Processing Lab 16 臺灣師範大學數位媒體中心視訊處理研究室
  • 17. Advantage of this design • Put each design component to list function in initial function – Ex: top, floor or side • In display function call our design to let them move • Next page will show how to design Video Processing Lab 17 臺灣師範大學數位媒體中心視訊處理研究室
  • 18. Display architecture Display-processor architecture Simple graphics architecture server Display server processor Host Host (DPU) Display file Immediate mode (display list) Ex : progressive Retained mode Ex : interlace Video Processing Lab 18 臺灣師範大學數位媒體中心視訊處理研究室
  • 19. Definition & execution of display lists • Display lists have much in common with ordinary files. – Define (create) • What contents of display list – Manipulate (place information in) • What functions of display lists – Such as: flexible enough…. Video Processing Lab 19 臺灣師範大學數位媒體中心視訊處理研究室
  • 20. OpenGL display lists • Display lists in OpenGL are defined similarly to geometric primitive Display function: Object’s name in the list *Each time that we wish to draw: glNewList(BOX, flag); (Ex: do transformation or set up time control…) glBegin(GL_POLYGON) GL_COMPILE: send list glCallList(BOX); … to server, not to display Matrix and attribute stacks: glEnd(); GL_COMPILE_AND_EXE glPushAttrib(GL_ALL_ATTRIB_BITS); CUTE: immediate display glPushMatrix(); glEndList(); Display list function: glPopAttrib(); glPopMatrix(); Video Processing Lab 20 臺灣師範大學數位媒體中心視訊處理研究室
  • 21. OpenGL GLUT Quadric- Surface sphere functions • GLUT sphere functions – Approximate the spherical surface as a quadrilateral mesh – glutWireSphere (r,nLongitudes, nLatitudes); glutSolidSphere (…) • r (sphere radius): double or float point • nLongitudes & nLatitudes: the integer number about longitude lines & latitude lines – The sphere is defined in modeling coordinates, centered at the originworld-coordinate with its polar axis along the z-axis Video Processing Lab 21 臺灣師範大學數位媒體中心視訊處理研究室
  • 22. height GLUT Cone functions rBase • GLUT cone is obtained with – glutWireCone(rBase,height,nLongitudes,nLatitudes); glutSolidCone(…); • rbase & height: float or double • nLongitudes & nLatitudes: integer Ex: 5, 6 – Each latitude line is parallel with theirseves • the quadrilateral mesh approximation Video Processing Lab 22 臺灣師範大學數位媒體中心視訊處理研究室
  • 23. Ellipsoid’s surface • Describe it an extension of a spherical surface z – Three radii rz – In Cartesian coordinates rx y 2 ry x y z 2 2       1   x  rx   ry   rz  – Representation by two angle (φ&θ) x  rx cos  cos   / 2     / 2 y  ry cos  sin      z  rz sin  This mesh is similar the spherical mesh Video Processing Lab 23 臺灣師範大學數位媒體中心視訊處理研究室
  • 24. Torus’s surface (1) raxial • What is Torus? – a doughnut-shaped object or called ring – Describe the surface • rotating a circle or an ellipse about a co- planar axis line z axis (0,y,z) r φ 0 y axis (x,y,z) 0 y axis θ raxial x axis Side view Top view Video Processing Lab 24 臺灣師範大學數位媒體中心視訊處理研究室
  • 25. Torus’s surface (2) raxial • In Cartesian equation ( x 2  y 2  raxial )2  z2  r 2 • Using a circular cross section x  (raxial  r cos  )cos      y  (raxial  r cos  )sin      z  r sin Video Processing Lab 25 臺灣師範大學數位媒體中心視訊處理研究室
  • 26. • If generate a torus by rotating an ellipse & round circle about the z axis – In Cartesian equation 2  x2  y 2  r   z 2  axial    1  ry   rz    – The torus with an elliptical cross section x  (raxial  ry cos  )cos       y  (raxial  ry cos  )sin      z  rz sin  Video Processing Lab 26 臺灣師範大學數位媒體中心視訊處理研究室
  • 27. GLUT torus rout rin functions • Wire-frame or surface-shaded displays of a torus with a circular cross section – glutWireTorus(rCrossSection, rAxial, nConcentrics,nRadialSlices); glutSolidTorus(…); • rcrossSection (=inner Radius)& rAxial (=outer Radius) – float or double • nConcentrics(sides) & nRadialSlices(rings) – Integer – sides is parallel together(nCon..: the number of sides), nRadial..: the number of rings Video Processing Lab 27 臺灣師範大學數位媒體中心視訊處理研究室
  • 28. GLU Quadric-Surface functions • Quadric surface can used GLU functions to design – Assign a name to the quadric – Activate the GLU quadric render – Designate values for surface parameters • Set other parameter values to control the appearance of a GLU quadric surface. Video Processing Lab 28 臺灣師範大學數位媒體中心視訊處理研究室
  • 29. Some GLU functions • Sphere: – gluSphere(name,r,nLongitudes,nLatitudes); • Cylinder: – gluCylinder(name,rBase,rTop,height, nLongitudes,nLatitudes); • A section of ring: – gluPartialDisk(name, rin,rout,nRadii,nRings, Anglestart, Anglesweep); Video Processing Lab 29 臺灣師範大學數位媒體中心視訊處理研究室
  • 30. How to use? • Example: to draw the sphere GLUquadricObj *sphere1; sphere1 = gluNewQuadric (); gluQuadricDrawStyle(sphere1, display mode); gluSphere(sphere1,…); gluQuadricOrientation(sphere1, normalvectordirection);//signal face surface gluQuadricNormal(sphere1, generationMode);//total object pluDeleteQuadric (sphere1);//delete the object • Display mode: – GLU_LINE, GLU_POINT, GLU_FULL • Normal vector direction – GLU_OUTSIDE or GLU_INSIDE (inside: back-face, outside:fact-face) • General mode – default=GLU_NONE, flat surface=GLU_FLAT(object of constant color) Video Processing Lab 30 臺灣師範大學數位媒體中心視訊處理研究室
  • 31. Approximation of a sphere by recursive subdivision • Recursive subdivision is a powerful technique for generating approximations to curves and surfaces to any desired level of accuracy – Start from four equilateral triangles (a tetrahedron) • Four vertices (points) in unit sphere: (0,0,1),(0,2 2 / 3, 1/ 3),( 6 / 3,  2 / 3, 1/ 3),( 6 / 3,  2 / 3, 1/ 3) Video Processing Lab 31 臺灣師範大學數位媒體中心視訊處理研究室
  • 32. Triangle -> tetrahedron void triangle( point a, point b, point void tetrahedron() { c)// display one triangle using a line triangle(v[0],v[1],v[2]); loop for wire frame triangle(v[3],v[2],v[1]); { triangle(v[0],v[3],v[1]); glBegin(GL_LINE_LOOP); triangle(v[0],v[2],v[3]); } glVertex3fv(a); glVertex3fv(b); v0 glVertex3fv(c); glEnd(); } v1 v2 v3 Video Processing Lab 32 臺灣師範大學數位媒體中心視訊處理研究室
  • 33. void normal(point p){ void tetrahedron( int m){ /* normalize a vector */ /* Apply triangle subdivision to faces of double sqrt(); tetrahedron */ float d =0.0; divide_triangle(v[0], v[1], v[2], m); int i; divide_triangle(v[3], v[2], v[1], m); for(i=0; i<3; i++) d+=p[i]*p[i]; divide_triangle(v[0], v[3], v[1], m); d=sqrt(d); divide_triangle(v[0], v[2], v[3], m);} if(d>0.0) for(i=0; i<3; i++) p[i]/=d;}  void divide_triangle(point a, point b, point c, int m){ p Vnor  /* triangle subdivision using vertex numbers det(p) righthand rule applied to create outward pointing faces */ point v1, v2, v3; v0 int j; if(m>0) { for(j=0; j<3; j++) v1[j]=a[j]+b[j]; normal(v1); for(j=0; j<3; j++) v2[j]=a[j]+c[j]; v3 normal(v2); v1 v2 for(j=0; j<3; j++) v3[j]=b[j]+c[j]; normal(v3); divide_triangle(a, v1, v2, m-1); divide_triangle(c, v2, v3, m-1); divide_triangle(b, v3, v1, m-1); divide_triangle(v1, v3, v2, m-1); } else(triangle(a,b,c)); /* draw triangle at end of recursion */} Video Processing Lab 33 臺灣師範大學數位媒體中心視訊處理研究室
  • 34. Approximate object • Recursive subdivision – We could design a object’s surface numbers. – Recursive from coarse to fine • Mesh object related its surface – Direction: Longitude and latitude Video Processing Lab 34 臺灣師範大學數位媒體中心視訊處理研究室
  • 35. How to plot 3D object • Take apart of object to several polygon facets – First, list the vertices to show one surface • primitive: – GL_POLYGON, GL_QUADS or GL_TRIANGLES… – Function: glVertex3* (pointcoordinate) » Key point: triangle: 3 points or triangle+quadrangle – Second, list its surface direction • Find function about the approximate point – Ex: approximate sphere glNormal3* (normcoordinate) • Surface function construct from those vertices Video Processing Lab 35 臺灣師範大學數位媒體中心視訊處理研究室
  • 36. Homework 1 • Draw two object’s mesh (wire & solid) name Implicit function (F=0) Parametric form v range u range Hyperboloid (sec(v )cos(u ),sec(v )sin(u ), (  / 2, / 2) x2+y2-z2-1 (  , ) tan(v )) Elliptic cone x2+y2-z2 (v cos(u ),v sin(u ),v ) any real nums,( , ) Hyperbolic v  0,( , ) -x2+y2-z (v tan(u ),v sec(u ),v 2 ) superellipsoid x 2 / s2 y  2 / s2 s2 / s1 z 2 / s1 1 (coss1 (v )coss2 (u ),coss1 (v )sins2 (u ), (  / 2, / 2),(  , ) sins1 (v )) s1, s2 : 0.5 ~ 3.0(# 6) superhyperbol s2 / s1 (sec s (v )sec s (u ),sec s (v )tans (u ), v : (  / 2, / 2)  x 2 / s2  y 2 / s2   z2 / s1  1 1 2 1 2 oid   tans1 (v )) u : sheet#1 or sheet#2 sheet #1: ( / 2, / 2) sheet # 2 : ( / 2,3 / 2) Superellipse demo Video Processing Lab 36 臺灣師範大學數位媒體中心視訊處理研究室
  • 37. Homework 2 • Practice “Recursive subdivision” – Draw a magic box • Hint: Some things jump out the cube or this box’s sub-part can be rotated Video Processing Lab 37 臺灣師範大學數位媒體中心視訊處理研究室
  • 38. Appendix name Implicit function (F=0) Parametric form v, u range Ellipsoid (cos(v )cos(u ),cos(v )sin(u ), v : (  / 2, / 2) x2+y2+z2-1 sin(v )) u : (  , ) Hyperboloid of v : (  / 2, / 2) x2+y2-z2-1 (sec(v )cos(u ),sec(v )sin(u ), one sheet tan(v )) u : (  , ) Hyperboloid of (sec(v )cos(u ),sec(v )tan(u ), v : ( / 2, / 2) x2-y2-z2-1   two sheet tan(v )) sheet# 1: u : ( , ) 2 2  3 sheet# 2 : u : ( , ) 2 2 Ellipsoid Hyperboloid of one sheet Hyperboloid of two sheet Video Processing Lab 38 Ch9: Computer Graphics, Hill 臺灣師範大學數位媒體中心視訊處理研究室
  • 39. name Implicit function (F=0) Parametric form v, u range Elliptic cone v : any real x2+y2-z2 (v cos(u ),v sin(u ),v ) u : (  , ) Elliptic x2+y2-z (v cos(u ),v sin(u ),v 2 ) v0 paraboloid u : (  , ) Hyperboloid v0 -x2+y2-z (v tan(u ),v sec(u ),v )2 paraboloid u : (  , ) Elliptic paraboloid Elliptic cone Hyperboloid paraboloid Video Processing Lab 39 臺灣師範大學數位媒體中心視訊處理研究室
  • 40. s1, s2 : 0.5 ~ 2.5(# 5) superellipsoid x 2 / s2 y  2 / s2 s2 / s1 z 2 / s1 1 (coss1 (v )coss2 (u ),coss1 (v )sins2 (u ), sins1 (v )) v : (  / 2, / 2) u : (  , ) Superhyperbo s2 / s1 (sec s1 (v )coss2 (u ),sec s1 (v )sins2 (u ), v : (  / 2, / 2) loid of one x 2 / s2 y 2 / s2  z 2 / s1 1 s   tan 1 (v )) u : (  , ) sheet superellipsoid Superhyperboloid of one sheet Video Processing Lab 40 臺灣師範大學數位媒體中心視訊處理研究室
  • 41. s1, s2 : 0.5 ~ 2.5(# 5) u : sheet # 2 : ( / 2,3 / 2) u : sheet #1: ( / 2, / 2) superhyperbo s2 / s1 (sec s (v )sec s (u ),sec s (v )tans (u ), v : (  / 2, / 2) 1 2 1 2 loid  x 2 / s2  y 2 / s2   z2 / s1  1 s   tan (v )) 1 u : sheet#1 or sheet#2 s2 / 2 ((d  coss1 (v ))coss2 (u ), ( x 2/s  2 y 2/s 2    d)2/s1 v : (  , ) Supertorus (d  coss1 (v ))sins2 (u ), u : (  , )  z 2 / s1  1 sins1 (v )) superhyperboloid Supertorus Video Processing Lab 41 臺灣師範大學數位媒體中心視訊處理研究室