SlideShare a Scribd company logo
1 of 46
Download to read offline
Line & Area
  Chen Jing-Fung (2006/10/24)
   Assistant Research Fellow,
      Digital Media Center,
National Taiwan Normal University



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

                      National Taiwan Normal University
Coordinate
                    representations
                           Viewing & Projection
                               Coordinates

                                  1       1
    Modeling                                     1             Video Monitor
(local or master)
   Coordinates
                                                                 Plotter
                      World           Normalized
                    (Cartesian)       Coordinates
                    Coordinates
                                                              Other Output


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




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

                                        monitor




                              Video Processing Lab            4
http://groups.csail.mit.edu/graphics/classes/6.837/F04/calendar.html
                                  臺灣師範大學數位媒體中心視訊處理研究室
2D graph
• Plot figure in 2D coordinate
  – X-coordinate indicated horizontal
  – Y-coordinate indicated vertical
  – Z-coordinate indicated depth

                  simple




                                       nonsimple


                           Video Processing Lab    5
                              臺灣師範大學數位媒體中心視訊處理研究室
Coordinate Reference
• A set of coordinate extents                         y
   – Bounding box (3D), bounding rectangle (2D)
                                              5
   – Max & Min (x, y, z), (x, y)              4
• Screen coordinates                              3
                                                  2
   – Scan line number: y                          1
   – Column number: x                             0
                                                                        x
                                                          01 2345
• A low-level procedure of the pixel position
   – setPixel(x, y);
• Retrieve the current frame-buffer setting for a
  pixel location
   – getPixel(x, y, color);
                         Combine RGB bit codes

                                  Video Processing Lab              6
                                     臺灣師範大學數位媒體中心視訊處理研究室
Coordinate specifications
• Absolute coordinate & Relative
  coordinate
  – Last position (current position): (3, 8)
  – => Some graph packages is used relative
    coordinate: (2, -1) -> Absolute position:
    (5, 7)




                        Video Processing Lab    7
                           臺灣師範大學數位媒體中心視訊處理研究室
2D world-coordinate in
           OpenGL
• An orthogonal projection function
  – gluOrtho2D
   glMatrixMode (GL_PROJECTION);
   glLoadIdentity ();   Assign the identity matrix
   gluOrtho2D (xmin, xmax, ymin, ymax); World coordinate range



                                                                 ymax

                Display window

                                                                 ymin
                                    xmin
                                                     xmax
                                    Video Processing Lab           8
                                       臺灣師範大學數位媒體中心視訊處理研究室
How to a parameter
  drawing line?


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

              National Taiwan Normal University
Bresenham’s line algorithm
• Bresenham’s line is an accurate and
  efficient raster line-generating algorithm
• Use only incremental integer calculations.
• Determine at next sample point whether
  to plot.
  – The positive-slope line:
    if start point (50, 50), next point?
     • (51, 50) or (51, 51)



                              Video Processing Lab   10
                                 臺灣師範大學數位媒體中心視訊處理研究室
Parallel Bresenham line algorithm
 • Drawing parallel processing
   – Two different line on the same plane and
     along a line path simultaneously.



           yk+1

            yk

                   xk+1




                                                    11
                          P. 99-101
                             Video Processing Lab
                               臺灣師範大學數位媒體中心視訊處理研究室
How to buffer value by
   the structure?


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

                National Taiwan Normal University
Setting frame-buffer values
 • Since scan-conversion algorithms generate
   pixel positions which are labeled from (0, 0)
   to (xmax, ymax), the frame-buffer bit
   address is calculated as
   – (x, y)                                                       Screen
       • addr(x, y) = addr(0, 0) + y(xmax + 1)+x           yend
   – (x+1, y)
       • addr(x+1, y) = addr(x, y) + 1
                                                                                (x, y)
   – (x+1, y+1)                                             y0
       • addr(x+1, y+1) = addr(x, y) + xmax + 2
                                                                  x0                  xend
         Frame buffer:
      (0, 0) (1, 0) (2, 0)          (0, 1)        (x, y)
                             (xmax, 0)                                 (xmax, ymax)
     addr(0, 0)                                addr(x, y)
                                      Video Processing Lab                            13
                                             臺灣師範大學數位媒體中心視訊處理研究室
Another drawing line
     method
     Use Midpoint


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

               National Taiwan Normal University
Circle-generating algorithms



 • A circle is defined as the set of points
   – Radius = r, center position (xc, yc)
            (x-xc)2+(y-yc)2=r2
   – X axis in unit steps from xc- r to xc+ r and
     calculating the corresponding y values at each
     position as
                  y  y c  r 2  ( xc  x )2
   – using polar coordinates r and θ
                              Video Processing Lab    15
            p.103-104            臺灣師範大學數位媒體中心視訊處理研究室
Symmetry of a circle
• Eight octants
  – Calculation if a circle point (x, y) in one octant
    yields the circle points shown for the other
    seven octants
• More efficient circle algorithm are based
  on incremental calculation of decision
  parameters, which involves only simple
  integer operations. (as in the Bresenham
  line algorithm)


                             Video Processing Lab        16
                                臺灣師範大學數位媒體中心視訊處理研究室
Midpoint circle algorithm (1)
• The basic idea is to test the halfway
  position between two pixels
  – Determine inside or outside the circle
    boundary.
• Midpoint method = Bresenham line
  algorithm
  – Integer circle radius
  – A straight-line segment



                           Video Processing Lab   17
                              臺灣師範大學數位媒體中心視訊處理研究室
Midpoint circle algorithm (2)
    • To apply the midpoint method, we define a
      circle function as:
         – fcirc(x, y) = x2+y2-r2                                        x 2 + y2 - r 2 = 0
                                                             yk
             <0, if (x,y) is inside the circle boundary    yk-1   Midpoint
fcirc(x,y)   =0, if (x,y) is on the circle boundary        yk-2
             >0, if (x,y) is outside the circle boundary          xk xk+1 xk+2
         – Decision parameter (each xk, k=0 & pk<0)
             • pk= fcirc(xk+1, yk-1/2)
             • pk+1=pk+2(xk+1) + (yk+12-yk2) - (yk+1-yk)+1
         – Increment?
                      What is different between midpoint and line-
                      based?          Video Processing Lab        18
                                   p.105-109 臺灣師範大學數位媒體中心視訊處理研究室
Other curves
• Various curve functions are useful in object
  modeling, animation path specification and other
  graphics applications.

• Commonly encountered curves include conics,
  general polynomials and spline functions.
   – Conic sections: Ax2+ By2+Cxy+Dx+Ey+F=0                       v0
                                                                              g
   – Parabolic                                          y0
      • trajectory: y=y0+a(x-x0)2+b(x-x0)
      • Projection point: x=x0+vx0t; y=y0+vy0t-1/2gt2
   – Hyperbola: (x/rx)2-(y/ry)2=1                                      x0

        Spline curve formed with individual                  ry
        cubic polynomial sections between
        specified coordinate positions                                  rx



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


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

         National Taiwan Normal University
Fill-Area Primitives
• Polygon area (solid-color, patterned)
  – scan-line to fill polygon
    •   Intersection points located and sorted
    •   Consecutive pairs define interior span
    •   Attention with vertex intersections
    •   Exploit coherence (incremental calculations)
  – flood fill algorithm



                            Video Processing Lab       21
                               臺灣師範大學數位媒體中心視訊處理研究室
Fill-area primitives
• Describing components of a picture is
  an area that is filled with some solid
  color
  – Polygon is a plane figure specified by
    • Vertices: three or more coordinate positions
    • Edges or sides: straight-line segments

           concave                 convey
                     <1800
                                       >1800
    • Area….
                             Video Processing Lab    22
                                臺灣師範大學數位媒體中心視訊處理研究室
Concave polygons
• The direction of surface is “z’’ axle
• Given two consecutive vertex (V)
  positions, Vk and Vk+1, we define the
  edge vector (E) as Ek = Vk+1 - Vk (Cross product)
              y
                   V6             V5              (E1 x E2)z > 0
                             E4                   (E2 x E3)z > 0
                                   V4
   Where is “z”                                   (E3 x E4)z < 0    convex
                                  E3
                                        E2 V3
                  V1                    V2
                        E1                   x                     concave
                                                 Test!!
                                        Video Processing Lab             23
                                             臺灣師範大學數位媒體中心視訊處理研究室
Splitting concave polygons
• Vector method
  – All vector cross products have the same
    sign => convex
• Rotational method
  – rotate polygon-edges onto x-axis, always
    same direction => convex
  – Each vertex vk                    Area 1
                                        V1
    • Origin: translate Vk                             V3
                                                 V2
    • Rotate clockwise Vk+1 on x-axis
    • If vertex below x-axis => split             Area 2
                                                            V4

                          Video Processing Lab               24
                             臺灣師範大學數位媒體中心視訊處理研究室
Inside-Outside Tests
• Testing interior vs. exterior object
  boundaries
  – Odd-even (parity) rule or nonzero winding
    parity rule
• Odd-even rule
  – number of segments crossed by the line drawn
    from P to distant point outside the coordinate
    extents
     • bounding rectangle or box is odd it is interior point
     • else it is exterior point
  – use the rule for color filling of rings, 2
    concentric polygons

                                Video Processing Lab           25
                                   臺灣師範大學數位媒體中心視訊處理研究室
Nonzero winding parity
         rule
• Nonzero winding parity rule may yield
  different interior and exterior regions
  – Setup vectors along object edges and the
    reference line.
  – Compute cross product of vector u along the
    line from P to a distant point, with object
    vector E for each edge that crosses the line.
  – With 2 D object in XY plane direction of cross
    product will be + z direction or –z direction.
     • if z component for a crossing is +ve that segment
       crosses from left to right, add 1 to winding number
     • else if it is left to right subtract 1 from winding
       number simpler


                                Video Processing Lab         26
                                   臺灣師範大學數位媒體中心視訊處理研究室
3D inside-outside
     • Consider a sphere, x2 + y2 + z2 = 1.
        – Interior: the set of all points that
          satisfy x2 + y2 + z2 < 1
        – The solid's surface: x2 + y2 + z2 <= 1.
        – Exterior: x2 + y2 + z2 > 1.
                        Interior point A                       boundary




                                   Boundary point C



                Exterior point B
                                        Video Processing Lab              27
http://www.cs.mtu.edu/~shene/COURSES/cs3621/NOTES/model/closure.html
                                         臺灣師範大學數位媒體中心視訊處理研究室
Polygon Surfaces (1)
• Set of surface polygons enclose
  object interior = Boundary
  Representation (“B-rep”)


                  wireframe representation
                  of a cylinder with back
                  (hidden) lines removed


                    Video Processing Lab     28
                       臺灣師範大學數位媒體中心視訊處理研究室
Polygon Surfaces (2)
• Polygon tables (B-rep lists)
  – Geometric and attribute tables
  – Vertex, edge, polygon tables
  – Consistency, completeness checks




                      Video Processing Lab   29
                         臺灣師範大學數位媒體中心視訊處理研究室
Two polygon surfaces
     • Geometric data-table representation for
       two adjacent polygon surface facets,
       formed with six edges and five vertices
                                         VERTEX TABLE        EDGE TABLE
                           V1                                 E1: V1, V2
                                         V1: x1, y1, z1
                                                              E2: V2, V3
                                         V2: x2, y2, z2
           E1        E3        E6                             E3
                                         V3
                S1                                            E4
                                         V4
                          S2        V5                        E5
                                         V5
         E2 V                                                 E6
              3 E
                 4             E5           SURFACE-FACET TABLE
V2
                                               S1: E1, E2,E3
                      V4                       S2: E3, E4, E5, E6

                                            Video Processing Lab           30
                                                臺灣師範大學數位媒體中心視訊處理研究室
Video Processing Lab      31
http://www.icg.tu-graz.ac.at/courses/bacgvis/slides
                                              臺灣師範大學數位媒體中心視訊處理研究室
Plane equations

 • Ax+By+Cz+D=0
     – Plane parameter: A, B, C and D
 • Normal vector (N)                         the plane equation:
                                             x − 1 = 0.
The normal vector:
N=( A, B, C )
Plane equation
Ax + By + Cz + D = 0




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

          y axis
                                       y axis
                                                           z axis




                             x axis                           x axis
 z axis
                                           Left-handed cartesian
    Right-handed cartesian




                                      Video Processing Lab             33
                                         臺灣師範大學數位媒體中心視訊處理研究室
Front and Back Polygon
         Faces (1)
• Back face = polygon side that faces into
  the object interior
• Front face = polygon side that faces
  outward
• Behind a polygon plane = visible to the
  polygon back face
• In front of a polygon plane = visible to the
  polygon front face


                         Video Processing Lab    34
                            臺灣師範大學數位媒體中心視訊處理研究室
Front and Back Polygon
         Faces (2)
• Ax + By + Cz + D = 0 for points on the
  surface
                   < 0 for points behind
                   > 0 for points in front
  – right-handed coordinate system
  – polygon points in counterclockwise order
• V1, V2, V3 counterclockwise => normal
  vector N = (V2 - V1) x (V3 - V1)


                           Video Processing Lab   35
                              臺灣師範大學數位媒體中心視訊處理研究室
What is Cross product (x) ?
 • A mathematical joke asks,
   – "What do you get when you cross a
     mountain-climber with a mosquito? "

 • On the television sitcom, Head of
   the Class asks,
   – "What do you get when you cross an
     elephant and a grape?"


                         Video Processing Lab         36
              http://mathworld.wolfram.com/CrossProduct.html
                            臺灣師範大學數位媒體中心視訊處理研究室
Cross product (x)
• The orientation determined by the
  right-hand rule




                        Video Processing Lab         37
             http://mathworld.wolfram.com/CrossProduct.html
                          臺灣師範大學數位媒體中心視訊處理研究室
OpenGL polygon fill-area
      functions
• OpenGL provides a special rectangle function
   – glRect*(x1, y1, x2, y2);
      • *: i (integer), s (short), f (float), d (double) and v (vector)
      • plRectiv(vertex1, vertex2);
• Fill rectangle use “glVertex”
      • glBegin (GL_POLYGON);
          –   glVertex2iv   (p1);
          –   glVertex2iv   (p2);                 p6       p5
          –   glVertex2iv   (p3);
          –   glVertex2iv   (p4);
          –   glVertex2iv   (p5);            p1                 p4
          –   glVertex2iv   (p6);
      • glEnd ();                                 p2      p3


                                      Video Processing Lab                38
                                         臺灣師範大學數位媒體中心視訊處理研究室
How to design “font”?
A complete set of type of one size
            and face.

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

                     National Taiwan Normal University
South China Morning Post, 13
       Sep., 2005




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

• Graphics displays often include
  textural information :
  – labels on graphs and charts
  – signs on buildings or vehicles
  – General identifying information for
    simulation and visualization applications.




                         Video Processing Lab    41
                            臺灣師範大學數位媒體中心視訊處理研究室
Typeface (1)
• Letters, numbers and other characters can
  be displayed in a variety of sizes and
  styles.
  – The overall design style for a set of characters
  – Routines for generating character primitives
     • 20-point Courier Italic or 28-point Palatino
       Bold
     • font :
         – 14 points, a total character height is about 0.5 cm. A



         – 72 points is about 2.54 cm (1 inch)   B
                                  Video Processing Lab              42
                                     臺灣師範大學數位媒體中心視訊處理研究室
Typeface (2)




the letter B represented with an 8x8 bilevel
bitmap pattern and with an outline shape
defined with straight line and curve
segments
                    Video Processing Lab       43
                       臺灣師範大學數位媒體中心視訊處理研究室
Homework (1)
• Select 6 points and try to draw primitive
  constant
  – (a) GL_POLYGON (b) GL_TRIANGLES (c)
    GL_TRIANGLE_STRIP (d)
    GL_TRIANGLE_FAN
• Select 8 points and try to draw primitive
  constant
  – (a) GL_QUADS (b) GL_QUAD_STRIP
• Draw
                    50              100
                         100

                     200

                           Video Processing Lab   44
                               臺灣師範大學數位媒體中心視訊處理研究室
Homework (2)
• Draw switch
  – (1) parabolic
    • x = y2
      (-10≦y ≦10)
  – (2) 2D curve path
    • 2D : Set (x0, y0) & step (relate to θ),
      m:integer
       – r=sin (mθ)
         r=A+Bcos(mθ)
         r=e-mθ
         r=mθ



                           Video Processing Lab   45
                              臺灣師範大學數位媒體中心視訊處理研究室
Reference
• http://www.icg.tu-
  graz.ac.at/courses/bacgvis/slides
• South China Morning Post, 13 Sep.,
  2005
• Computer Graphics with OpenGL 3/e,
  Hearn Baker, Third edition, ISBN:
  0131202383


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

More Related Content

What's hot

M Gumbel - SCABIO: a framework for bioinformatics algorithms in Scala
M Gumbel - SCABIO: a framework for bioinformatics algorithms in ScalaM Gumbel - SCABIO: a framework for bioinformatics algorithms in Scala
M Gumbel - SCABIO: a framework for bioinformatics algorithms in ScalaJan Aerts
 
CS 354 Acceleration Structures
CS 354 Acceleration StructuresCS 354 Acceleration Structures
CS 354 Acceleration StructuresMark Kilgard
 
C O N T R O L S Y S T E M S J N T U M O D E L P A P E R{Www
C O N T R O L  S Y S T E M S  J N T U  M O D E L  P A P E R{WwwC O N T R O L  S Y S T E M S  J N T U  M O D E L  P A P E R{Www
C O N T R O L S Y S T E M S J N T U M O D E L P A P E R{Wwwguest3f9c6b
 
Image Splicing Detection involving Moment-based Feature Extraction and Classi...
Image Splicing Detection involving Moment-based Feature Extraction and Classi...Image Splicing Detection involving Moment-based Feature Extraction and Classi...
Image Splicing Detection involving Moment-based Feature Extraction and Classi...IDES Editor
 
Scaled Eigen Appearance and Likelihood Prunning for Large Scale Video Duplica...
Scaled Eigen Appearance and Likelihood Prunning for Large Scale Video Duplica...Scaled Eigen Appearance and Likelihood Prunning for Large Scale Video Duplica...
Scaled Eigen Appearance and Likelihood Prunning for Large Scale Video Duplica...United States Air Force Academy
 
Fcv bio cv_weiss
Fcv bio cv_weissFcv bio cv_weiss
Fcv bio cv_weisszukun
 
Detection Tracking and Recognition of Human Poses for a Real Time Spatial Game
Detection Tracking and Recognition of Human Poses for a Real Time Spatial GameDetection Tracking and Recognition of Human Poses for a Real Time Spatial Game
Detection Tracking and Recognition of Human Poses for a Real Time Spatial GameWolfgang Hürst
 
Past year iit entrance mathematics problems
Past year iit entrance mathematics problemsPast year iit entrance mathematics problems
Past year iit entrance mathematics problemsAPEX INSTITUTE
 
Java cơ bản java co ban
Java cơ bản java co ban Java cơ bản java co ban
Java cơ bản java co ban ifis
 
Image Processing, 2012
Image Processing, 2012Image Processing, 2012
Image Processing, 2012Sanjay Goel
 
Passive network-redesign-ntua
Passive network-redesign-ntuaPassive network-redesign-ntua
Passive network-redesign-ntuaIEEE NTUA SB
 
No Slide Title
No Slide TitleNo Slide Title
No Slide Titlebutest
 
Random Valued Impulse Noise Removal in Colour Images using Adaptive Threshold...
Random Valued Impulse Noise Removal in Colour Images using Adaptive Threshold...Random Valued Impulse Noise Removal in Colour Images using Adaptive Threshold...
Random Valued Impulse Noise Removal in Colour Images using Adaptive Threshold...IDES Editor
 
Structural Dynamics Toolbox and OpenFEM, a technical overview
Structural Dynamics Toolbox and OpenFEM, a technical overviewStructural Dynamics Toolbox and OpenFEM, a technical overview
Structural Dynamics Toolbox and OpenFEM, a technical overviewSDTools
 
Model Slicing
Model SlicingModel Slicing
Model SlicingClarkTony
 

What's hot (18)

M Gumbel - SCABIO: a framework for bioinformatics algorithms in Scala
M Gumbel - SCABIO: a framework for bioinformatics algorithms in ScalaM Gumbel - SCABIO: a framework for bioinformatics algorithms in Scala
M Gumbel - SCABIO: a framework for bioinformatics algorithms in Scala
 
CS 354 Acceleration Structures
CS 354 Acceleration StructuresCS 354 Acceleration Structures
CS 354 Acceleration Structures
 
C O N T R O L S Y S T E M S J N T U M O D E L P A P E R{Www
C O N T R O L  S Y S T E M S  J N T U  M O D E L  P A P E R{WwwC O N T R O L  S Y S T E M S  J N T U  M O D E L  P A P E R{Www
C O N T R O L S Y S T E M S J N T U M O D E L P A P E R{Www
 
Nanotechnology
NanotechnologyNanotechnology
Nanotechnology
 
Image Splicing Detection involving Moment-based Feature Extraction and Classi...
Image Splicing Detection involving Moment-based Feature Extraction and Classi...Image Splicing Detection involving Moment-based Feature Extraction and Classi...
Image Splicing Detection involving Moment-based Feature Extraction and Classi...
 
Scaled Eigen Appearance and Likelihood Prunning for Large Scale Video Duplica...
Scaled Eigen Appearance and Likelihood Prunning for Large Scale Video Duplica...Scaled Eigen Appearance and Likelihood Prunning for Large Scale Video Duplica...
Scaled Eigen Appearance and Likelihood Prunning for Large Scale Video Duplica...
 
ANPR FPGA Workshop
ANPR FPGA WorkshopANPR FPGA Workshop
ANPR FPGA Workshop
 
My MS defense
My MS defenseMy MS defense
My MS defense
 
Fcv bio cv_weiss
Fcv bio cv_weissFcv bio cv_weiss
Fcv bio cv_weiss
 
Detection Tracking and Recognition of Human Poses for a Real Time Spatial Game
Detection Tracking and Recognition of Human Poses for a Real Time Spatial GameDetection Tracking and Recognition of Human Poses for a Real Time Spatial Game
Detection Tracking and Recognition of Human Poses for a Real Time Spatial Game
 
Past year iit entrance mathematics problems
Past year iit entrance mathematics problemsPast year iit entrance mathematics problems
Past year iit entrance mathematics problems
 
Java cơ bản java co ban
Java cơ bản java co ban Java cơ bản java co ban
Java cơ bản java co ban
 
Image Processing, 2012
Image Processing, 2012Image Processing, 2012
Image Processing, 2012
 
Passive network-redesign-ntua
Passive network-redesign-ntuaPassive network-redesign-ntua
Passive network-redesign-ntua
 
No Slide Title
No Slide TitleNo Slide Title
No Slide Title
 
Random Valued Impulse Noise Removal in Colour Images using Adaptive Threshold...
Random Valued Impulse Noise Removal in Colour Images using Adaptive Threshold...Random Valued Impulse Noise Removal in Colour Images using Adaptive Threshold...
Random Valued Impulse Noise Removal in Colour Images using Adaptive Threshold...
 
Structural Dynamics Toolbox and OpenFEM, a technical overview
Structural Dynamics Toolbox and OpenFEM, a technical overviewStructural Dynamics Toolbox and OpenFEM, a technical overview
Structural Dynamics Toolbox and OpenFEM, a technical overview
 
Model Slicing
Model SlicingModel Slicing
Model Slicing
 

Similar to 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 4fungfung Chen
 
CG OpenGL 3D object representations-course 8
CG OpenGL 3D object representations-course 8CG OpenGL 3D object representations-course 8
CG OpenGL 3D object representations-course 8fungfung 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
 
Bouguet's MatLab Camera Calibration Toolbox
Bouguet's MatLab Camera Calibration ToolboxBouguet's MatLab Camera Calibration Toolbox
Bouguet's MatLab Camera Calibration ToolboxYuji Oyamada
 
2007 表面瑕疵檢測技術之發展
2007 表面瑕疵檢測技術之發展2007 表面瑕疵檢測技術之發展
2007 表面瑕疵檢測技術之發展CHENHuiMei
 
動画像理解のための深層学習アプローチ 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
 
The not so short
The not so shortThe not so short
The not so shortAXM
 
Managing Uncertainties in Hardware-Software Codesign Projects
Managing Uncertainties in Hardware-Software Codesign ProjectsManaging Uncertainties in Hardware-Software Codesign Projects
Managing Uncertainties in Hardware-Software Codesign ProjectsJones Albuquerque
 
TUKE MediaEval 2012: Spoken Web Search using DTW and Unsupervised SVM
TUKE MediaEval 2012: Spoken Web Search using DTW and Unsupervised SVMTUKE MediaEval 2012: Spoken Web Search using DTW and Unsupervised SVM
TUKE MediaEval 2012: Spoken Web Search using DTW and Unsupervised SVMMediaEval2012
 
“Understanding DNN-Based Object Detectors,” a Presentation from Au-Zone Techn...
“Understanding DNN-Based Object Detectors,” a Presentation from Au-Zone Techn...“Understanding DNN-Based Object Detectors,” a Presentation from Au-Zone Techn...
“Understanding DNN-Based Object Detectors,” a Presentation from Au-Zone Techn...Edge AI and Vision Alliance
 
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
 
Kccsi 2012 a real-time robust object tracking-v2
Kccsi 2012   a real-time robust object tracking-v2Kccsi 2012   a real-time robust object tracking-v2
Kccsi 2012 a real-time robust object tracking-v2Prarinya Siritanawan
 
ANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentationANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentationAnish Patel
 
Java3 d 1
Java3 d 1Java3 d 1
Java3 d 1Por Non
 
Condition Monitoring Of Unsteadily Operating Equipment
Condition Monitoring Of Unsteadily Operating EquipmentCondition Monitoring Of Unsteadily Operating Equipment
Condition Monitoring Of Unsteadily Operating EquipmentJordan McBain
 
3.point operation and histogram based image enhancement
3.point operation and histogram based image enhancement3.point operation and histogram based image enhancement
3.point operation and histogram based image enhancementmukesh bhardwaj
 
Multilayer Neuronal network hardware implementation
Multilayer Neuronal network hardware implementation Multilayer Neuronal network hardware implementation
Multilayer Neuronal network hardware implementation Nabil Chouba
 

Similar to CG OpenGL line & area-course 3 (20)

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 OpenGL 3D object representations-course 8
CG OpenGL 3D object representations-course 8CG OpenGL 3D object representations-course 8
CG OpenGL 3D object representations-course 8
 
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
 
Bouguet's MatLab Camera Calibration Toolbox
Bouguet's MatLab Camera Calibration ToolboxBouguet's MatLab Camera Calibration Toolbox
Bouguet's MatLab Camera Calibration Toolbox
 
Isvc08
Isvc08Isvc08
Isvc08
 
2007 表面瑕疵檢測技術之發展
2007 表面瑕疵檢測技術之發展2007 表面瑕疵檢測技術之發展
2007 表面瑕疵檢測技術之發展
 
動画像理解のための深層学習アプローチ Deep learning approaches to video understanding
動画像理解のための深層学習アプローチ Deep learning approaches to video understanding動画像理解のための深層学習アプローチ Deep learning approaches to video understanding
動画像理解のための深層学習アプローチ Deep learning approaches to video understanding
 
Mmclass5
Mmclass5Mmclass5
Mmclass5
 
The not so short
The not so shortThe not so short
The not so short
 
Managing Uncertainties in Hardware-Software Codesign Projects
Managing Uncertainties in Hardware-Software Codesign ProjectsManaging Uncertainties in Hardware-Software Codesign Projects
Managing Uncertainties in Hardware-Software Codesign Projects
 
TUKE MediaEval 2012: Spoken Web Search using DTW and Unsupervised SVM
TUKE MediaEval 2012: Spoken Web Search using DTW and Unsupervised SVMTUKE MediaEval 2012: Spoken Web Search using DTW and Unsupervised SVM
TUKE MediaEval 2012: Spoken Web Search using DTW and Unsupervised SVM
 
“Understanding DNN-Based Object Detectors,” a Presentation from Au-Zone Techn...
“Understanding DNN-Based Object Detectors,” a Presentation from Au-Zone Techn...“Understanding DNN-Based Object Detectors,” a Presentation from Au-Zone Techn...
“Understanding DNN-Based Object Detectors,” a Presentation from Au-Zone Techn...
 
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
 
Kccsi 2012 a real-time robust object tracking-v2
Kccsi 2012   a real-time robust object tracking-v2Kccsi 2012   a real-time robust object tracking-v2
Kccsi 2012 a real-time robust object tracking-v2
 
ANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentationANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentation
 
image compression ppt
image compression pptimage compression ppt
image compression ppt
 
Java3 d 1
Java3 d 1Java3 d 1
Java3 d 1
 
Condition Monitoring Of Unsteadily Operating Equipment
Condition Monitoring Of Unsteadily Operating EquipmentCondition Monitoring Of Unsteadily Operating Equipment
Condition Monitoring Of Unsteadily Operating Equipment
 
3.point operation and histogram based image enhancement
3.point operation and histogram based image enhancement3.point operation and histogram based image enhancement
3.point operation and histogram based image enhancement
 
Multilayer Neuronal network hardware implementation
Multilayer Neuronal network hardware implementation Multilayer Neuronal network hardware implementation
Multilayer Neuronal network hardware implementation
 

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
 
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
 
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
 

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
 
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
 
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
 

Recently uploaded

VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130Suhani Kapoor
 
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Delhi Call girls
 
Government polytechnic college-1.pptxabcd
Government polytechnic college-1.pptxabcdGovernment polytechnic college-1.pptxabcd
Government polytechnic college-1.pptxabcdshivubhavv
 
Fashion trends before and after covid.pptx
Fashion trends before and after covid.pptxFashion trends before and after covid.pptx
Fashion trends before and after covid.pptxVanshNarang19
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxjanettecruzeiro1
 
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...Call Girls in Nagpur High Profile
 
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...amitlee9823
 
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Delhi Call girls
 
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
 
Stark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptxStark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptxjeswinjees
 
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
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...kumaririma588
 
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
 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsCharles Obaleagbon
 
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
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girlsmodelanjalisharma4
 
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...SUHANI PANDEY
 
VVIP Pune Call Girls Dange Chowk (8250192130) Pune Escorts Nearby with Comple...
VVIP Pune Call Girls Dange Chowk (8250192130) Pune Escorts Nearby with Comple...VVIP Pune Call Girls Dange Chowk (8250192130) Pune Escorts Nearby with Comple...
VVIP Pune Call Girls Dange Chowk (8250192130) Pune Escorts Nearby with Comple...Call Girls in Nagpur High Profile
 
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts ServiceVVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Servicearoranaina404
 
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)amitlee9823
 

Recently uploaded (20)

VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
 
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
 
Government polytechnic college-1.pptxabcd
Government polytechnic college-1.pptxabcdGovernment polytechnic college-1.pptxabcd
Government polytechnic college-1.pptxabcd
 
Fashion trends before and after covid.pptx
Fashion trends before and after covid.pptxFashion trends before and after covid.pptx
Fashion trends before and after covid.pptx
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptx
 
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...
 
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
 
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 ...
 
Stark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptxStark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptx
 
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
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
 
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...
 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past Questions
 
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
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
 
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
 
VVIP Pune Call Girls Dange Chowk (8250192130) Pune Escorts Nearby with Comple...
VVIP Pune Call Girls Dange Chowk (8250192130) Pune Escorts Nearby with Comple...VVIP Pune Call Girls Dange Chowk (8250192130) Pune Escorts Nearby with Comple...
VVIP Pune Call Girls Dange Chowk (8250192130) Pune Escorts Nearby with Comple...
 
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts ServiceVVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
 
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 

CG OpenGL line & area-course 3

  • 1. Line & Area Chen Jing-Fung (2006/10/24) Assistant Research Fellow, Digital Media Center, National Taiwan Normal University Video Processing Lab 臺灣師範大學數位媒體中心視訊處理研究室 National Taiwan Normal University
  • 2. Coordinate representations Viewing & Projection Coordinates 1 1 Modeling 1 Video Monitor (local or master) Coordinates Plotter World Normalized (Cartesian) Coordinates Coordinates Other Output Device Coordinates Video Processing Lab 2 臺灣師範大學數位媒體中心視訊處理研究室
  • 3. Reshape function Video Processing Lab 3 臺灣師範大學數位媒體中心視訊處理研究室
  • 4. Monitor monitor Video Processing Lab 4 http://groups.csail.mit.edu/graphics/classes/6.837/F04/calendar.html 臺灣師範大學數位媒體中心視訊處理研究室
  • 5. 2D graph • Plot figure in 2D coordinate – X-coordinate indicated horizontal – Y-coordinate indicated vertical – Z-coordinate indicated depth simple nonsimple Video Processing Lab 5 臺灣師範大學數位媒體中心視訊處理研究室
  • 6. Coordinate Reference • A set of coordinate extents y – Bounding box (3D), bounding rectangle (2D) 5 – Max & Min (x, y, z), (x, y) 4 • Screen coordinates 3 2 – Scan line number: y 1 – Column number: x 0 x 01 2345 • A low-level procedure of the pixel position – setPixel(x, y); • Retrieve the current frame-buffer setting for a pixel location – getPixel(x, y, color); Combine RGB bit codes Video Processing Lab 6 臺灣師範大學數位媒體中心視訊處理研究室
  • 7. Coordinate specifications • Absolute coordinate & Relative coordinate – Last position (current position): (3, 8) – => Some graph packages is used relative coordinate: (2, -1) -> Absolute position: (5, 7) Video Processing Lab 7 臺灣師範大學數位媒體中心視訊處理研究室
  • 8. 2D world-coordinate in OpenGL • An orthogonal projection function – gluOrtho2D glMatrixMode (GL_PROJECTION); glLoadIdentity (); Assign the identity matrix gluOrtho2D (xmin, xmax, ymin, ymax); World coordinate range ymax Display window ymin xmin xmax Video Processing Lab 8 臺灣師範大學數位媒體中心視訊處理研究室
  • 9. How to a parameter drawing line? Video Processing Lab 臺灣師範大學數位媒體中心視訊處理研究室 National Taiwan Normal University
  • 10. Bresenham’s line algorithm • Bresenham’s line is an accurate and efficient raster line-generating algorithm • Use only incremental integer calculations. • Determine at next sample point whether to plot. – The positive-slope line: if start point (50, 50), next point? • (51, 50) or (51, 51) Video Processing Lab 10 臺灣師範大學數位媒體中心視訊處理研究室
  • 11. Parallel Bresenham line algorithm • Drawing parallel processing – Two different line on the same plane and along a line path simultaneously. yk+1 yk xk+1 11 P. 99-101 Video Processing Lab 臺灣師範大學數位媒體中心視訊處理研究室
  • 12. How to buffer value by the structure? Video Processing Lab 臺灣師範大學數位媒體中心視訊處理研究室 National Taiwan Normal University
  • 13. Setting frame-buffer values • Since scan-conversion algorithms generate pixel positions which are labeled from (0, 0) to (xmax, ymax), the frame-buffer bit address is calculated as – (x, y) Screen • addr(x, y) = addr(0, 0) + y(xmax + 1)+x yend – (x+1, y) • addr(x+1, y) = addr(x, y) + 1 (x, y) – (x+1, y+1) y0 • addr(x+1, y+1) = addr(x, y) + xmax + 2 x0 xend Frame buffer: (0, 0) (1, 0) (2, 0) (0, 1) (x, y) (xmax, 0) (xmax, ymax) addr(0, 0) addr(x, y) Video Processing Lab 13 臺灣師範大學數位媒體中心視訊處理研究室
  • 14. Another drawing line method Use Midpoint Video Processing Lab 臺灣師範大學數位媒體中心視訊處理研究室 National Taiwan Normal University
  • 15. Circle-generating algorithms • A circle is defined as the set of points – Radius = r, center position (xc, yc) (x-xc)2+(y-yc)2=r2 – X axis in unit steps from xc- r to xc+ r and calculating the corresponding y values at each position as y  y c  r 2  ( xc  x )2 – using polar coordinates r and θ Video Processing Lab 15 p.103-104 臺灣師範大學數位媒體中心視訊處理研究室
  • 16. Symmetry of a circle • Eight octants – Calculation if a circle point (x, y) in one octant yields the circle points shown for the other seven octants • More efficient circle algorithm are based on incremental calculation of decision parameters, which involves only simple integer operations. (as in the Bresenham line algorithm) Video Processing Lab 16 臺灣師範大學數位媒體中心視訊處理研究室
  • 17. Midpoint circle algorithm (1) • The basic idea is to test the halfway position between two pixels – Determine inside or outside the circle boundary. • Midpoint method = Bresenham line algorithm – Integer circle radius – A straight-line segment Video Processing Lab 17 臺灣師範大學數位媒體中心視訊處理研究室
  • 18. Midpoint circle algorithm (2) • To apply the midpoint method, we define a circle function as: – fcirc(x, y) = x2+y2-r2 x 2 + y2 - r 2 = 0 yk <0, if (x,y) is inside the circle boundary yk-1 Midpoint fcirc(x,y) =0, if (x,y) is on the circle boundary yk-2 >0, if (x,y) is outside the circle boundary xk xk+1 xk+2 – Decision parameter (each xk, k=0 & pk<0) • pk= fcirc(xk+1, yk-1/2) • pk+1=pk+2(xk+1) + (yk+12-yk2) - (yk+1-yk)+1 – Increment? What is different between midpoint and line- based? Video Processing Lab 18 p.105-109 臺灣師範大學數位媒體中心視訊處理研究室
  • 19. Other curves • Various curve functions are useful in object modeling, animation path specification and other graphics applications. • Commonly encountered curves include conics, general polynomials and spline functions. – Conic sections: Ax2+ By2+Cxy+Dx+Ey+F=0 v0 g – Parabolic y0 • trajectory: y=y0+a(x-x0)2+b(x-x0) • Projection point: x=x0+vx0t; y=y0+vy0t-1/2gt2 – Hyperbola: (x/rx)2-(y/ry)2=1 x0 Spline curve formed with individual ry cubic polynomial sections between specified coordinate positions rx Video Processing Lab 19 臺灣師範大學數位媒體中心視訊處理研究室
  • 20. Fill-Area Video Processing Lab 臺灣師範大學數位媒體中心視訊處理研究室 National Taiwan Normal University
  • 21. Fill-Area Primitives • Polygon area (solid-color, patterned) – scan-line to fill polygon • Intersection points located and sorted • Consecutive pairs define interior span • Attention with vertex intersections • Exploit coherence (incremental calculations) – flood fill algorithm Video Processing Lab 21 臺灣師範大學數位媒體中心視訊處理研究室
  • 22. Fill-area primitives • Describing components of a picture is an area that is filled with some solid color – Polygon is a plane figure specified by • Vertices: three or more coordinate positions • Edges or sides: straight-line segments concave convey <1800 >1800 • Area…. Video Processing Lab 22 臺灣師範大學數位媒體中心視訊處理研究室
  • 23. Concave polygons • The direction of surface is “z’’ axle • Given two consecutive vertex (V) positions, Vk and Vk+1, we define the edge vector (E) as Ek = Vk+1 - Vk (Cross product) y V6 V5 (E1 x E2)z > 0 E4 (E2 x E3)z > 0 V4 Where is “z” (E3 x E4)z < 0 convex E3 E2 V3 V1 V2 E1 x concave Test!! Video Processing Lab 23 臺灣師範大學數位媒體中心視訊處理研究室
  • 24. Splitting concave polygons • Vector method – All vector cross products have the same sign => convex • Rotational method – rotate polygon-edges onto x-axis, always same direction => convex – Each vertex vk Area 1 V1 • Origin: translate Vk V3 V2 • Rotate clockwise Vk+1 on x-axis • If vertex below x-axis => split Area 2 V4 Video Processing Lab 24 臺灣師範大學數位媒體中心視訊處理研究室
  • 25. Inside-Outside Tests • Testing interior vs. exterior object boundaries – Odd-even (parity) rule or nonzero winding parity rule • Odd-even rule – number of segments crossed by the line drawn from P to distant point outside the coordinate extents • bounding rectangle or box is odd it is interior point • else it is exterior point – use the rule for color filling of rings, 2 concentric polygons Video Processing Lab 25 臺灣師範大學數位媒體中心視訊處理研究室
  • 26. Nonzero winding parity rule • Nonzero winding parity rule may yield different interior and exterior regions – Setup vectors along object edges and the reference line. – Compute cross product of vector u along the line from P to a distant point, with object vector E for each edge that crosses the line. – With 2 D object in XY plane direction of cross product will be + z direction or –z direction. • if z component for a crossing is +ve that segment crosses from left to right, add 1 to winding number • else if it is left to right subtract 1 from winding number simpler Video Processing Lab 26 臺灣師範大學數位媒體中心視訊處理研究室
  • 27. 3D inside-outside • Consider a sphere, x2 + y2 + z2 = 1. – Interior: the set of all points that satisfy x2 + y2 + z2 < 1 – The solid's surface: x2 + y2 + z2 <= 1. – Exterior: x2 + y2 + z2 > 1. Interior point A boundary Boundary point C Exterior point B Video Processing Lab 27 http://www.cs.mtu.edu/~shene/COURSES/cs3621/NOTES/model/closure.html 臺灣師範大學數位媒體中心視訊處理研究室
  • 28. Polygon Surfaces (1) • Set of surface polygons enclose object interior = Boundary Representation (“B-rep”) wireframe representation of a cylinder with back (hidden) lines removed Video Processing Lab 28 臺灣師範大學數位媒體中心視訊處理研究室
  • 29. Polygon Surfaces (2) • Polygon tables (B-rep lists) – Geometric and attribute tables – Vertex, edge, polygon tables – Consistency, completeness checks Video Processing Lab 29 臺灣師範大學數位媒體中心視訊處理研究室
  • 30. Two polygon surfaces • Geometric data-table representation for two adjacent polygon surface facets, formed with six edges and five vertices VERTEX TABLE EDGE TABLE V1 E1: V1, V2 V1: x1, y1, z1 E2: V2, V3 V2: x2, y2, z2 E1 E3 E6 E3 V3 S1 E4 V4 S2 V5 E5 V5 E2 V E6 3 E 4 E5 SURFACE-FACET TABLE V2 S1: E1, E2,E3 V4 S2: E3, E4, E5, E6 Video Processing Lab 30 臺灣師範大學數位媒體中心視訊處理研究室
  • 31. Video Processing Lab 31 http://www.icg.tu-graz.ac.at/courses/bacgvis/slides 臺灣師範大學數位媒體中心視訊處理研究室
  • 32. Plane equations • Ax+By+Cz+D=0 – Plane parameter: A, B, C and D • Normal vector (N) the plane equation: x − 1 = 0. The normal vector: N=( A, B, C ) Plane equation Ax + By + Cz + D = 0 Video Processing Lab 32 臺灣師範大學數位媒體中心視訊處理研究室
  • 33. 3D cartesian coordinate y axis y axis z axis x axis x axis z axis Left-handed cartesian Right-handed cartesian Video Processing Lab 33 臺灣師範大學數位媒體中心視訊處理研究室
  • 34. Front and Back Polygon Faces (1) • Back face = polygon side that faces into the object interior • Front face = polygon side that faces outward • Behind a polygon plane = visible to the polygon back face • In front of a polygon plane = visible to the polygon front face Video Processing Lab 34 臺灣師範大學數位媒體中心視訊處理研究室
  • 35. Front and Back Polygon Faces (2) • Ax + By + Cz + D = 0 for points on the surface < 0 for points behind > 0 for points in front – right-handed coordinate system – polygon points in counterclockwise order • V1, V2, V3 counterclockwise => normal vector N = (V2 - V1) x (V3 - V1) Video Processing Lab 35 臺灣師範大學數位媒體中心視訊處理研究室
  • 36. What is Cross product (x) ? • A mathematical joke asks, – "What do you get when you cross a mountain-climber with a mosquito? " • On the television sitcom, Head of the Class asks, – "What do you get when you cross an elephant and a grape?" Video Processing Lab 36 http://mathworld.wolfram.com/CrossProduct.html 臺灣師範大學數位媒體中心視訊處理研究室
  • 37. Cross product (x) • The orientation determined by the right-hand rule Video Processing Lab 37 http://mathworld.wolfram.com/CrossProduct.html 臺灣師範大學數位媒體中心視訊處理研究室
  • 38. OpenGL polygon fill-area functions • OpenGL provides a special rectangle function – glRect*(x1, y1, x2, y2); • *: i (integer), s (short), f (float), d (double) and v (vector) • plRectiv(vertex1, vertex2); • Fill rectangle use “glVertex” • glBegin (GL_POLYGON); – glVertex2iv (p1); – glVertex2iv (p2); p6 p5 – glVertex2iv (p3); – glVertex2iv (p4); – glVertex2iv (p5); p1 p4 – glVertex2iv (p6); • glEnd (); p2 p3 Video Processing Lab 38 臺灣師範大學數位媒體中心視訊處理研究室
  • 39. How to design “font”? A complete set of type of one size and face. Video Processing Lab 臺灣師範大學數位媒體中心視訊處理研究室 National Taiwan Normal University
  • 40. South China Morning Post, 13 Sep., 2005 Video Processing Lab 40 臺灣師範大學數位媒體中心視訊處理研究室
  • 41. Texture • Graphics displays often include textural information : – labels on graphs and charts – signs on buildings or vehicles – General identifying information for simulation and visualization applications. Video Processing Lab 41 臺灣師範大學數位媒體中心視訊處理研究室
  • 42. Typeface (1) • Letters, numbers and other characters can be displayed in a variety of sizes and styles. – The overall design style for a set of characters – Routines for generating character primitives • 20-point Courier Italic or 28-point Palatino Bold • font : – 14 points, a total character height is about 0.5 cm. A – 72 points is about 2.54 cm (1 inch) B Video Processing Lab 42 臺灣師範大學數位媒體中心視訊處理研究室
  • 43. Typeface (2) the letter B represented with an 8x8 bilevel bitmap pattern and with an outline shape defined with straight line and curve segments Video Processing Lab 43 臺灣師範大學數位媒體中心視訊處理研究室
  • 44. Homework (1) • Select 6 points and try to draw primitive constant – (a) GL_POLYGON (b) GL_TRIANGLES (c) GL_TRIANGLE_STRIP (d) GL_TRIANGLE_FAN • Select 8 points and try to draw primitive constant – (a) GL_QUADS (b) GL_QUAD_STRIP • Draw 50 100 100 200 Video Processing Lab 44 臺灣師範大學數位媒體中心視訊處理研究室
  • 45. Homework (2) • Draw switch – (1) parabolic • x = y2 (-10≦y ≦10) – (2) 2D curve path • 2D : Set (x0, y0) & step (relate to θ), m:integer – r=sin (mθ) r=A+Bcos(mθ) r=e-mθ r=mθ Video Processing Lab 45 臺灣師範大學數位媒體中心視訊處理研究室
  • 46. Reference • http://www.icg.tu- graz.ac.at/courses/bacgvis/slides • South China Morning Post, 13 Sep., 2005 • Computer Graphics with OpenGL 3/e, Hearn Baker, Third edition, ISBN: 0131202383 Video Processing Lab 46 臺灣師範大學數位媒體中心視訊處理研究室